Vector Database Pricing Compared: pgvector vs Pinecone vs Weaviate at 1M and 10M Embeddings

VTechNews Editorial Team · · 7 min read · 1,221 words

Quick Answer: What does a vector database actually cost at scale?

  • At 10M embeddings, pgvector on a managed Postgres instance runs about $45/month, Pinecone Serverless about $70/month, and Weaviate Cloud about $135/month.
  • At 100M embeddings, Pinecone can climb past $700/month while self-hosted pgvector typically stays under $100/month — the gap widens with scale, not shrinks.
  • pgvector has no separate pricing model — you’re only paying for the Postgres instance most teams running RAG already have.
  • Embedding generation itself (OpenAI text-embedding-3-small at $0.02 per million tokens) is usually cheaper than storage — the database bill is where budgets actually blow up.

Every vector database vendor publishes a pricing page, and none of them make it easy to compare what you’ll actually pay once you’re past a demo-sized index. We priced pgvector, Pinecone, and Weaviate at 1M and 10M embeddings using each vendor’s current published rate cards, and the spread is large enough that picking the wrong one costs real money by the time you’re at production scale.

What does pgvector cost at 1M and 10M embeddings?

pgvector is a free PostgreSQL extension — there’s no per-vector or per-query fee. Your entire cost is whatever Postgres instance you’re already running (or would need anyway). At 10M vectors on a managed instance like RDS, teams report landing around $45/month, and self-hosted pgvector on infrastructure you control can stay under $100/month even at 100M vectors. The tradeoff isn’t cost, it’s operational: you’re responsible for index tuning (HNSW vs IVFFlat), vacuum behavior, and scaling the underlying database yourself.

What does Pinecone cost at 1M and 10M embeddings?

Stack of Polish zloty banknotes on financial documents with a pen, indicating monetary transactions in an office setting
Photo: Jakub Zerdzicki / Pexels

Pinecone Serverless bills on consumption: $0.33 per GB of storage, $8.25 per million read units, and $2 per million write units, with a $50/month account minimum. That minimum means Pinecone is rarely the cheapest option for a small index — you’re paying the floor price whether you use it or not. At 10M vectors, expect roughly $70/month; at 100M vectors, costs can climb past $700/month depending on query volume, since read units scale with how often you’re querying, not just how much you’re storing.

Watch out: Pinecone’s read-unit pricing means a high-traffic RAG app with frequent queries can cost far more than the storage-only estimate suggests — model your query volume before committing, not just your vector count.

What does Weaviate cost at 1M and 10M embeddings?

Weaviate Cloud meters “vector dimensions stored per month” rather than raw vector count — roughly $0.095 per million dimensions on the Shared tier. That means a 1,536-dimension OpenAI embedding costs twice what a 768-dimension embedding costs to store, even at the same vector count. At 10M vectors using 1,536-dimension embeddings, that works out to roughly $135/month on Weaviate Cloud — the most expensive of the three at that scale in our comparison.

Why does dimension count change your bill more than vector count?

Because Weaviate and similar dimension-metered services charge per dimension stored, the embedding model you pick has a direct cost consequence independent of how many documents you embed. OpenAI’s text-embedding-3-small outputs 1,536 dimensions at $0.02 per million tokens to generate; text-embedding-3-large outputs 3,072 dimensions at $0.13 per million tokens — more than 6x the generation cost, and double the storage footprint on a dimension-metered database. If your retrieval accuracy doesn’t actually need the larger model, that’s a cost you’re paying twice.

Pro Tip: Before committing to text-embedding-3-large, benchmark recall on your actual corpus against text-embedding-3-small — the storage and generation cost difference compounds on a dimension-metered vector DB, and the accuracy gain doesn’t always justify it.

What’s the real cost comparison table at 1M and 10M embeddings?

