Model Slugs and Naming Conventions on OpenRouter
OpenRouter model ids are strings, not free-form marketing names.
Search across all documentation pages
OpenRouter model ids are strings, not free-form marketing names.
If you misread the slug grammar, you get 400s, wrong models, or silent quality regressions from the wrong variant.
model fields and config maps.GET /api/v1/models.model after fallbacks or auto-routing.[router-or-author]/[model-name][:variant]| Piece | Meaning | Examples (illustrative; verify at build) |
|---|---|---|
| Author / org | Catalog owner namespace | openai, anthropic, google, meta-llama, deepseek, openrouter |
| Model name | Specific model id | gpt-4o-mini, claude-sonnet-4.5, gemini-2.5-flash |
| Variant suffix | Routing or capability shortcut | :nitro, :floor, :free, :online, :thinking, :extended, :exacto |
| Router slug | Special model that selects others | openrouter/auto, free-model routers (see docs) |
| Latest alias | Moving target for a family | forms like ~openai/gpt-latest (verify syntax at build) |
Full slug examples:
| Slug pattern | Reads as |
|---|---|
openai/gpt-4o-mini | OpenAI GPT-4o mini via OpenRouter catalog |
anthropic/claude-sonnet-4.5 | Anthropic Claude Sonnet release line |
meta-llama/llama-3.3-70b-instruct | Meta Llama instruct checkpoint |
openrouter/auto | Auto Router selects a model per prompt |
meta-llama/llama-3.3-70b-instruct:nitro | Same model, prefer high-throughput providers |
meta-llama/llama-3.3-70b-instruct:floor | Same model, prefer lowest price providers |
| Suffix | Intent | Rough equivalent | Notes |
|---|---|---|---|
:nitro | Speed / throughput | provider.sort = "throughput" | Good for chat UX |
:floor | Lowest price | provider.sort = "price" | Good for batch |
:free | Free endpoints when available | free catalog filter | Strict rate limits; verify availability |
:online | Web-grounded variant | online plugin / search routing | Not every model supports it |
:thinking | Extended reasoning style | reasoning-enabled routing | Model-dependent |
:extended | Extended context variant | longer context endpoints | Check actual window |
:exacto | Quality-first tool-call routing | exacto provider preference | Useful for tool-heavy agents |
Suffixes compose only when documented.
Do not invent chains like :nitro:floor unless the catalog shows them.
These are different namespaces.
| Kind | Where used | Example |
|---|---|---|
| Model slug | model / models fields | anthropic/claude-sonnet-4.5 |
| Provider slug | provider.order, only, ignore | anthropic, openai, azure, together, deepinfra/turbo |
Base provider slugs often match all regions/variants for that host.
Full endpoint slugs (for example deepinfra/turbo or google-vertex/us-east5) pin a specific endpoint - verify current endpoint names at build.
| Prefix | Typical models | Agent notes |
|---|---|---|
openai/ | GPT family | Strong tool ecosystem familiarity |
anthropic/ | Claude family | Strong long-context / coding profiles (verify) |
google/ | Gemini family | Multimodal options vary by slug |
meta-llama/ | Llama instruct | Often multi-provider hosted |
deepseek/ | DeepSeek lines | Check tool and reasoning support |
mistralai/ | Mistral lines | Watch context and tool support |
openrouter/ | Routers and meta models | auto and related routers |
This table is a map of namespaces, not a quality ranking.
| Slug / feature | Role | When to use |
|---|---|---|
openrouter/auto | Per-prompt model selection | Mixed unknown prompts |
| Free models router | Route among free endpoints | Zero-cost experiments (limits apply) |
Latest aliases (~... forms) | Track newest family member | Avoid manual renames; accept drift |
| Presets (product feature) | Named server-side configs | Shared org defaults (verify at build) |
Always read response model when using routers or aliases.
{
"model": "anthropic/claude-sonnet-4.5",
"models": ["openai/gpt-4o-mini", "google/gemini-2.5-flash"],
"provider": {
"order": ["anthropic", "amazon-bedrock"],
"allow_fallbacks": true,
"ignore": ["deepinfra"]
}
}model / models take model slugs.provider.* lists take provider slugs.# List catalog (paginate / filter as needed; verify endpoint at build)
curl -s https://openrouter.ai/api/v1/models \
-H "Authorization: Bearer $OPENROUTER_API_KEY" | headimport os, httpx
r = httpx.get(
"https://openrouter.ai/api/v1/models",
headers={"Authorization": f"Bearer {os.environ['OPENROUTER_API_KEY']}"},
timeout=30.0,
)
r.raise_for_status()
ids = [m["id"] for m in r.json().get("data", [])]
print(len(ids), "models")
print([i for i in ids if i.startswith("anthropic/")][:5])| Mistake | Why it hurts |
|---|---|
| Using UI display names as API ids | Display names are not slugs |
| Dropping the author prefix | Ambiguous / invalid model |
| Hardcoding obsolete version numbers forever | Breaks when catalog renames |
Assuming :free means unlimited | Rate and availability limits apply |
Copying a provider slug into model | Wrong field namespace |
Ignoring response model after :auto | You do not know what you paid for |
The live OpenRouter models catalog and the models API.
Blog posts and older tutorials go stale.
Treat them as case-sensitive exact strings.
Copy from the catalog.
Private/BYO model features use documented scoping rules.
Follow the private models guide for your account type (verify at build).
Do not rely on bare ids.
Use the full catalog slug OpenRouter lists.
As an ordered array of full model slugs in models (plus a primary model depending on SDK examples).
Prefer documented combinations only.
When unsure, set provider explicitly instead of stacking suffixes.
Fallbacks, auto-router, or latest-alias resolution selected a different concrete model.
As plain strings under logical policy names (planner, fast, cheap), not raw literals at every call site.
Yes, catalog style is similar, but use embeddings endpoints rather than chat completions.
New versions appear frequently.
Pin versions for production agents; use latest aliases only where drift is acceptable.
Vision/audio capable models still use author/model slugs; capability is a property of the model card, not always the string shape.
Yes for routers and some meta offerings.
Most third-party models keep their own author prefix.
openrouter/autoStack versions: Pins from the category manifest (verify at build): OpenRouter (~315+ models, July 2026 pricing/fees); LangGraph 1.0+; CrewAI 1.14+; Microsoft Agent Framework 1.0; Vercel AI SDK 6; Pydantic AI (latest); LlamaIndex (latest); OpenAI Agents SDK (latest + MCP); MCP (Linux Foundation governance); A2A (HTTP+SSE+JSON-RPC 2.0); Solana
@solana/web3.js+@solana/spl-token.
Reviewed by Chris St. John·Last updated Jul 16, 2026