Comparison

OpenRouter Pricing 2026: Fees, Rate Limits and the Real Cost per Million Tokens

Back to BlogWritten by Published Nov 7, 2026Updated
OpenRouter PricingOpenRouter Rate LimitsOpenRouter FeesOpenRouter API PricingOpenRouter Cost Per Million TokensBYOK FeeFixed-Price Inference PlanGPU Cloud Pricing
OpenRouter Pricing 2026: Fees, Rate Limits and the Real Cost per Million Tokens

OpenRouter doesn't put a markup on the model itself, and that much is true. Call DeepSeek V4.1 Flash through a given provider on OpenRouter and you pay that provider's own per-token rate, not a router markup stacked on top. What actually moves your bill is everything around the token price: a fee on funding your account, a separate fee on BYOK, a rate-limit system with more moving parts than the headline daily-request number suggests, and a routing layer that can land the same model on a different provider, latency, and quantization level from one call to the next. For a workload hitting the API hundreds of times a day, that's the gap between a bill you can plan around and one you can't.

TL;DR: What Does OpenRouter Actually Charge in 2026?

  • Credit fee: 5.5% on Standard-plan, non-crypto credit purchases ($0.80 minimum), 8% on Business, 5.0% flat on crypto.
  • No markup on inference: a provider's per-token rate passes through untouched; OpenRouter earns only on the credit fee and BYOK fee.
  • BYOK fee is changing: OpenRouter says the usage-based BYOK fee "will be removed in the future and replaced with a fixed monthly subscription," price not yet set.
  • Hidden limit: every in-flight paid request is held against a slice of account balance up to a fixed ceiling, so a request can 402 on a positive balance.
  • Same model, different bill: DeepSeek V4.1 Flash output spans $0.18-$2.40 per million tokens across OpenRouter's 41 endpoints, a 13.3x range.
  • Spheron sells a fixed monthly rate for inference instead of a per-token meter. Check current GPU and inference pricing for live rates.

OpenRouter's Fees, From Its Own Pricing Page: 5.5% Credit Fee, BYOK, and No Markup on Inference

OpenRouter's own pricing page lists exactly two fees on top of whatever a model provider charges: a percentage on every credit purchase, and a percentage on BYOK spend. Neither touches the inference price itself.

FeeRateMinimumApplies to
Credit purchase, Standard (non-crypto)5.5% of order amount$0.80Card/bank credit top-ups
Credit purchase, Business8% of order amount$0.80Business-plan accounts
Credit purchase, crypto5.0% flatNoneCrypto top-ups
BYOK usage feeStandard 5.5%, Business 8%Not statedRequests routed through your own provider keys
Inference itselfNo markup-Every request

That fee structure replaced a flatter one. OpenRouter used to stack a fixed $0.35 Stripe fee on top of the percentage charge, and its own announcement on simplifying the platform fee confirms that fixed fee is gone. The BYOK line is mid-change too: that same announcement states the current 5% usage-based fee "will be removed in the future and replaced with a fixed monthly subscription," though OpenRouter hasn't published what that subscription will cost. On the inference line itself, routing through OpenRouter and calling the provider directly cost the same either way, since neither fee touches the per-token rate a provider bills; both changes in progress simplify that math rather than extract more per request.

OpenRouter Rate Limits Beyond the Headline Numbers: Free Tier, In-Flight Budget, and 429s

OpenRouter's daily-request cap gets most of the attention, but it only governs the free tier. Paid models carry no OpenRouter-imposed request cap beyond whatever limit the upstream provider itself sets, per OpenRouter's own API reference. The limit that actually matters for a paying account sits somewhere else: a running budget calculated against your balance, not a request count.

OpenRouter holds an estimated cost for every in-flight paid request against a fraction of your account balance, up to a fixed ceiling. Send enough concurrent requests and a new one can return a 402 even on a positive balance, simply because requests already in flight reserved more of that budget than the new one fits inside, a concurrency throttle that doesn't show up anywhere near the daily-request number most teams check first. A few account types skip it: free-model requests, BYOK requests with no paid OpenRouter plugin, enterprise/subscription/invoice-billed accounts, and any account above a certain balance threshold.

Rate limiting mid-stream doesn't look like a normal HTTP error either. A 429 partway through a streamed response arrives as a server-sent event with finish_reason: "error" rather than an HTTP status code, so status-code error handling alone will miss it. OpenRouter's routing falls back to another provider automatically, useful resilience, but one more reason the same request can land on a different provider, and price, than it did last time.

Same Model, Different Bill: How Provider Routing Changes Price, Latency, and Quantization

OpenRouter's default routing picks a provider for you on every request, and "the same model" doesn't mean "the same bill." The router compares each provider's effective price, calculated from real cache-hit rates and input/output mix rather than list price, alongside output throughput, time-to-first-token, and reliability (429s, failures, malformed tool calls), then splits traffic so the strongest providers get the largest weighted share. The spread that creates isn't theoretical. DeepSeek V4.1 Flash's output price alone runs $0.18 to $2.40 per million tokens across OpenRouter's 41 listed endpoints from 33 different providers, a 13.3x range for identical model weights, according to a breakdown of that endpoint spread. Two calls to "DeepSeek V4.1 Flash" a week apart can land on providers thirteen times apart in price, before any fee above even applies. We've lined up all 41 of those endpoints against DeepSeek's own direct API in DeepSeek V4.1 Flash OpenRouter pricing: API vs a fixed-price plan.

