Resources · n8n integration

n8n Supabase Vector Store nodeConfigure Supabase Vector Store in n8n.

A vector store searches by meaning, not by keyword. The n8n Supabase Vector Store node works against a table in your own Supabase project, with 2 parameters and 5 operation modes covering insert, search, update and agent retrieval. For teams building retrieval on a database they already run.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the n8n Supabase Vector Store node do?

The node reads and writes a Supabase table that holds vectors, meaning numeric representations of your text that let a search return passages close in sense to a question rather than passages containing the same words. It sits in a workflow either as a regular action node, running once per incoming item, or as a resource an AI model can query. One parameter picks the behavior, the other picks the table.

Scenario one, a support knowledge base that answers from your own docs. A workflow pulls help articles, splits them, and runs the node in insert mode against a Supabase table. A second workflow runs the same node in load mode with a Prompt and a Limit, and returns the ten closest passages to whatever a customer typed. Nothing leaves the Supabase project you already pay for.

Scenario two, a chatbot that decides for itself when to look something up. Here the node runs in retrieve-as-tool mode and plugs straight into the tools connector of an AI Agent. The Name and Description you write become what the model reads before choosing the tool, so a vague description is the most common reason an agent ignores a perfectly good knowledge base. The same pattern shows up in the published template 2621, where the agent chats with files stored in Supabase.

Scenario three, keeping stored documents accurate. A price list or a policy page changes, and the old passage is still sitting in the table ready to be retrieved. The update mode takes the ID of an existing embedding entry and replaces it, which is the difference between a store that ages well and one that quietly answers with last year's terms.

When to reach for something else. If the question is plain lookup by a known key, a row in a table, a record id, then a regular database query is faster and cheaper than a similarity search, and the node is the wrong tool. If a chain only needs documents handed to it, the retrieve mode feeds a retriever instead of an agent. And if you want summarized answers rather than raw passages, the Vector Store Question Answer Tool sits between the agent and this node.

The limits worth knowing before you build. The node covers 5 modes and no more, so anything else on the table, deleting rows or reindexing, happens on the Supabase side. It has no sub-node ports of its own, so the embedding model that turns text into vectors is chosen elsewhere in the workflow, with a credential from a provider such as OpenAI or Google Gemini, billed by that provider. The table also has to exist first, created from the Supabase vector store quickstart, along with the matching function the node calls. If you would rather see how this fits a full stack before writing anything, the n8n review and the n8n training cover the surrounding pieces.

Connect

How do you connect Supabase to n8n?

  1. 01

    Enable the Data API and copy the project URL

    The credential talks to your project through the Supabase Data API, which has to be switched on. In the Supabase dashboard, open the project you want n8n to reach, go to Integrations then Data API, and copy the Project URL shown there. That value goes into the n8n Host field. This is also the screen that tells you whether the Data API is enabled at all, so it is worth checking before blaming the key.

  2. 02

    Create a secret key

    Still in Supabase, open Project Settings then API Keys. Create a secret key, or reveal an existing one, and keep it somewhere you can paste from. This is the value n8n stores as Secret Key. Credentials that still use a legacy service_role secret keep working for now, but Supabase is phasing legacy API keys out and they stop working at the end of 2026, so a new secret key is the safer thing to create today.

  3. 03

    Save the credential in n8n

    In n8n, open Credentials, create a Supabase credential, and paste the Host and the Secret Key. A credential is saved once and reused by every workflow on that instance, so the same entry serves both this node and the regular Supabase node. Save it, then open the vector store node and pick your table: once the credential answers, the table list fills itself in and you stop typing names by hand.

Parameters

Which parameters does the node ask for?

The Supabase Vector Store node has 2 parameters. For each one: the node as you configure it in n8n, what the parameter changes, and our field notes.

01

Operation Mode

mode

What you see in n8n

Notes & use cases

This selector decides everything the node does. Set it first, because the fields below change with it.

Key parameters

  • Operation Mode: insert writes documents, load returns ranked documents, retrieve feeds a chain, retrieve-as-tool exposes the store to an agent, update replaces a document by ID.
  • Name and Description: required in tool mode, read by the model before it picks the tool.
  • Prompt, Limit, Include Metadata, Rerank Results: the search side, Prompt often {{ $json.question }}.
  • ID: required in update mode.
  • Options: holds Query Name, match_documents after the quickstart, and Metadata Filter.
Use cases
one workflow on insert to fill the store, another on load to answer from it.
02

Table Name

tableName

What you see in n8n

Notes & use cases

Every mode writes to or reads from one table, and this is where you name it. The table has to exist in Supabase before the node runs, with the vector column and the matching function from the quickstart.

Key parameters

  • Table Name: required, and a resource locator, meaning n8n offers you a picker once the credential works, and accepts a typed value or an expression such as {{ $json.table }} when the table changes per item.
Use cases
keep one table per knowledge domain, product docs in one and internal policies in another, then switch between them with the picker instead of filtering a single crowded store on every query.
Need help

Need help automating Supabase Vector Store with n8n?

A person reads every message.

FAQ

Questions people ask next

01Is the n8n Supabase Vector Store node free to use?
Yes, on n8n Cloud and on a self-hosted instance alike. The node ships in the n8n AI package, so there is nothing to install and no extra charge on the n8n side, whether you run the hosted offering or your own Docker or npm install under the Community Edition and its Sustainable Use licence. A workflow behaves the same way in both. What does cost money sits outside n8n: your Supabase project, and the provider whose embedding model turns your text into vectors, which bills its own API calls under its own terms.
02What credentials does the node need?
One Supabase credential, built from two values. The node authenticates with an API key, so you supply a Host, which is your project URL copied from the Data API screen, and a Secret Key created under Project Settings then API Keys. The Data API has to be enabled on the project for the credential to connect at all. Existing credentials using a legacy service_role secret still work, but Supabase is retiring legacy API keys and they stop at the end of 2026, so create a new secret key rather than reusing an old one. The credential is saved once and reused across workflows.
03What are the limits of this node?
It does five things and stops there. Version 1 of the node covers insert, get many, retrieve for a chain, retrieve as an agent tool, and update by ID. Deleting entries, changing the schema or reindexing happen in Supabase itself, not here. The node also assumes the table and the matching function already exist, following the Supabase vector store quickstart, and settings other than the quickstart defaults change what you put in the parameters. It has no sub-node ports, so it never picks an embedding model by itself: that choice lives elsewhere in the workflow.
04What do you need to connect for it to work?
At minimum, a Supabase credential and an embedding model in the workflow, since vectors have to be produced by something before they can be stored or compared. Beyond that it depends on the mode. In insert mode you feed it documents, typically loaded and split upstream. In retrieve-as-tool mode you wire the node to the tools connector of an AI agent and write a clear Name and Description. In retrieve mode a retriever sits between the node and a chain. For a first build, the regular node pattern with insert then load is the easiest to debug, because you can see what came back.
05n8n or Make for a vector store workflow?
It depends on where your data is allowed to live and how you want to pay. n8n self-hosts through Docker or npm, or runs on n8n Cloud, so a retrieval pipeline over sensitive documents can stay on infrastructure you control, next to the Supabase project holding the vectors. Make is hosted only, with no self-hosting option, and bills per operation, which reads differently when a single ingestion run touches thousands of chunks. On the building side both are visual. Judge on hosting, on control over the documents, and on the cost model rather than on the canvas.
Hack'celeration Lab

Get our weekly integration tips.

No spam. Unsubscribe anytime.