Models and Providers
Claude Code has a built-in list of 22 models.
It also knows the model names of each cloud provider, and a set of short aliases such as opus.
You choose a model with a flag, an environment variable, a setting, or the /model command.
This page lists every model, alias, and provider switch. For how the choice is made at run time, read Models.
At a Glance
| Question | Answer |
|---|---|
| Can you use it? | ✅ Yes. Run claude -- or type / in a session. |
| Can you change it? | ✅ Yes. Use --, ANTHROPIC_, ANTHROPIC_, or the model and model settings. |
| Can you turn it on or off? | Pick a provider with CLAUDE_ and its siblings. Limit choices with available. |
| Where does it live? | ~/. (user), . (project), managed settings, and your shell environment. |
| Status | Documented Undocumented |
Choose a Model
The list runs from highest to lowest priority. Source: Model Configuration: Setting Your Model.
| Item | Status | What it does |
|---|---|---|
/ | Documented | Switches now. With no argument it opens the picker. Enter saves your choice as the default. s switches for this session only. |
-- | Documented | Sets the model for one session. |
ANTHROPIC_ | Documented | Sets the model with the same values as --. |
model | Documented | The settings key that stores the default. |
ANTHROPIC_ | Documented | Sets the default for new sessions. |
available | Documented | An allowlist in managed settings. It limits /, --, the env vars, and alias resolution. Entries can be a family (sonnet), a version prefix (claude-), or a full ID. |
model | Documented | Maps an Anthropic model ID to the provider string Claude Code sends, such as a Bedrock inference profile ARN. |
model | Documented | Lists your own rows for the / picker, in your order and labels. |
ANTHROPIC_ | Documented | Adds one custom entry to the picker. The ID is not validated. Add _ and _ for a label. |
CLAUDE_ | Documented | Fills the picker from the gateway / endpoint. Off by default. |
CLAUDE_ | Documented | Timeout of that request. Default 3000. |
CLAUDE_ | Documented | The default model for subagents, teammates, and workflow agents with no model set. |
-- | Undocumented | Offers models your account can use that this version does not know. |
Pre, Post hooks | Documented | Run around a switch. Pre can block it. |
Aliases
An alias is a short name for the newest model of a family.
The catalog holds opus, sonnet, haiku, and fable. The help text of --model names fable, opus, and sonnet.
| Alias | Status | Resolves to | Exceptions |
|---|---|---|---|
default | Documented | Clears the override. The model is the runtime default for your account. | Not an alias in the strict sense. |
opus | Documented | claude- | Foundry uses claude-. Gateways use claude-. |
sonnet | Documented | claude- | Bedrock, Vertex, Foundry, and Mantle use claude-. Claude Platform on AWS and gateways use claude-. |
haiku | Documented | claude- | Every other provider uses claude-. |
fable | Documented | claude- | Gateways use claude-. In Claude apps gateway sessions, fable and best resolve to Fable 5. |
best | Documented | The model fable resolves to, where you have Fable. Otherwise the same as opus. | |
opusplan | Documented | opus in plan mode, then sonnet to run the plan. | |
sonnet[1m], opus[1m], fable[1m] | Documented | The alias with a 1M window. | No effect when the alias already has a native 1M window. |
Sources: Model Configuration for the aliases, and the program for the exceptions. Opus 5.5 needs Claude Code v2.1.280 or later, Sonnet 5.5 needs v2.1.284, Haiku 5.5 needs v2.1.293, and Fable 5.1 needs v2.1.257.
Pin the Models Behind an Alias
| Environment variable | Status | Effect |
|---|---|---|
ANTHROPIC_ | Documented | The model for opus, and for opusplan in plan mode. |
ANTHROPIC_ | Documented | The model for sonnet, and for opusplan outside plan mode. |
ANTHROPIC_ | Documented | The model for haiku and for background work. |
ANTHROPIC_ | Documented | The model for fable. It also marks the ID as a Fable model for fallback. |
⛔ ANTHROPIC_ | Documented | Deprecated. Use ANTHROPIC_. |
ANTHROPIC_ | Documented | The display name of the pinned model in the picker. Works on third-party providers and gateways. |
ANTHROPIC_ | Documented | The description in the picker. |
ANTHROPIC_ | Documented | A comma list that tells Claude Code what the pinned model supports. Values: effort, xhigh_, max_, thinking, adaptive_, interleaved_. |
<FAMILY> is OPUS, SONNET, HAIKU, or FABLE. The _NAME, _DESCRIPTION, and _SUPPORTED_CAPABILITIES suffixes also work with ANTHROPIC_CUSTOM_MODEL_OPTION.
Pin versions before you roll Claude Code out on a third-party provider, because the alias default can lag the newest model.
A native 1M model runs with 1M with no suffix when the pinned ID contains its Anthropic API ID. For a model that reaches 1M through [1m] (Opus 4.6, Sonnet 4.6), add [1m] to the variable.
Catalog
The catalog is a JavaScript object in the program with the comment Hand-maintained baked-in model catalog.
It holds the provider names, the window, the output limits, the price, and the capability flags of each model.
A row is Documented when an official docs page names the model. It is Undocumented when no page names it.
The docs do not list the catalog fields, so the window, the limits, and the prices are program facts for all rows.
"Larger window" says how to get a bigger one: native 1M means the model has 1M already, context-1m is the beta that asks the API for it, and [1m] is the suffix for --model.
"Output" shows the default and the highest output limit in tokens. "Price" shows dollars for one million input and output tokens.
id | Status | Name | Knowledge cutoff | Window | Larger window | Output | Default effort | Price |
|---|---|---|---|---|---|---|---|---|
claude- | Undocumented | Haiku 3.5 | - | not set | - | 8,192 / 8,192 | - | $0.8 / $4 |
claude- | Documented | Haiku 4.5 | February 2025 | 200,000 | [1m] suffix | 32,000 / 64,000 | - | $1 / $5 |
claude- | Documented | Haiku 5.5 | June 2026 | 1,000,000 | native 1M, context- | 128,000 / 128,000 | medium | $0.1 / $0.5 |
claude- | Undocumented | Sonnet 3.5 | - | not set | - | 8,192 / 8,192 | - | $3 / $15 |
claude- | Undocumented | Sonnet 3.7 | - | not set | - | 32,000 / 64,000 | - | $3 / $15 |
claude- | Undocumented | Sonnet 4 | January 2025 | 200,000 | context-, [1m] | 32,000 / 64,000 | - | $3 / $15 |
claude- | Documented | Sonnet 4.5 | January 2025 | 200,000 | context-, [1m] | 32,000 / 64,000 | - | $3 / $15 |
claude- | Documented | Sonnet 4.6 | August 2025 | 200,000 | context-, [1m] | 32,000 / 128,000 | - | $3 / $15 |
claude- | Documented | Sonnet 5 | January 2026 | 1,000,000 | native 1M, context- | 64,000 / 128,000 | high | $2 / $10 |
claude- | Documented | Sonnet 5.5 | June 2026 | 1,000,000 | native 1M, context- | 128,000 / 128,000 | medium | $2 / $10 |
claude- | Undocumented | Opus 4 | January 2025 | 200,000 | [1m] suffix | 32,000 / 32,000 | - | $15 / $75 |
claude- | Documented | Opus 4.1 | January 2025 | 200,000 | [1m] suffix | 32,000 / 32,000 | - | $15 / $75 |
claude- | Documented | Opus 4.5 | May 2025 | 200,000 | [1m] suffix | 32,000 / 64,000 | - | $5 / $25 |
claude- | Documented | Opus 4.6 | May 2025 | 200,000 | context-, [1m] | 64,000 / 128,000 | - | $5 / $25 |
claude- | Documented | Opus 4.7 | January 2026 | 1,000,000 | native 1M, context-, [1m] | 64,000 / 128,000 | xhigh | $5 / $25 |
claude- | Documented | Opus 4.8 | January 2026 | 1,000,000 | native 1M, context-, [1m] | 64,000 / 128,000 | high | $5 / $25 |
claude- | Documented | Opus 5 | May 2026 | 1,000,000 | native 1M, context-, [1m] | 64,000 / 128,000 | high | $5 / $25 |
claude- | Documented | Opus 5.5 | June 2026 | 1,000,000 | native 1M, context-, [1m] | 128,000 / 128,000 | medium | $4 / $20 |
claude- | Documented | Fable 5 | January 2026 | 1,000,000 | native 1M, context- | 64,000 / 128,000 | high | $10 / $50 |
claude- | Documented | Fable 5.1 | June 2026 | 1,000,000 | native 1M, context- | 64,000 / 128,000 | high | $10 / $50 |
claude- | Documented | Mythos 5 | January 2026 | 1,000,000 | native 1M, context- | 64,000 / 128,000 | - | $10 / $50 |
claude- | Undocumented | Mythos 5.1 | June 2026 | 1,000,000 | native 1M, context- | 64,000 / 128,000 | high | $10 / $50 |
Notes:
- A model with no window in the table has no
contextentry in the catalog. - The catalog keeps a rank for each model for the advisor tool (
--advisor). The ranks run from1forclaude-haiku-4-5to9forclaude-fable-5-1andclaude-mythos-5-1. - A model can name a model to use instead on a third-party provider. For example,
claude-opus-5-5falls back toclaude-opus-5, andclaude-fable-5-1falls back toclaude-fable-5. - The Mythos models have a name on the Anthropic API only, and none on the cloud providers.
Pricing
Prices are in US dollars for each million tokens. A search request costs 0.01 in every group.
Haiku 5.5 costs 0.5 for input and 2.5 for output above 100,000 prompt tokens.
All rows are Undocumented.
| Models | Input | Output | Cache write 5m | Cache write 1h | Cache read |
|---|---|---|---|---|---|
claude- | 2 | 10 | 2.5 | 4 | 0.2 |
claude- | 2 | 10 | 2.5 | 4 | 0.1 |
claude-, claude-, claude-, claude-, claude- | 3 | 15 | 3.75 | 6 | 0.3 |
claude-, claude-, claude-, claude-, claude- | 5 | 25 | 6.25 | 10 | 0.5 |
claude-, claude- | 15 | 75 | 18.75 | 30 | 1.5 |
claude-, claude- | 10 | 50 | 12.5 | 20 | 1 |
claude-, claude- | 10 | 50 | 12.5 | 20 | 0.25 |
claude- | 4 | 20 | 5 | 8 | 0.2 |
claude- | 0.8 | 4 | 1 | 1.6 | 0.08 |
claude- | 1 | 5 | 1.25 | 2 | 0.1 |
claude- | 0.1 | 0.5 | 0.125 | 0.2 | 0.01 |
Effort
The effort levels are low, medium, high, xhigh, and max.
A level the model does not accept runs as the highest accepted level below it.
The effort cost index scales the cost of a level against high, which is 1.
It comes from the catalog (Undocumented). claude-opus-4-7 has the default xhigh and no index. Other models not listed have no default effort in the catalog.
| Item | Status | What it does |
|---|---|---|
-- | Documented | Sets the effort for a session. ultracode sets xhigh and turns on the workflow mode. |
CLAUDE_ | Documented | Sets the effort. It wins over --, /, and settings. auto uses the model default. |
effort, max, model | Documented | Settings for the default level and a cap. |
ultrathink | Documented | A word in a prompt that asks for deeper thinking on that turn only. |
id | Default effort | Index (low, medium, high, xhigh, max) |
|---|---|---|
claude- | high | 0.6, 0.77, 1, 1.74, 1.91 |
claude- | high | 0.75, 0.86, 1, 1.38, 1.74 |
claude- | medium | 0.38, 0.52, 1, 2.03, 4.34 |
claude- | high | 0.75, 0.86, 1, 1.38, 1.74 |
claude- | xhigh | none |
claude- | high | 0.72, 0.9, 1, 1.65, 1.88 |
claude- | high | 0.67, 0.76, 1, 1.6, 1.7 |
claude- | medium | 0.48, 0.66, 1, 1.66, 3.44 |
claude- | high | 0.47, 0.74, 1, 2.41, 5.59 |
claude- | medium | 0.49, 0.54, 1, 1.87, 5.5 |
Thinking
| Item | Status | What it does |
|---|---|---|
MAX_ | Documented | Sets a fixed thinking budget. 0 turns thinking off on the Anthropic API. It cannot turn thinking off on Opus 5.5, Sonnet 5.5, Haiku 5.5, and the Fable models. |
CLAUDE_ | Documented | Goes back to the fixed budget on Opus 4.6 and Sonnet 4.6. No effect on newer models. |
CLAUDE_ | Documented | Leaves out the thinking field, for proxies that reject it. |
always, show | Documented | Settings for thinking. Option+T or Alt+T toggles it. |
-- | Undocumented | Hidden print-mode flag. enabled equals adaptive. |
-- | Undocumented | Hidden flag. Sets how thinking text comes back. |
-- | Undocumented | Hidden and deprecated. Use --. |
Fallback and Retries
| Item | Status | What it does |
|---|---|---|
--, fallback | Documented | A chain of up to three models for overload and server errors. |
CLAUDE_ | Undocumented | Forbids the substitution of a model. |
CLAUDE_ | Documented | Number of retries. Default 10, up to 15. |
CLAUDE_ | Documented | Retries 429 and 529 without end. |
CLAUDE_, CLAUDE_ | Documented | Start and longest wait after a 529. Defaults 500 and 32000. |
API_ | Documented | Request timeout. Default 600000. |
CLAUDE_, CLAUDE_ | Documented | Stream silence and first-byte deadlines. |
CLAUDE_ | Documented | Stops the retry without streaming. |
The rules for these are on Models.
Providers
The program knows these provider keys: first_party, bedrock, vertex, foundry, anthropic_aws, anthropic_google_cloud, mantle, and gateway.
These environment variables choose the provider.
The order when several are set is: gateway, Bedrock, Foundry, Claude Platform on AWS, Google Cloud, Mantle, Vertex.
| Env var | Status | Provider |
|---|---|---|
CLAUDE_ | Documented | Amazon Bedrock. |
CLAUDE_ | Documented | Google Cloud Agent Platform (Vertex). |
CLAUDE_ | Documented | Microsoft Foundry. |
CLAUDE_ | Documented | The Mantle endpoint of Amazon Bedrock. With Bedrock on, anthropic. model IDs route to Mantle. |
CLAUDE_ | Documented | Claude Platform on AWS. |
CLAUDE_ | Undocumented | Claude Platform on Google Cloud. |
CLAUDE_ | Undocumented | A host-managed gateway. Needs ANTHROPIC_ and a token. |
The Anthropic API, anthropic_aws, anthropic_google_cloud, and gateway providers use the first-party names, so the name tables below leave them out.
Endpoint and Region Variables
| Env var | Status | Provider | Effect |
|---|---|---|---|
ANTHROPIC_ | Documented | Bedrock | Overrides the endpoint URL. |
ANTHROPIC_ | Documented | Mantle | Overrides the Mantle endpoint. Default https://. |
ANTHROPIC_ | Documented | Bedrock | Cross-region profile prefix that Claude Code tries first. |
ANTHROPIC_ | Documented | Bedrock | Sent in the X- header. |
ANTHROPIC_ | Documented | Bedrock, Mantle | Region of the Haiku-class model. |
AWS_, AWS_, AWS_ | Documented | Bedrock | Standard AWS region and profile. Region order: AWS_, AWS_, shared config, us-. |
ANTHROPIC_ | Documented | Vertex | Overrides the endpoint URL. |
ANTHROPIC_ | Documented | Vertex | The GCP project. Last choice after GCLOUD_ and GOOGLE_. |
ANTHROPIC_ | Documented | Foundry | Full base URL of the resource. Wins over the resource name. |
ANTHROPIC_ | Documented | Foundry | Resource name. Builds https://. |
ANTHROPIC_, ANTHROPIC_ | Documented | Claude Platform on AWS | Endpoint and workspace. |
ANTHROPIC_, _, _, _ | Undocumented | Claude Platform on Google Cloud | Endpoint, location, project, and workspace (full names start with ANTHROPIC_). |
CLAUDE_, CLAUDE_, CLAUDE_, CLAUDE_, CLAUDE_ | Documented | Each provider | Skip client-side auth, for a gateway that signs requests itself. |
CLAUDE_ | Undocumented | Claude Platform on Google Cloud | The same, for that provider. |
Provider Names
Each cell is the model name for that provider. A dash means the provider has none. A row is Documented when a docs page such as Amazon Bedrock or Model Configuration names the model, and Undocumented when only the program has the names.
id | Status | first_party | bedrock | vertex | foundry | mantle |
|---|---|---|---|---|---|---|
claude- | Undocumented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Undocumented | claude- | us. | claude- | claude- | - |
claude- | Undocumented | claude- | us. | claude- | claude- | - |
claude- | Undocumented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Undocumented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | - |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | us. | claude- | claude- | anthropic. |
claude- | Documented | claude- | - | - | - | - |
claude- | Undocumented | claude- | - | - | - | - |
Vertex Region Variables
Each model has an environment variable that sets its region on Vertex. Environment Variables in the official docs lists them. The Mythos models have none, because they have no Vertex name.
id | Status | Env var |
|---|---|---|
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
claude- | Documented | VERTEX_ |
Gateways
A gateway is a server between Claude Code and a model API.
Set ANTHROPIC_BASE_URL to point at it. That variable changes where requests go, not which model answers.
Pin the model IDs the gateway serves with the ANTHROPIC_DEFAULT_*_MODEL variables, and let the picker find them with CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1.
A gateway that does not serve claude-fable-5-1 rejects it, so the fable alias falls to claude-fable-5 on gateways.
Capabilities
Each catalog model has capability flags, for example effort, max_effort, adaptive_thinking, lean_prompt, per_turn_effort, and fast_mode.
They switch features on for a model. The full list with counts is on Models.
For pinned models on third-party providers, you can state the capabilities yourself with _SUPPORTED_CAPABILITIES (see above).
Example
Pin Opus and Sonnet on Amazon Bedrock, then start Claude Code on a 1M window of Opus.
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1
export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8'
export ANTHROPIC_DEFAULT_SONNET_MODEL='us.anthropic.claude-sonnet-4-5-20250929-v1:0'
claude --model opus[1m] --effort high
Limit what users can pick in managed settings:
{
"availableModels": ["sonnet", "claude-opus-4-8"],
"modelOverrides": {
"claude-opus-4-8": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-prod"
}
}
Related Pages
- Models
- Request and Cache
- The System Prompt
- Settings, Environment Variables, and CLI pages in Configure.