OpenRouter vs Direct API: When an AI Router Is Worth It
A router gives you one key, one bill and many models. A direct API gives you one contract and fewer parties. See how OpenRouter, OpenCode, Command Code and a local gateway differ, checked 4 October 2026.

OpenRouter vs direct API comes down to one trade. An AI router gives you one API key, one bill and many models, and in return it becomes an extra company that sees your traffic. A direct provider API gives you a contract with the lab that runs the model and one fewer party in the path. This guide compares both using each company's own pages, checked on 4 October 2026. It is not legal advice, so read the contracts and ask each vendor in writing.
What is an LLM router?
An LLM router, also called an LLM gateway or AI gateway, sits between your application and several model providers. You send one request format and the router forwards it to a host that serves the model you asked for. OpenRouter's FAQ describes the pitch as a unified API with pooled billing and fallbacks "so that you get much better uptime".
A router does three jobs. It translates one API format into many. It fails over when a host errors, and the FAQ says OpenRouter "will automatically fall back to the next provider". And it selects a host. By default, OpenRouter's routing prioritises providers without significant outages in the last 30 seconds, then picks among the cheapest candidates weighted by the inverse square of the price, and keeps the rest as fallbacks. That turns routing into price arbitrage. The same model name goes to whichever host is cheap and healthy, unless you pin one.
Which router companies exist, and how do they charge?
These are the services we checked and what each one publishes about its charges. Treat the table as a 4 October 2026 snapshot, because prices change.
| Service | What it is | How it charges, as published |
|---|---|---|
| OpenRouter | Hosted gateway to models from many providers, paid with credits | The pricing page says inference is billed at the provider's list price on every plan. The fee is on credit purchases: 5.5% on Standard, 8% on Business, "fee discounts available" on Enterprise. Bring-your-own-key use is free up to $25,000 of list-price inference per month, then 5%. |
| OpenCode Zen | Gateway of models tested for coding agents, pay as you go | Per-token prices for each model. Zen's page says it sells at cost, so the only markup covers processing fees, and card fees are passed on at 4.4% + $0.30 per transaction. |
| OpenCode Go | Subscription to open coding models | $10 per month (Go) or $40 per month (Go Plus), with dollar-based usage limits per model. |
| Command Code | Coding agent with its own provider API | The pricing page says "No markup" and adds a processing fee to each plan. |
| Vercel AI Gateway | Gateway inside the Vercel platform | The pricing docs say "no markup and no platform fee on tokens" at the provider's list price, and you cover payment processing fees. |
Read the gaps as well as the numbers. OpenRouter's revenue is easy to see, because it takes a percentage on credit purchases. OpenCode and Command Code say "at cost" or "no markup", and the pages we read do not say how either company earns a margin beyond the processing fee, so we will not guess. For plan sizes and limits, see our comparison of the OpenCode Go and Command Code plans.
What do you gain from a router?
- Choice. OpenRouter's pricing page lists 500+ models on the Standard plan. Zen puts closed and open-weight models from many labs behind one key.
- Uptime. One host failing does not stop your agent while fallbacks are on.
- One integration. Zen serves OpenAI Responses, Anthropic Messages and Chat Completions style endpoints, so most coding agents connect without custom code.
- One invoice. One balance and one usage dashboard instead of one per lab.
What do you give up with an AI router?
An extra party sees your traffic
Your prompts go to the router first and then to the host it picks. OpenRouter's privacy policy says inputs are "transmitted to the Model Provider you select, or that is selected through automatic routing" and that providers have different data practices. Terms stack as well: you accept the router's terms and, through them, each model's own terms. Our companion article on zero data retention across routers follows one prompt through every hop.
The same model name can mean different hosts
With default routing, two requests for one model can reach different hosts. OpenRouter documents a quantizations filter and warns that quantized models "may exhibit degraded performance for certain prompts, depending on the method used". By default require_parameters is false, so a host that does not support a parameter you sent can still receive the request and ignore it.
OpenRouter's public list of zero-data-retention endpoints shows how uneven the metadata is. We read it on 4 October 2026: 512 of its 942 endpoints report quantization as unknown, and 61 of its 335 model IDs have endpoints that report different context lengths. One GLM 5.3 Flash ID ranges from roughly 262 thousand to roughly 1.05 million tokens. That list covers ZDR endpoints only, so treat it as a sample of the catalogue.
OpenCode argues the other side. Zen's page says that with a model served through something like OpenRouter "you can never be sure if you are getting the best version of the model you want", and it sells a tested list instead. That is a competitor's claim. OpenRouter's documented answer is the filters above: pin a provider, set a quantization, require parameters.
Latency
OpenRouter's pricing FAQ says routing improves reliability, that latency "varies by model, provider and region", and that you should pin a specific model and provider for consistent latency. A router adds a network hop, so measure on your own traffic before you commit.
When should you go direct to the provider?
- Enterprise contracts and zero data retention. Anthropic enables ZDR per organization through its sales team, and OpenAI's ZDR and Modified Abuse Monitoring controls need prior approval. Those agreements are between you and the lab. A router may hold arrangements of its own with the same labs, but the pages we read do not publish them.
- Regulated data. Health or financial data needs signed agreements with every party that touches it. Anthropic's page describes a BAA-based HIPAA setup for its API. Fewer parties in the path means fewer agreements to sign and audit.
- Volume discounts. OpenRouter lists "fee discounts available" on Enterprise and Vercel offers custom discounts on token spend. Our read is that committed-spend deals with a lab are the other route, so ask for both quotes.
How is a local gateway like My Claude Code different?
A local gateway is software you run on your own machine, so no company sits in the middle. My Claude Code (MCC) is one, and we build it, so weigh this section accordingly. Per its README, MCC has no telemetry and its only outbound traffic goes to the providers you configure. Keys stay in one local .env. You still get routing: tiers with fallback chains, credential rotation and 57 providers, including local servers such as Ollama, LM Studio and llama.cpp.
The difference is who holds the contracts. Put your own Anthropic, OpenAI or Google keys behind the gateway and the agreement you negotiated applies directly, with no router in between. Two caveats. MCC keeps a local request log, searchable by prompt and reply, which you can switch off with REQUEST_LOG_ENABLED and cap with REQUEST_LOG_MAX_ROWS. That is your data on your disk, and still data. And if you add OpenRouter or OpenCode Zen as a provider inside MCC, that traffic falls under their policies again. Our guide to using Claude Code with any model shows the setup.
OpenRouter vs direct API: side-by-side comparison
| Question | Router (OpenRouter style) | Direct provider API | Local gateway, your keys |
|---|---|---|---|
| Contract | With the router, plus each model's own terms | With the lab only | With each lab you configure |
| Keys and bills | One key, one credit balance | One per lab | One local config, one bill per lab |
| Who can see prompts | The router, then the chosen host | The provider | The providers you configure, plus a local log |
| Zero data retention | Flag on routers that offer it; the router's own upstream agreements are not published on the pages we read | Your contract with the lab, per organization, with feature exceptions | The ZDR you hold with each lab |
| Model choice | Hundreds of models | One lab's models | Any provider you add, including local |
| Failover | Automatic across hosts | You build it | Fallback chains you set |
| Price | List price plus a credit fee (OpenRouter) | List price, negotiable at volume | Provider prices; MCC itself is free |
| Quality control | Filters for provider, quantization and parameters | The lab's own deployment | Your pins in config |
| Setup effort | Lowest | Low per lab, higher across many | Install and configure a local service |
Which should you choose?
- Prototype, many models, one invoice: a router.
- Client or regulated data with a ZDR requirement: a direct contract. Use a router only if you can verify ZDR-only routing and get its upstream agreements in writing.
- Daily agent use across several tools with your own accounts: a local gateway with direct keys.
- Whatever you pick: recheck the vendor pages every quarter, because these terms change.
Where Danube Labs fits
Danube Labs is a founder-led software, AI and automation studio in Bucharest. We build My Claude Code, and when we design AI features for clients we choose between routers and direct contracts by data sensitivity and volume. If you want a second opinion on your setup, see our AI systems service or book a free intro call.
Frequently asked questions
- What is an LLM router?
- An LLM router, also called an LLM gateway or AI gateway, is a service between your app and several model providers. You send one request format and it forwards the call to a host of the model, falls back to another host if one fails, and can pick hosts by price or speed. OpenRouter, OpenCode Zen and Vercel AI Gateway are examples.
- Is OpenRouter cheaper than going direct to the provider?
- Not by itself. As of 4 October 2026 OpenRouter says inference is billed at the provider's list price on every plan and charges a fee when you buy credits, 5.5% on Standard and 8% on Business. A direct API has no such fee, while routing can pick a cheaper host for some models and direct volume discounts need a contract.
- Does an AI router see my prompts?
- Yes, because it sits in the path between you and the model. OpenRouter's docs say it stores no prompts or responses unless you opt in to logging, but it forwards them to the model provider and always stores request metadata such as token counts and latency. Every router differs, so read its privacy policy and settings.
- When should I use a direct provider API instead of a router?
- Go direct when you need a contract with the lab, zero data retention under your own agreement, signed agreements for regulated data or committed-spend discounts. Anthropic enables ZDR per organization through sales and OpenAI requires approval. This is not legal advice, so read the contracts and ask the vendor in writing.
- How is a local gateway different from OpenRouter?
- A local gateway runs on your machine and you hold the provider accounts. According to its README, My Claude Code, which Danube Labs builds, has no telemetry and sends traffic only to providers you configure. OpenRouter is a hosted company in the middle with its own terms and fees, and it brings its own data policies into the path.
- Can I use OpenRouter with my own provider keys?
- Yes, OpenRouter supports bring-your-own-key. Per its pricing page on 4 October 2026, Standard and Business plans include $25,000 of list-price inference per month without a BYOK fee, then charge 5%. Requests still pass through OpenRouter, so its data policies still apply to that traffic.