Flatlay of surgical face masks and euro coins, symbolizing pandemic economic challenges.
Photo: Markus Winkler / Pexels
DatabasePricing model~10M vectors~100M vectors
pgvector (managed Postgres)Instance cost only, no per-vector fee~$45/monthUnder $100/month (self-hosted)
Pinecone Serverless$0.33/GB storage + $8.25/M reads + $2/M writes, $50/mo minimum~$70/month$700+/month
Weaviate Cloud~$0.095/M dimensions stored (Shared tier)~$135/monthScales with dimension count, not just vector count

What error do you actually hit when dimensions don’t match?

The most common production failure isn’t a pricing surprise — it’s a dimension mismatch at write time. If your table is defined as vector(1536) and you switch embedding providers or models without updating the schema, pgvector throws an error along the lines of “expected 1536, got 1024” and the write fails outright. This happens most often when a team embeds their initial corpus with one model, then later swaps providers for a cost or quality reason and forgets that vector similarity math requires every vector in the same table to share the same dimensional space — a 384-dimension vector and a 1,536-dimension vector can’t be meaningfully compared, so there’s no silent fallback; it just breaks.

Which vector database should you actually pick?

Euro coins and bills on a price list, symbolizing finance and economy.
Photo: Tim Heckmann / Pexels

If you already run Postgres and your index will stay under roughly 50M vectors, pgvector is the default — it’s free beyond the instance you’re already paying for, and our working vectorization explainer walks through setting it up with real dimension counts. If you need managed infrastructure and predictable ops overhead at higher query volume, Pinecone’s serverless model is worth the $50/month floor. Weaviate makes the most sense when you’re already using a smaller-dimension embedding model, since its per-dimension pricing rewards that choice directly — otherwise its cost scales faster than the other two as your embedding model gets larger, which is worth factoring into how you’re picking tools generally, similar to the job-to-be-done framing in our AI tools buyer’s shortlist.

Key Takeaways

  • pgvector has no pricing model of its own — you pay only for the Postgres instance, roughly $45/month at 10M vectors on managed hosting.
  • Pinecone Serverless has a $50/month floor and bills separately for storage, reads, and writes — read volume matters as much as vector count.
  • Weaviate Cloud meters dimensions stored, not just vectors — a 1,536-dim embedding costs twice what a 768-dim embedding costs to store.
  • text-embedding-3-large costs 6.5x more to generate than text-embedding-3-small ($0.13 vs $0.02 per million tokens) and doubles your storage footprint on dimension-metered databases.
  • Dimension mismatches fail hard at write time with no silent fallback — check your schema before swapping embedding providers.

FAQ

Is pgvector really free?
Yes — it’s a Postgres extension with no licensing or per-vector fee. Your only cost is the database instance itself, which most teams running RAG or search already pay for.

Why is Pinecone more expensive than the storage-only estimate suggests?
Because Pinecone Serverless also bills per read and write unit — a high-query-volume app pays significantly more than a low-traffic one storing the same number of vectors.

Does embedding model choice affect my vector database bill?
Yes, directly on dimension-metered services like Weaviate. A 3,072-dimension model (text-embedding-3-large) costs twice as much to store as a 1,536-dimension model (text-embedding-3-small) at the same vector count.

What causes a pgvector dimension mismatch error?
Switching embedding models or providers without updating your table’s vector column definition — the write fails immediately because vectors of different dimensions can’t share the same similarity index.

At what scale does Pinecone stop being cost-competitive?
Past roughly 10M vectors with meaningful query volume, Pinecone’s combined storage-plus-read-unit costs tend to overtake pgvector’s flat instance cost, and the gap widens further at 100M+ vectors.

Should I use text-embedding-3-large for better retrieval accuracy?
Only if you’ve benchmarked the recall improvement on your own corpus — the generation cost is 6.5x higher and the storage cost on dimension-metered databases doubles, so the accuracy gain needs to justify both.

Last updated: 2026-08-21

FREE DAILY NEWSLETTER

Get the AI News That Matters

3-minute daily digest for executives. Curated by AI, edited by humans.

Get the 1k+ ChatGPT Prompts Bible (Free)

Join 5,000+ executives getting our 3-minute daily AI digest and get instant access to the Premium Knowledge Vault.

Leave a Comment