Worked Example: Pricing an Agent Workload's Fresh, Cached, and Output Tokens on OpenRouter

A coding agent's context grows every turn, and most of what gets resent is the same system prompt and file context from the turn before, exactly what prompt caching is built to discount. That discount isn't uniform across providers: OpenAI's GPT-5.6 and later charge cache writes at 1.25x the original input price even with automatic caching on. Route the same workload to a provider with a different caching policy and "cached tokens are cheap" stops holding evenly.

Take a lightweight agent step: 2,000 fresh input tokens, 8,000 cached tokens for the system prompt and prior turns, and 500 output tokens, run 10,000 times a day. The output line alone, 5 million tokens a day, costs $0.90 on OpenRouter's cheapest listed DeepSeek V4.1 Flash endpoint at $0.18 per million output tokens, and $12.00 on its most expensive listed endpoint at $2.40 per million, for identical weights and an identical workload. The only variable is which of the 41 endpoints the router happened to pick that day.

Pricing fluctuates based on provider and GPU availability. OpenRouter's per-endpoint rates above reflect the published endpoint spread as of 1 Nov 2026 and may have changed since; Spheron rates elsewhere in this post are live as of 09 Nov 2026. Check current GPU and inference pricing → for live rates.

Where Per-Token Spend on OpenRouter Turns Unpredictable

Put the fee, rate-limit, and routing sections together and the sources of drift are structural, not incidental:

  • Default routing can pick a different provider, and often a different quantization, per request, with no pin to one endpoint unless you set one.
  • Cache-write and cache-hit discounts vary by provider and model, so the same cached-token ratio prices differently depending on where the router lands that call.
  • The credit and BYOK fees sit on top of whatever the routed price turns out to be, so a provider swap changes both lines of the bill at once.
  • The in-flight spending budget throttles concurrency independently of your balance, capping throughput before a rate-limit error ever surfaces the real number.
  • A 429 fallback shifts traffic to a different provider mid-session, changing price and latency with no code change on your end.

None of that makes OpenRouter a bad router. It makes it a router, and a router's bill moves with the market it routes across.

When a Fixed Monthly Token Plan Wins Instead of a Per-Token Meter

A workload steady enough to feel that variance every month is the one a fixed monthly plan is built for. Spheron's managed inference plans prepay a monthly allowance of counted tokens on one model, GLM-5.3, GLM-5.3-Flash, or DeepSeek V4.1 Flash, at a price fixed for the term instead of one that moves with provider routing. Output counts 4x, fresh input 1x, and cached input 0.25x generally (0.03x on DeepSeek V4.1 Flash), the same idea as a provider's cache discount applied at one weighting instead of 41 different ones. The Spheron docs carry the API reference for wiring one in.

The honest limits matter too: a fixed plan covers three models, not OpenRouter's full catalog, so it has no answer for a team that needs GPT, Claude, Gemini, or multi-model routing; the price is quoted on request rather than published, so there's no instant number to check against the fee math above; and Growth's 3-month term plus Dedicated's 50B-token floor are the wrong shape for bursty or exploratory traffic. OpenRouter alternatives in 2026 sorts the fuller set of options, cost per million tokens works the formula from the GPU side, Azure OpenAI PTU pricing vs a fixed-price inference plan runs the same argument elsewhere, and LLM API pricing 2026 compares direct frontier-model rates.

If your OpenRouter spend is steady enough to feel the routing, fee, and rate-limit variance this post just walked through every month, a fixed-price plan locks in one rate for the term instead.

Request access to Spheron's managed inference plans →

FAQ / 04

Frequently Asked Questions

OpenRouter passes through each provider's own per-token rate with no markup on the inference price itself. Its revenue comes from two separate fees: 5.5% on Standard-plan credit purchases (minimum $0.80, 8% on Business), and a usage-based fee on BYOK spend that OpenRouter has said it will eventually replace with a fixed monthly subscription.

Not on the token price. A request through OpenRouter and the same request straight to the provider's own API bill the same per token, since OpenRouter doesn't mark up inference. Going direct removes OpenRouter's credit-purchase fee and BYOK fee, at the cost of giving up the router's catalog breadth and automatic provider failover.

Two. A credit purchase fee of 5.5% (Standard) or 8% (Business) on non-crypto top-ups with an $0.80 minimum, or 5.0% flat with no minimum on crypto; and a usage-based fee on BYOK spend, which OpenRouter plans to replace with a flat monthly subscription.

Its fee structure is published rather than hidden inside a marked-up token price, and the fees sit on funding your account and on BYOK spend, not on the inference line itself. The real production risk isn't legitimacy, it's variance: default routing can send identical requests to different providers with different quantization, latency, and effective price from one call to the next.

// Try It Yourself

Try It on Real GPUs

The GPUs behind these guides are the ones you can rent here: H100s, H200s, B200s, and more, billed per minute after a 20-minute minimum runtime, with no contracts. Pick one and you are live in under two minutes.

View Pricing
→
Or talk to our team
Spheron GPU instance going live and linking data centers across the globe