OpenRouter
How does ZopNight track OpenRouter spend?
ZopNight registers 6 OpenRouter models through the AI Gateway, spanning several vendors: GPT-4o, Claude Sonnet and Haiku, Llama 3.1 70B and DeepSeek. OpenRouter is the multi-vendor path, so a single credential reaches several model families with spend still metered per team.
Models registered by default
| Model | Tier | Maps to |
|---|---|---|
or-gpt-4o | strong | openrouter/openai/gpt-4o |
or-gpt-4o-mini | cheap | openrouter/openai/gpt-4o-mini |
or-claude-sonnet | strong | openrouter/anthropic/claude-sonnet-4.5 |
or-claude-haiku | cheap | openrouter/anthropic/claude-haiku-4.5 |
or-llama-70b | strong | openrouter/meta-llama/llama-3.1-70b-instruct |
or-deepseek | cheap | openrouter/deepseek/deepseek-chat |
OpenAI, Anthropic, Llama and DeepSeek in one list
Six, deliberately spanning vendors:
or-gpt-4o,or-gpt-4o-mini: OpenAI via OpenRouteror-claude-sonnet→ claude-sonnet-4.5,or-claude-haiku→ claude-haiku-4.5or-llama-70b→ llama-3.1-70b-instructor-deepseek→ deepseek-chat
Why route through OpenRouter at all
One credential reaches several model families, which makes it the cheapest way to A/B a routing posture across vendors without provisioning accounts with each. The tradeoff is an extra hop and OpenRouter’s own margin, worth it for breadth, less so for a workload that has settled on one vendor.
Live model discovery runs against OpenRouter’s /models endpoint, so newly available models
appear without a ZopNight release.
OpenRouter traffic bypasses ZopNight infrastructure
ZopNight never sits in your request path. The gateway runs on hosted LiteLLM; ZopNight configures it, meters it and enforces the budget, but your prompts and completions do not traverse our infrastructure. That distinction is why per-request cost attribution is possible without us reading request bodies.
One OpenRouter key per team, with a hard budget
Each team gets a virtual key with a hard USD budget and its own model allow-list. When a key hits its cap it stops working. This is a limit, not an alert. Keys rotate and revoke independently, so a leaked key is contained to one team’s budget rather than the org’s.
Routing postures across OpenRouter vendors
Three postures decide which model serves a request: Cost-saver, Balanced and Quality-first. Requests are classified into four semantic categories (coding, analysis and reasoning, extraction and classification, chit-chat) and routed accordingly, so cheap models take the traffic that does not need an expensive one.
A semantic cache sits in front, with strictness settings from strict (0.98 similarity) to loose (0.90). On repetitive workloads the cache is usually a larger saving than the routing itself.
OpenRouter: common questions
Why route through OpenRouter instead of each vendor directly?
One credential reaches several model families, which makes it the cheapest way to compare a routing posture across vendors without provisioning an account with each. The tradeoff is an extra hop and OpenRouter's own margin, worth it for breadth and less so once a workload has settled on one vendor.
Which vendors does ZopNight reach through OpenRouter?
Six models spanning four vendors: OpenAI gpt-4o and gpt-4o-mini, Anthropic claude-sonnet-4.5 and claude-haiku-4.5, Meta llama-3.1-70b-instruct, and DeepSeek deepseek-chat.
Do newly available OpenRouter models appear automatically?
Yes. Live model discovery runs against OpenRouter's /models endpoint, so a new model shows up without a ZopNight release.