Skip to content
All posts
By the PromptUnit team···8 min read

OpenRouter Alternatives in 2026: Direct, Self-Hosted or Cost Router?

When a direct provider key, a self-hosted gateway like LiteLLM, or a per-request cost router beats OpenRouter on price. Real numbers for 2026.

llm-routingopenrouterai-cost-optimizationlitellmapi-gateway

The cheapest OpenRouter alternative is almost always a direct provider key, because OpenRouter charges no per-token markup but does collect a 5.5% fee on every credit purchase. If you only call one provider, skipping OpenRouter entirely costs you nothing extra and saves that 5.5% credit surcharge. If you call many providers and spend more than roughly $3,600 to $9,100 a month on model tokens, self-hosting an open-source gateway like LiteLLM can beat OpenRouter on raw cost, but only after engineering time is honestly accounted for. A per-request cost router is a different category: instead of unifying your keys under one API, it inspects each request and substitutes a cheaper model when the quality evidence supports it.

What OpenRouter Actually Costs

OpenRouter routes to hundreds of models from dozens of providers and passes through each provider's published token price with no per-token markup. The fee sits at the credit purchase layer: buying credits by card on the Standard plan costs 5.5% (with a $0.80 minimum per transaction), and the Business plan charges 8%. Bring Your Own Key (BYOK) lets you attach your own provider API keys; OpenRouter charges nothing for BYOK traffic up to $25,000 of list-price inference a month, then 5% beyond it. (The allowance used to be a number of requests; check OpenRouter's pricing page before you budget on it.)

For most teams spending a few hundred dollars a month, the credit fee is the only real cost OpenRouter adds. At $500 of monthly model spend that fee is $27.50 on Standard. Whether that convenience fee is worth it depends on what you get from the unified API.

When a Direct Provider Key Is Cheaper

If your app calls one provider, or one provider handles 90% of your traffic, direct API keys cost nothing beyond the token price itself. OpenAI, Anthropic, Google, Groq and DeepSeek all publish their rates and accept direct API calls, and most of them also offer an OpenAI-compatible endpoint. No credit purchase fee, no intermediate dependency, and your rate limits are the ones your account tier gives you rather than whatever the router is willing to pass through.

The tradeoff is that you manage each provider relationship separately: separate accounts, separate billing, and separate failover logic if you want redundancy. For single-provider workloads that tradeoff is trivial.

Direct keys also matter when your app is already using OpenRouter's BYOK feature. In that setup, you are already paying the provider directly; OpenRouter just provides the unified routing layer. Past the free BYOK allowance the 5% fee on list-price inference adds up on high-volume workloads, and at that point going fully direct removes the fee entirely.

For a worked comparison: GPT-6 Astra is $10.00 per million input tokens and $50.00 per million output tokens direct from OpenAI. On OpenRouter with shared credits, the token price is the same but a $1,000 credit top-up costs $1,055. If you spend that $1,000 in tokens during the month, you paid $55 for the routing layer. On OpenAI direct, you paid nothing for it.

When Self-Hosting LiteLLM Beats the 5.5% Fee

LiteLLM is an MIT-licensed open-source proxy that routes to over 100 providers through one OpenAI-compatible endpoint, adds no per-token markup, and costs nothing to license. What it does cost is the infrastructure to run it and the engineering time to keep it alive.

A minimal production-ready stack, with the Postgres database for keys and spend tracking, Redis for rate-limit state, and compute for the proxy itself, runs roughly $200 to $500 a month on typical cloud infrastructure. That number does not include the engineering hours to set it up (expect one to three weeks of work for a solid single-region production baseline), maintain it through LiteLLM releases, patch security advisories, and handle incidents on-call.

The break-even against OpenRouter's 5.5% credit fee is straightforward: if your infrastructure runs $200 a month, OpenRouter's fee on $3,600 of monthly model spend equals that infrastructure cost. If your stack costs $500 a month, the break-even rises to around $9,100 of monthly model spend. Below those thresholds, OpenRouter is cheaper once engineering time is included. Above them, self-hosting wins on raw cost, though the engineering overhead remains.

For teams where data residency, security policy, or compliance makes an external routing layer unacceptable, self-hosting is not a cost optimization, it is a requirement. For everyone else, it is a bet that the DevOps investment pays off at scale.

The LiteLLM alternatives post on this site covers more gateway options in that category.

Let each request use the cheapest model that's just as good

PromptUnit checks each request your app sends. When a cheaper model is just as good for that request, it uses it; otherwise your model answers. Free until it has saved you money.

Try it free →

The Third Category: Per-Request Cost Routing

Direct keys and self-hosted gateways solve the routing infrastructure problem. Neither one decides, on a per-request basis, whether a cheaper model could handle a specific request just as well.

Per-request cost routers sit between your app and your provider keys. When a request comes in, the router checks whether a cheaper model has enough evidence of matching quality for that kind of request, and sends it there if the evidence exists. If not, the request goes to the model your app specified.

