Back to blog
·EmbedRoute·

Why EmbedRoute Is Now Free and Bring-Your-Own-Key

We built "OpenRouter for embeddings" — then learned OpenRouter had quietly shipped embeddings months earlier. Here is the math that killed the paid model, and why the pivot to a free BYOK router and a model-comparison lab is the right one.

The pitch we started with

In January 2026 we built EmbedRoute as "OpenRouter, but for embeddings": one OpenAI-compatible endpoint for OpenAI, Voyage, Cohere, and Mistral, one API key, prepaid credits, provider cost plus a 20% routing fee. It was a clean idea and it worked.

Six months later, we're relaunching it as a free, bring-your-own-key router paired with a model-comparison Lab. Here's the honest story of why — because the reasons are more interesting than the pivot.

What we missed

The wedge was gone before we shipped. OpenRouter quietly added a first-class, OpenAI-compatible embeddings endpoint in late October 2025 — no launch post, just docs and model pages appearing. By the time we wrote our first line of code, "OpenRouter for embeddings" already existed, inside OpenRouter, covering OpenAI, Qwen3, Gemini, Mistral, and more.

And their price for it? Zero markup on tokens. OpenRouter passes provider pricing straight through and monetizes with a ~5.5% fee on credit purchases. Vercel's AI Gateway added embeddings too, at 0% markup. Our plan was to charge 20% — roughly four times the going rate — to compete with the incumbent we had modeled ourselves on.

How much does it cost to switch embedding models?

This is the question that reframed the whole product. Embeddings are cheap — commodity models run $0.004–0.02 per million tokens, and measured GPU serving cost is around $0.01–0.017 per million. A 20% fee on numbers that small is dust: to clear $1,000/month in fees you'd need to route roughly 250 billion tokens — re-embedding all of English Wikipedia about twenty times over, every month.

But the deeper issue is that embeddings *resist routing* in a way chat models don't. Switching embedding models means re-embedding your entire corpus, because vectors from different models live in incompatible spaces. Re-embedding a large corpus is a real bill and a multi-hour job. So teams don't shop around at runtime — they pick one model and stay, often for years.

That inverts the value proposition. For chat, a router earns its fee forever because switching is free and models leapfrog monthly. For embeddings, the moment that matters is the evaluation — choosing well up front — after which routing flexibility barely gets used. Model choice is one of the biggest drivers of RAG quality, but it's a decision you make once.

The other lesson: side projects need stateless cores

There's a less flattering reason for the relaunch, too. The database behind the old EmbedRoute — a free-tier Supabase project — was paused for inactivity and eventually deleted while nobody was watching. Login, the dashboard, and the API-key check had been quietly broken for months. The landing page was still advertising a live product the whole time.

The takeaway we're building around: a side project's core should have nothing to rot. The new router and Lab are stateless — your keys live in your browser, results in your session — so there's no database that can silently expire and take the product down with it.

What EmbedRoute is now

Two things that share one provider abstraction:

  • A free BYOK router. The same OpenAI-compatible /v1/embeddings endpoint, but you pass your own provider key in an X-Provider-Key header. We route the request and store nothing. No markup, no credits, no waitlist. It's also the only architecture that respects provider terms of service, which generally prohibit reselling API access.
  • The Lab. Paste your documents and queries, run them through several models at once, and see similarity heatmaps, side-by-side retrieval rankings, a 2D map of your corpus, and a price/latency table. It runs in your browser with your own keys — so you can answer "which embedding model is right for my data?" *before* you commit to re-embedding everything.
We also still cover Voyage and Cohere embeddings, which OpenRouter's endpoint doesn't (as of July 2026) — and those are two of the strongest models for retrieval-quality RAG.

Where this leaves you

If you just want a unified, paid embeddings endpoint with one bill, OpenRouter is genuinely great — use it. If you want to bring your own provider keys, pay no markup, and actually compare models on your own data before you pick one, that's what EmbedRoute is for now. It's free. Open the Lab and try it on your corpus.

Ready to try multiple embedding models?

Access OpenAI, Voyage, Cohere, and more with a single API.

Join the Waitlist