Embedding API Price Comparison 2026
Embedding looks cheap per token until you multiply by a corpus. Public rates and dimensions for OpenAI, Cohere, Gemini, Mistral, Jina and Voyage in one table, plus the real cost math and five ways to cut it.
💡 What You Will Learn
Embedding looks cheap per token until you multiply by a corpus. Public rates and dimensions for OpenAI, Cohere, Gemini, Mistral, Jina and Voyage in one table, plus the real cost math and five ways to
📜 Table of Contents
Embeddings are cheap until you multiply by the corpus
Fractions of a cent per call make embedding easy to ignore, but the bill is driven by corpus size: one million documents at roughly 1,000 tokens each is a billion tokens on first ingest, and every rebuild pays again. Decide on unit price times corpus scale.
Rates below are public per-million-token input tiers. Pricing changes with product updates - check each provider's current pricing page before committing.
Price and dimensions
| Provider | Model family | Reference price per 1M tokens | Dimensions | Free tier |
|---|---|---|---|---|
| OpenAI | text-embedding-3-small | 0.02 | 1536, truncatable | No standing free tier |
| OpenAI | text-embedding-3-large | 0.13 | 3072, truncatable | No standing free tier |
| Cohere | embed family | 0.12 | around 1024 | Trial credit |
| text-embedding-004 family | 0.10 | around 768 | Limited free quota | |
| Mistral | mistral-embed | 0.07 | 1024 | No standing free tier |
| Jina | jina-embeddings family | around 0.02 | around 1024 | Monthly free quota |
| Voyage | voyage family | around 0.06 | around 1024 | Trial credit |
Two details that matter:
- Dimensions can be truncated. Some models support Matryoshka-style truncation (1536 down to 512), which cuts storage and search cost with limited accuracy loss.
- Vectors are not comparable across models. Switch models and every stored vector must be rebuilt - the most under-estimated migration cost.
The four big names
OpenAI has the smoothest ecosystem and a small/large model pair you can split by sensitivity; the small model is the common RAG default. Cohere targets multilingual retrieval with separate document and query input types, and pairs with its reranker. Google's Gemini family integrates with GCP and its free quota is friendly for personal projects. Mistral, Jina and Voyage compete on retrieval quality per dollar; Jina's free quota suits side projects, Voyage has a strong retrieval reputation. Test all of them on your own corpus rather than public leaderboards.
The real cost math
One million documents at 1,000 tokens each is 1B tokens, so first ingest costs roughly:
| Tier | One-time ingest |
|---|---|
| 0.02 per 1M (small model, Jina tier) | about 20 USD |
| 0.06 per 1M (Voyage tier) | about 60 USD |
| 0.07 per 1M (Mistral tier) | about 70 USD |
| 0.10 per 1M (Gemini tier) | about 100 USD |
| 0.12 per 1M (Cohere tier) | about 120 USD |
| 0.13 per 1M (large model tier) | about 130 USD |
The same corpus can cost more than six times as much. Hence the standard pattern: cheap model for ingest and recall, stronger reranker for the few dozen candidates.
Five ways to save
- Small model for ingest, large for reranking - biggest saving, smallest quality cost
- Cache embeddings by content hash so incrementals only process new text
- Batch calls - many texts per request, less overhead and higher throughput
- Go local at scale - open-source embedding models on your own GPU leave only electricity and machine time
- Truncate dimensions - 1536 to 512 cuts storage by roughly two thirds
How to choose
| Situation | Recommendation |
|---|---|
| Small corpus, validation | Start with whichever provider offers free quota |
| English-first, ecosystem matters | Small OpenAI model, large when needed |
| Multilingual, retrieval quality first | Cohere or Voyage, tested on your data |
| Already on GCP | Gemini family |
| Tens of millions of documents | Local open-source model |
FAQ
Are more dimensions better? Not for most retrieval: 768-1024 is enough, and larger vectors cost more storage and slower search for limited gains.
Can I mix providers? Not within one corpus - similarity stops meaning anything. You can mix stages, such as a small model for recall and a larger one for reranking.
When to self-host? When monthly spend exceeds a machine's cost, when data cannot leave your network, or when you want domain fine-tuning.
How much do I recompute after switching models? Everything. Plan it as a full rebuild and keep raw text so you can re-embed any time.
Related
❓ FAQ
Are more dimensions better?
Not always - 768-1024 is enough for most RAG; larger costs more and is slower.
Can I mix providers?
Yes - vectors from different models are not comparable, so pick one and stay with it.
Written by our editorial team; tools listed here are tested or verified against public sources. Links point to official sites or GitHub repos for reference only — no paid placements.