Embedding Model Routing in 2026: A 6x Cost Spread
OpenAI at $0.02/M, Voyage 4 at $0.06/M, Cohere Embed v4 at $0.12/M. How to route embedding calls by workload type to match cost to quality requirements.
The embedding model market in 2026 spans a 6x price range: OpenAI text-embedding-3-small at $0.02 per million tokens on one end, Voyage 4-large and Cohere Embed v4 at $0.12 per million on the other. That spread is real and actionable, but the routing logic is different from what most teams expect.
The cheapest option in 2026 is not a new entrant. OpenAI text-embedding-3-small is still the lowest-cost mainstream embedding model. The case for switching models is not primarily about cost reduction. It is about matching your workload to the model built for it: Cohere Embed v4 for long-document ingestion, Voyage 4-large for specialized-domain retrieval quality, and OpenAI for everything else.
This post covers the 2026 price-quality frontier, three embedding routing mistakes that compound at volume, and when the migration math actually justifies a switch.
What embedding routing actually means
A RAG pipeline calls an embedding model in two places: when documents are ingested into the vector store, and when a user query needs to be embedded for similarity search. These two call sites have different cost profiles.
Ingestion is bursty and large-volume. A team onboarding a new customer's 100K-document corpus might generate 500M tokens of embedding work in a single overnight job. The latency budget is loose; the cost budget is tight. This is where batch API pricing and per-token rates matter most.
Query embedding is real-time and small-volume. Each user query produces a few hundred tokens of embedding work, but the latency budget is sub-100ms. Cost per call is rounding error. Latency and reliability dominate.
Most teams pick one embedding model and use it for both call sites. That is the right default to start with, but the wrong default to keep forever once volume grows. The right pattern at scale is to route ingestion and query embedding separately, optimized for their respective constraints.
The 2026 embedding price-quality frontier
Four models cover roughly 95% of production embedding decisions:
OpenAI text-embedding-3-small at $0.02/M ($0.01/M batch). The cheapest credible option for most workloads. The batch API tier cuts the per-token cost in half for asynchronous ingestion jobs, making it the default cost-optimization lever before switching providers at all. Best for: general-purpose retrieval, customer support, knowledge bases, and any workload where retrieval quality is not the primary bottleneck. The standard API version is well-suited for real-time query embedding.
Voyage 4 at $0.06/M. The mid-tier option. Launched January 2026. Strong retrieval quality across general and code-search workloads. Best for: teams that have hit a quality ceiling with OpenAI's embedding models and need an upgrade without paying the full premium of Voyage 4-large.
Cohere Embed v4 at $0.12/M. The 128K context window (available since the model's launch in April 2025) means you can embed entire long documents in one API call rather than splitting them into chunks first. For workloads where chunking is expensive or introduces quality loss, the ability to send a full document in a single call is often worth the 6x per-token premium over OpenAI. Best for: long-document ingestion, multilingual corpora, and workloads where chunking strategy has a visible impact on retrieval quality.
Voyage 4-large at $0.12/M. The retrieval-quality leader. Uses a Mixture-of-Experts architecture that delivers strong benchmark performance with faster inference than the parameter count would suggest. Best for: specialized-domain search where retrieval quality is the binding constraint: legal, medical, scientific literature, expert-domain Q&A. At this price tier, embedding cost is rarely the dominant line item in those workloads.
There are also open-weight options (BGE-M3, E5-mistral, Nomic) that compete on cost when self-hosted. We covered the self-host vs API decision in our Gemma 4 self-host analysis. Embedding models are a particularly clean self-host candidate because the inference compute is small and the latency budget for ingestion is forgiving.
Three routing mistakes that show up at volume
Mistake one: not using the batch API for ingestion.
OpenAI text-embedding-3-small costs $0.02/M on the standard API and $0.01/M on the batch API. For ingestion jobs that run overnight or in large async batches, the standard API tier adds no value. A team running 200M ingestion tokens per month pays $4,000 on the standard tier and $2,000 on the batch tier, for exactly the same model, the same quality, and the same output dimensions. This is the lowest-effort embedding cost optimization available before switching providers at all.
Mistake two: not benchmarking on your actual corpus.
Published benchmarks are aggregated across diverse retrieval tasks. Your specific corpus (legal contracts, customer support tickets, code, medical literature) may have a very different quality ranking than the aggregated results suggest. The retrieval quality ordering across models on your data may not match the published leaderboard ordering.
The fix is a short eval pass: take 100 representative queries with known relevant documents, embed both the query set and the document set with each candidate model, measure recall@10. The results consistently surprise teams that assumed the published benchmark order would hold on their specific workload.
Mistake three: re-embedding before verifying the quality gain.
Embedding migrations are expensive. For a 100M-document corpus at 500 tokens per document, the migration is a 50B-token embedding job. At OpenAI's $0.01/M batch rate, that is $500. At Voyage's $0.12/M, it is $6,000.
Beyond the one-time migration cost, the vector store has to be rebuilt, the indexing pipeline has to be updated, and any embedding-dimension mismatch between query and document has to be resolved. Run the eval pass from mistake two before committing to the migration, and only proceed when the quality gain is confirmed on your actual queries.
The routing pattern that drives real savings
Three workload patterns cover the majority of embedding cost and quality decisions:
Pattern 1: General retrieval at scale. Knowledge bases, customer support, document search on generic text. Use OpenAI text-embedding-3-small with the batch API for ingestion ($0.01/M) and the standard API for queries ($0.02/M). This is the lowest-cost configuration before switching providers and handles the majority of production RAG workloads without quality compromise.
Pattern 2: Long-document or multilingual corpora. Legal contract analysis, multilingual knowledge bases, research corpora where documents exceed typical chunk sizes. Route to Cohere Embed v4 at $0.12/M. The 128K context per call eliminates the chunking step's quality cost. The 6x per-token premium over OpenAI is worth it when chunking decisions are non-trivial.
Pattern 3: Quality-sensitive specialized domains. Code search, medical literature, expert-domain Q&A where retrieval mistakes are directly user-visible. Route to Voyage 4 ($0.06/M) or Voyage 4-large ($0.12/M) depending on the quality gap you measure on your actual corpus. Embedding cost is rarely the dominant cost line in these workloads.
What the bill looks like
For a mid-sized B2B SaaS team running a knowledge-base RAG product on a general corpus:
- 200M monthly ingestion tokens
- 5M monthly query tokens
- Currently on OpenAI text-embedding-3-small, standard API
Current bill: 200M x $0.02 + 5M x $0.02 = $4,100/month
Optimized (batch API for ingestion): 200M x $0.01 + 5M x $0.02 = $2,100/month
That is a 49% reduction with zero model change and a pipeline change that takes an afternoon. The batch API is the first optimization to make before evaluating provider switches.
For the same team running specialized-domain search where quality benchmarks show Voyage 4-large leads on recall@10:
- Same volume mix, switch ingestion to Voyage 4-large at $0.12/M
New bill: 200M x $0.12 + 5M x $0.12 = $24,600/month
That is 6x the optimized OpenAI cost. The case for this switch only holds when the retrieval quality gain produces downstream savings: fewer LLM calls needed to answer questions because the retrieved chunks are more accurate, smaller context windows because fewer irrelevant chunks are included. For specialized-domain workloads where this dynamic holds, the embedding premium regularly pays back on the LLM side. We quantified the broader LLM cost stack in our reduce OpenAI costs analysis.
How PromptUnit fits into this
PromptUnit routes your LLM chat completion calls, not your embedding calls. The routing intelligence covers the model selection for your GPT-4, Claude Sonnet, and Gemini calls, sending simple tasks to cheaper models and complex tasks to flagship models automatically.
The two cost levers compound. A RAG pipeline has two major cost lines: the embedding call and the LLM call that processes the retrieved context. PromptUnit reduces the LLM side automatically. Pairing PromptUnit's chat completion routing with the embedding model strategy from this guide optimizes both layers.
For teams where the LLM call is the larger cost line (it usually is, by 5-20x at typical query volumes), the model routing guide covers how the routing layer works and what the typical savings look like. The cross-provider routing analysis covers the case where the cheapest model for a given task lives on a different provider entirely.
If your LLM spend is above $2K/month and you have not evaluated what routing would save, the 14-day observation period at PromptUnit shows you the breakdown before any traffic shifts.