What to compare in a routing gateway
Once you've decided to route through a gateway instead of wiring each provider by hand, the gateways start to differ on the things that show up on your invoice and in your codebase: whether there's markup on credits, whether you can route on your own provider keys, how billing and logs are presented, and how hard it is to leave.
- Markup — does the gateway add a fee on top of provider pricing?
- Bring your own keys — can you route on keys you already pay for, and at what cost?
- Billing & logs — one balance and one audit trail, or several?
- Lock-in — is the API a standard you can point elsewhere, or proprietary?
Where AnyRouter lands
| What you care about | AnyRouter |
|---|---|
| API surface | OpenAI-compatible — drop-in for existing code |
| Catalog | 150+ models across 28+ providers |
| Free tier | $2 free credit + a free model tier, no card |
| Bring your own keys | Yes — route on your keys at $0 markup |
| Billing | One balance, unified usage, real-time pricing |
| Observability | Per-request audit log + analytics dashboard |
| Routing | Automatic failover across upstreams |
| Lock-in | None — it's the standard API; point back anytime |
The column is intentionally just AnyRouter's facts: the point of an alternative is what you get, not a takedown of where you're coming from.
Migrating is a two-line change
Because AnyRouter speaks the OpenAI API, switching is usually just the base URL and the key. Model ids become `provider/model`, and everything else — streaming, tools, the SDK — stays the same.
from openai import OpenAI
client = OpenAI(base_url="https://anyrouter.dev/v1", api_key="sk-ar-v1-...")
resp = client.chat.completions.create(
model="anthropic/claude-opus-4-8", # or openai/gpt-5.5, google/gemini-2.5-pro, ...
messages=[{"role": "user", "content": "Hello"}],
)