SkimmerDB vs Pinecone
Pinecone and SkimmerDB give the same advice for multi-tenant RAG: a namespace per customer. The difference is what enforces it. A Pinecone key reaches its whole project; a SkimmerDB key can be limited to one tenant’s namespace. SkimmerDB also indexes exact text and regex and runs SQL; Pinecone has sparse vectors, integrated inference and a larger enterprise offering.
Side by side
From Pinecone’s docs, read October 23, 2026, and ours.
| Pinecone | SkimmerDB | |
|---|---|---|
| What it is | A managed vector database (serverless, or BYOC) | A hosted search database: text, regex, vectors and SQL on the same documents |
| Tenants | One namespace per tenant recommended; “each namespace is stored separately” | One namespace per tenant, made by the first write |
| Namespaces per index | 100 on Starter up to 1,000,000 on Enterprise | 1,000 on the free plan, unlimited on pro |
| What a key can be limited to | Roles scoped to a project (read/write or read-only, control or data plane); custom permissions on Standard and Enterprise only | Namespaces by name or prefix, scope read, write or admin, on every plan; others answer 404 |
| Vector search | Dense and sparse vectors; metadata filters | Dense vectors, IVF + RaBitQ; filters and text narrow first |
| Keyword search | Full-text BM25 on document indexes (API version 2026-07), sparse vectors, text-match filters, n-gram substring matching per field | BM25 ranking, plus a trigram index over every text: substrings and RE2 regex, exact counts |
| Hybrid | Dense + sparse in one index with alpha weighting, two indexes merged by you, or RRF on document indexes | rank: "bm25" with a vector: server-side RRF in one query, or text and filters narrowing the vector search |
| SQL | None | GROUP BY, joins across namespaces, windows, CTEs, exports as Parquet |
| Agents | A local MCP server (npx, your API key) for indexes with integrated embedding; a remote one per Pinecone Assistant | A remote MCP server with OAuth, scoped to the user’s namespaces |
| Plans | Starter free, Builder $20/month, Standard $50/month minimum | Free plan (no card); then a $10/month minimum that usage counts against |
Choose Pinecone when
- You want inference in the database. Embedding and reranking models next to the index.
- Sparse vectors matter. Learned sparse retrieval with dense in one index.
- You need BYOC or an enterprise contract. Their own cloud deployment option and programme.
- Your backend already enforces tenants. A project-wide key is fine when only trusted code holds it.
Choose SkimmerDB when
- An agent holds the key. Limit it to one tenant’s namespace; the rest answer 404.
- Exact things matter. Error codes, ids and regex, indexed and counted exactly.
- You want SQL on the same data. Group, join across namespaces, export Parquet.
- Queries hit big namespaces. A flat price a query, not read units by namespace size.
One workload, both bills
Documents of 2 KB with 1,024-dimension vectors, 10% rewritten a month, 10M queries a month (a fifth of SkimmerDB’s cold). List prices; Pinecone at its lowest regional rates. Change the numbers in the calculator.
| Workload | SkimmerDB | Pinecone |
|---|---|---|
| 1,000 tenants, 20M documents | $22.00 (Storage $12.95, Writes $3.05, Queries $5.00, Cold reads $1.00) | $178 (Storage $40.23, Writes $97.54, Queries $40.00) |
| One shared namespace, 20M documents | $49.00 (Storage $12.95, Writes $3.05, Queries $5.00, Cold reads $28.00) | $19,645 (Storage $40.23, Writes $97.54, Queries $19,507) |
Not included: Pinecone’s integrated inference and backups, SkimmerDB’s optional hosted embedding. Real bills depend on compression, cache hits and query shapes.
What Pinecone’s docs say
Read October 23, 2026. Check them again before you decide; they change.
| Page | What it says |
|---|---|
| Multitenancy | “Assign each customer to a namespace”; namespaces give “physical isolation of data”; deleting a namespace is “a lightweight and almost instant operation”; with one shared namespace, “queries scan the entire namespace regardless of filters”. |
| API keys | “Users on the Starter and Builder plans can set the permissions to All only”; roles are scoped to the project. |
| Projects | Keys get ProjectEditor or ProjectViewer, or control plane / data plane editor or viewer roles, “scoped to the project”. |
| Hybrid search | One index with dense and sparse vectors, separate indexes merged by the client, or on document indexes a text filter or RRF. |
| Full-text search | “Full-text search requires API version 2026-07”, on document indexes; substring matching as opt-in n-grams per field. |
| MCP server | Runs locally over stdio with a Pinecone API key; “only indexes with integrated embedding are supported”. |
| Cost | A query costs read units by the namespace’s size (1 RU per GB, at least 0.25); writes cost write units by size. |
Questions
Is SkimmerDB a Pinecone alternative?
For multi-tenant retrieval, yes: both recommend a namespace per tenant and both do vector, keyword and hybrid search with filters. Choose Pinecone for sparse vectors, its integrated inference and reranking, BYOC and its enterprise programme. Choose SkimmerDB for keys limited to one tenant’s namespaces on every plan, indexed substring and regex search, SQL on the same data, and a lower floor.
Can a Pinecone API key be limited to one namespace?
Not according to their docs read October 23, 2026: key roles are scoped to a project, and custom permissions need the Standard or Enterprise plan. Your backend must keep each tenant’s requests in its namespace. In SkimmerDB the key itself can be limited to a namespace, so a leaked or misused key can’t reach the others.
Which is faster?
We haven’t run Pinecone, so this page makes no speed claim. Our own numbers and how we measured them are on the benchmarks page.
Why does one shared namespace cost so much more on Pinecone?
A Pinecone query costs read units by the size of the namespace it searches, whatever the filter. Splitting tenants into namespaces makes each query cheaper. SkimmerDB charges $0.50 per million queries whatever the size; a cold query on a big namespace also pays its object-store reads.
How do I move from Pinecone?
Fetch or export your records and write them per namespace, up to 10,000 a request, or import NDJSON, CSV or Parquet. Ids, metadata and dense vectors map directly; keep the same embedding model per namespace.
Try it with your own documents
Free up to 1 GB stored and 100k queries a month. No card to start.