Gin / Resources
OpenRouter pricing, explained
What you pay for tokens, what you pay OpenRouter, and where the real money in an AI bill goes.
Short answer: OpenRouter charges the provider’s own per-token price with no markup, and takes its cut when you buy credits: 5.5% by card (minimum $0.80) or 5% in crypto. With your own provider keys (BYOK), the first $25,000 a month of usage is fee-free on pay-as-you-go, then 5%.
So the fee is rarely the problem. The model you pick for each feature is.
What OpenRouter charges
| What | Cost |
|---|---|
| Tokens | Provider’s list price, no markup |
| Credits by card | 5.5%, minimum $0.80 |
| Credits by crypto | 5% |
| BYOK (your own keys) | Free up to $25,000/month list-price usage, then 5% |
| Free models | $0, limited to 50 requests/day (1,000/day after buying $10+ credits) |
Unused credits can be refunded within 24 hours of purchase, minus the fee, and may expire a year after purchase. Check OpenRouter’s FAQ for changes.
What tokens cost on OpenRouter today
The newest models from each major provider, cheapest first. Prices are dollars per million tokens. The LLM cost calculator has all 448 models and turns them into a monthly bill.
| Model | Input | Output | Cache read | Context |
|---|---|---|---|---|
Claude Haiku 5.5anthropic/claude-haiku-5.5 | $0.10 | $0.50 | $0.01 | 1M |
Qwen3.8 Flashqwen/qwen3.8-flash | $0.15 | $0.47 | $0.016 | 1M |
MiniMax M2.7minimax/minimax-m2.7 | $0.21 | $0.84 | $0.042 | 205K |
DeepSeek V4.1 Flashdeepseek/deepseek-v4.1-flash | $0.30 | $1.20 | $0.0060 | 1M |
MiniMax M3minimax/minimax-m3 | $0.30 | $1.20 | $0.06 | 1M |
GLM 5.3 FlashXz-ai/glm-5.3-flashx | $0.37 | $1.25 | $0.09 | 1M |
Mistral Large 4mistralai/mistral-large-4-0 | $0.68 | $2.09 | $0.07 | 524K |
DeepSeek V4 Pro 0423deepseek/deepseek-v4-pro | $0.955 | $1.91 | $0.08 | 1M |
Kimi K2.6moonshotai/kimi-k2.6 | $0.465 | $2.45 | $0.098 | 262K |
Gemini 3.8 Flashgoogle/gemini-3.8-flash | $0.75 | $3.75 | $0.075 | 1M |
Gemini 3.7 Flashgoogle/gemini-3.7-flash | $0.75 | $3.75 | $0.075 | 1M |
Grok 4.7x-ai/grok-4.7 | $2.00 | $6.00 | $0.50 | 500K |
Grok 4.6x-ai/grok-4.6 | $2.00 | $6.00 | $0.50 | 500K |
Mistral Medium 3.5mistralai/mistral-medium-3-5 | $1.50 | $7.50 | — | 262K |
GLM 5.3 Primez-ai/glm-5.3-prime | $2.80 | $8.80 | $0.56 | 1M |
Claude Sonnet 5.5anthropic/claude-sonnet-5.5 | $2.00 | $10.00 | $0.10 | 1M |
GPT-6.1 Sol Proopenai/gpt-6.1-sol-pro | $2.00 | $10.00 | $0.10 | 1.1M |
GPT-6.1 Solopenai/gpt-6.1-sol | $2.00 | $10.00 | $0.10 | 1.1M |
Kimi K3moonshotai/kimi-k3 | $0.72 | $15.00 | $0.43 | 1M |
Qwen3.8 Max Primeqwen/qwen3.8-max-prime | $4.00 | $12.00 | $0.50 | 1M |
A worked example
Say a support summarizer runs 5,000 times a day, sending 3,000 tokens and getting 500 back.
- On Claude Sonnet 5.5 ($2.00 in, $10.00 out per 1M), one call is 3,000 × input + 500 × output. Run that 150,000 times a month and the fee on top is 5.5% of whatever credits you buy to cover it.
- On DeepSeek V4.1 Flash ($0.30 in, $1.20 out), the same month costs a fraction of that, if the summaries are still good.
The model choice moves the bill by 10× or more. The 5.5% fee moves it by 5.5%. Run these numbers in the calculator.
Caching discounts on OpenRouter
OpenRouter passes through each provider’s prompt-cache pricing. Repeated prompt prefixes are billed at the cache-read price, often 10–25% of the input price. Anthropic and Gemini need explicit cache_control breakpoints; OpenAI, DeepSeek, Grok and most open models cache automatically. OpenRouter keeps you on the same provider for a while after a cache hit, and a session_id makes that stickiness reliable. Details and numbers: prompt caching costs by provider.
What OpenRouter’s dashboard can’t tell you
OpenRouter’s activity page shows spend by key, model and app. It can’t tell you that the nightly digest costs $40 a day while chat costs $3, because it never sees which feature made the call. That is the number you need before switching models: you only want to move the features that are expensive and easy.
Options, from most work to least:
- One OpenRouter key per feature, then compare keys on the activity page.
- Log
usagefrom every response with a feature tag into your own analytics. - Wrap your client with Gin:
fetch: gin({ useCase: 'digest' }). You get spend by use case in a free daily email, and cheaper models graded on your real calls.
How to lower an OpenRouter bill
- Move the easy features first. Classification, extraction, short summaries and follow-up turns usually pass on a model 5–20× cheaper. Check on your own prompts before you switch, not on benchmarks.
- Make prompts cacheable. Static instructions and tools first, the per-request part last, and a stable
session_idper conversation or feature. - Cap output. Set
max_tokens, ask for terse JSON, and turn reasoning off or down where it doesn’t help. - Use batch variants for offline work. Models with a
:batchsuffix on OpenRouter are listed at about half price. - Keep a fallback. Any cheaper model will fail some prompts. Route those back to the original model instead of shipping worse answers.
Gin automates 1, 2 and 5: it replays your recent calls on cheaper candidates, has a judge compare each answer with the original, and only routes a use case once ≥90% of its replays came back the same or better. Everything else stays on your model, on your OpenRouter key.
FAQ
Does OpenRouter mark up model prices?
No. OpenRouter passes through each provider’s per-token price. It makes money on a fee when you buy credits: 5.5% by card (minimum $0.80) or 5% in crypto.
Is OpenRouter cheaper than calling providers directly?
Per token it costs the same, plus the credit fee. It can still come out cheaper because one key reaches hundreds of models, so switching a feature to a cheaper model is a one-line change.
What does BYOK cost on OpenRouter?
With your own provider keys, the first $25,000 per month of list-price usage carries no OpenRouter fee on pay-as-you-go. Above that, OpenRouter charges 5% of what the same usage would cost through OpenRouter, taken from your credits.
Are free models on OpenRouter really free?
Yes, but rate-limited: 50 requests a day without purchased credits, 1,000 a day once you have bought at least $10 of credits. Free variants can be slower and may log prompts, so check each provider’s data policy.
How do I see what each feature of my app costs on OpenRouter?
OpenRouter’s activity page groups spend by key, model and app, not by feature. Tag each call yourself, use one key per feature, or wrap your client with Gin, which reports spend per use case and emails it daily for free.