This is a materially different job from what OpenRouter does. OpenRouter routes to the model you asked for, from whichever provider has it cheapest or with the best latency. A cost router tries to answer a different question: does this particular request actually need the model you asked for?

PromptUnit works this way. You point your app's AI API base URL at it and add your PromptUnit key as a header; your own provider keys stay in your account. Each request is checked at call time, and if a cheaper model is known to be as good for that category of request, it handles it instead. If you have connected keys for multiple providers, the cheaper model can be at a different provider than the one you asked for.

The savings model is also different from a gateway fee: PromptUnit is free until it has saved you money, then charges 20% of what it saves, so the service costs nothing if it doesn't find cheaper alternatives that hold up on quality.

Comparison Table

Approach Per-token cost Fixed cost Engineering effort Saves on model choice?
Direct provider key Provider list price None None No
OpenRouter (shared credits) Provider list price + 5.5% credit fee None Minimal No
OpenRouter BYOK Provider list price + 5% past free allowance None Account setup per provider No
Self-hosted LiteLLM Provider list price $200-500/month infra Weeks to set up, ongoing maintenance No
Per-request cost router Provider list price, on a cheaper model where it holds up None (PromptUnit: 20% of what it saves) Two settings Yes

Prices in the table reflect today's published rates. OpenAI, Anthropic and Google pricing is taken from each provider's current pricing page.

How to Choose

Start with the question that drives the decision:

Do you call one provider most of the time? Use direct keys. The 5.5% credit fee is the only thing you avoid, and that is already a real saving at volume.

Do you call many providers and spend five figures a month on tokens? Self-hosting LiteLLM starts making arithmetic sense, but count your engineering time honestly before assuming the break-even is clean.

Do you need a unified key and basic failover with minimal setup and under $3,600-$9,100 monthly model spend? OpenRouter with BYOK is a reasonable choice. You keep the unified routing layer and pay OpenRouter's fee only past the free BYOK allowance.

Is your primary goal cutting what you spend per request, not just which provider sends the bill? That is the per-request cost router use case. It does not replace a gateway, it replaces the assumption that you always need the model your code specifies.

Note that the approaches are not mutually exclusive. Teams often run a self-hosted gateway for access control and observability while also using quality-based routing to decide which model actually answers each request. The LLM routing guide covers how those layers fit together. And if your primary driver is the OpenAI API bill specifically, the cost checklist has a more detailed breakdown of where the spend tends to hide.

One Caveat on Model Variety

OpenRouter's catalog includes hundreds of models that you cannot easily access through direct provider keys alone: smaller open-weight models from various inference hosts, fine-tuned variants, models from providers you may not have a relationship with. If access to a broad model catalog is the main reason you use OpenRouter, neither a self-hosted gateway nor direct keys gives you that without signing up with each underlying provider separately. The 5.5% credit fee is in part the price of that breadth. If you only use the same five or six models repeatedly, that breadth has no value and the fee is purely a cost.

Current prices of the models in this post

Per 1 million tokens, input and output, read every day from each provider's own pricing page.

All AI API prices →

FAQ

Is OpenRouter cheaper than going directly to OpenAI or Anthropic?

Per token, OpenRouter charges the same price as each provider's published list rate with no markup. The cost difference is the 5.5% fee OpenRouter adds when you buy credits by card, or 5% on BYOK usage past the monthly free allowance. If you go direct, you pay no fee at all.

At what monthly AI spend does self-hosting LiteLLM beat OpenRouter?

The break-even depends on your infrastructure cost. At around $200 a month for infrastructure, the break-even against OpenRouter's 5.5% credit fee is roughly $3,600 of monthly model spend. At $500 a month for infrastructure, it rises to around $9,100. These figures exclude engineering time, which can push the real break-even significantly higher for small teams.

What does OpenRouter BYOK cost?

OpenRouter's BYOK feature lets you route requests through your own provider API keys, with the provider billing you directly. OpenRouter charges no fee on BYOK traffic up to $25,000 of list-price inference a month, then 5% on usage beyond that. The allowance used to be a number of requests, so check OpenRouter's pricing page before you budget on it.

What is a per-request cost router and how is it different from OpenRouter?

OpenRouter routes each request to the model your code specified, from whichever provider has it available. A per-request cost router checks whether a cheaper model has enough quality evidence to handle that specific request, and substitutes it if so. The goal is reducing what each request costs, not just unifying which key pays for it.

Can I use OpenRouter and a cost router at the same time?

Yes. If you have an existing OpenRouter key, some cost routers accept it as one of the provider keys you connect; PromptUnit does. The two layers do different jobs: OpenRouter handles provider access and billing unification, while the cost router decides which model should actually answer each request.

Start saving from your first request

Change two settings and see what your first request saved within seconds. Free until we've saved you money. If we save you $0, you pay $0.

Get started free →