Compare Claude Sonnet 4 and Claude Sonnet 4.6: Same Price, 300K Context Upgrade
Claude Sonnet 4 vs Claude Sonnet 4.6: which should I use?
Move a Claude Sonnet 4 estate to 4.6 only after cumulative contract changes, persisted state, and every production host are inventoried and tested. Use a staged route when an intermediate dependency is unresolved and keep a rollback target. Verified 2026-09-02; opaque state and host gaps remain Unavailable.
Where can you find price, speed, and task evidence for Claude Sonnet 4 and Claude Sonnet 4.6?
Which tasks fit Claude Sonnet 4 and Claude Sonnet 4.6?
Best-fit task signals from the published model strengths; this is not a substitute for a controlled benchmark.
| Fact | Claude Sonnet 4 | Claude Sonnet 4.6 |
|---|---|---|
| Best fit | Legacy 2025 Sonnet workflows superseded by Sonnet 4.6. | Enterprise workloads that need Opus-adjacent quality at Sonnet pricing. |
| Reasoning mode | Unavailable | Available |
What does a Coding Agent workload cost with Claude Sonnet 4 and Claude Sonnet 4.6?
Modeled for Coding Agent: 20,000 input + 2,000 output tokens per task, 1 turn. This is a workload model, not a provider quote.
| Fact | Claude Sonnet 4 | Claude Sonnet 4.6 |
|---|---|---|
| Coding Agent / task | $0.09 (modeled) | $0.09 (modeled) |
| Input / output rate | $3.00 / $15.00 per M | $3.00 / $15.00 per M |
How fast are Claude Sonnet 4 and Claude Sonnet 4.6?
Only non-estimated benchmark results are shown as measured.
| Fact | Claude Sonnet 4 | Claude Sonnet 4.6 |
|---|---|---|
| Measured throughput | Unavailable | 76 tokens/s |
| Time to first token | Unavailable | 360 ms |
How compatible are Claude Sonnet 4 and Claude Sonnet 4.6 with APIs?
Provider-level wire-format and SDK facts; model-specific parameter differences may still apply.
| Fact | Claude Sonnet 4 | Claude Sonnet 4.6 |
|---|---|---|
| OpenAI SDK | Not drop-in | Not drop-in |
| Request shape | Messages API — system prompt is a top-level field, not a message role, and max_tokens is required on every call. | Messages API — system prompt is a top-level field, not a message role, and max_tokens is required on every call. |
| Streaming | SSE (Anthropic content-block events) | SSE (Anthropic content-block events) |
What are the privacy and retention policies for Claude Sonnet 4 and Claude Sonnet 4.6?
Provider policy and residency facts from the verified provider registry. A missing retention policy is not treated as a guarantee.
| Fact | Claude Sonnet 4 | Claude Sonnet 4.6 |
|---|---|---|
| Provider says API data trains models | No | No |
| Published retention period | Unavailable | Unavailable |
| Data residency | Unavailable | Unavailable |
How much effort does it take to migrate between Claude Sonnet 4 and Claude Sonnet 4.6?
Direction is from each displayed model to the other. Effort is derived from provider compatibility and published parameter maps.
| Fact | Claude Sonnet 4 | Claude Sonnet 4.6 |
|---|---|---|
| Move Claude Sonnet 4 → Claude Sonnet 4.6 | drop-in; 0 breaking parameter differences | Target: Claude Sonnet 4.6 |
| Move Claude Sonnet 4.6 → Claude Sonnet 4 | Source: Claude Sonnet 4.6 | drop-in; 0 breaking parameter differences |
| Why | Same provider; only the model identifier changes. | Same provider; only the model identifier changes. |
Batch 54 · exact pair cutover and operating-tier contributions. Surface verification: 2026-09-02. These exactly three boards are server-rendered from frozen scenario fixtures; assumptions and unavailable joins are not observations.
Exact pair boundary: Anthropic; two-generation estate; direct and staged 4→4.5→4.6 hops must be traceable. Requested models are claude-sonnet-4 and claude-sonnet-4-6. Provider, rate, pricing, and task pages remain fact owners.
Two-generation cumulative contract ledger
Frozen Batch 54 scenario board. Formula / deterministic rule: direct_jump = every 4→4.6 semantic mapped ∧ intermediate dependencies traceable; unresolved hop => staged or blocked Boundary: Exact Sonnet 4 estate to 4.6 readiness; Route 3 owns the adjacent 4.5 patch and lifecycle pages own dates.
| Frozen scenario / field ID | Pair, host, surface, and evidence fields | Result | State |
|---|---|---|---|
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r1text chat | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; versions=4→4.6; intermediate=4.5 trace required; prompt/config hash=estate-contract-001; response fields=required; direct/staged adapter=required; evidence=2026-09-02 | Unavailable — intermediate response mapping is not fully traceable | BLOCKED — hop evidence |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r2image analysis | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; versions=4→4.6; artifact=img-estate-002; image artifact hash=img-estate-002; media fields=required; preprocessing=none/declared; evidence=2026-09-02 | Unavailable — cumulative media contract is not joined | UNAVAILABLE — media hop |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r3extended reasoning | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; versions=4→4.6; thinking=extended; config hash=estate-contract-003; reasoning usage=required; intermediate control change=required; evidence=2026-09-02 | Unavailable — intermediate reasoning-control evidence is absent | UNAVAILABLE — reasoning hop |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r4strict JSON | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; versions=4→4.6; schema=strict-004; schema/parser hashes=required; refusal/error fields=required; result hash=missing; evidence=2026-09-02 | Unavailable — cumulative parser behavior is untested | UNAVAILABLE — schema hop |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r5parallel tools | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; versions=4→4.6; tools=parallel-005; call/result IDs and order=required; side_effect=read-only; adapter=required; evidence=2026-09-02 | Unavailable — tool ordering across the intermediate hop is unknown | BLOCKED — tool dependency |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r6computer use | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; versions=4→4.6; preview state=dated; screenshot/action hashes=required; host/version=exact; human approval=required; evidence=2026-09-02 | Require a staged, human-approved probe; do not infer direct-jump support. | BLOCKED — human gate |
First-party provenance: Anthropic Messages API; verification date 2026-09-02. Missing or conflicting joins fail closed.
Persisted-state portability receipt
Frozen Batch 54 scenario board. Formula / deterministic rule: portable = artifact hash + originating ID/host + tokenizer/schema/tool assumptions + target validation; opaque state => invalidate/transform Boundary: Persisted state is not version-neutral; this board does not claim compatibility for unjoined caches, prompts, or tool state.
| Frozen scenario / field ID | Pair, host, surface, and evidence fields | Result | State |
|---|---|---|---|
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r1stored conversation | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; state=conversation-001; origin=Sonnet 4; state hash=conversation-001; origin host/ID=required; target validation=required; replay=required; evidence=2026-09-02 | Unavailable — target replay validation is absent | UNAVAILABLE — conversation state |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r2cached prefix | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; state=cache-002; origin=Sonnet 4; cache hash=cache-002; tokenizer/config hashes=required; namespace=versioned; invalidation=required; evidence=2026-09-02 | Invalidate or re-key unless exact tokenizer and cache semantics validate. | CONDITIONAL — cache re-key |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r3saved system prompt | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; state=prompt-003; origin=Sonnet 4; prompt hash=prompt-003; instruction layers=required; target result hash=missing; evidence=2026-09-02 | Unavailable — target behavior has not been compared | UNAVAILABLE — prompt replay |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r4serialized tool result | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; state=tool-result-004; schema=versioned; artifact/schema hash=tool-result-004; tool ID lineage=required; parser version=required; evidence=2026-09-02 | Unavailable — tool-result schema portability is not joined | UNAVAILABLE — tool artifact |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r5pending tool call | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; state=pending-005; origin=Sonnet 4; call ID/arguments hash=required; idempotency=required; side_effect=unknown; target parser=required; evidence=2026-09-02 | Do not execute a pending call until arguments, schema, and side-effect state validate. | BLOCKED — pending effect |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r6replayed batch | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; state=batch-006; origin=Sonnet 4; batch/job/result hashes=required; ordering=required; target validation=required; replay policy=declared; evidence=2026-09-02 | Unavailable — batch result identity and ordering are not validated | UNAVAILABLE — batch replay |
First-party provenance: Anthropic Messages API; verification date 2026-09-02. Missing or conflicting joins fail closed.
Retirement-readiness estate board
Frozen Batch 54 scenario board. Formula / deterministic rule: ready = inventory + lifecycle evidence + 4.6 canary + rollback availability; no fallback + unresolved dependency => blocked Boundary: This is an exact estate readiness board, not the retirement chronology owner or a provider-wide availability claim.
| Frozen scenario / field ID | Pair, host, surface, and evidence fields | Result | State |
|---|---|---|---|
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r1active direct calls | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; inventory=estate-001; traffic share=required; lifecycle evidence=dated; 4.6 canary coverage=required; rollback=required; evidence=2026-09-02 | Unavailable — traffic inventory and canary coverage are missing | HOLD — inventory gap |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r2Bedrock deployment | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=bedrock-runtime.{region}.amazonaws.com / bedrock-runtime.{region}.amazonaws.com; Bedrock Messages / Bedrock Messages; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; inventory=estate-002; region=required; deployment/profile IDs=required; region=required; lifecycle=dated; rollback artifact=required; evidence=2026-09-02 | Unavailable — region-qualified target and rollback are not joined | BLOCKED — Bedrock dependency |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r3Vertex deployment | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=aiplatform.googleapis.com / aiplatform.googleapis.com; Vertex Messages / Vertex Messages; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; inventory=estate-003; region=required; endpoint IDs=required; region=required; target contract=required; canary=missing; evidence=2026-09-02 | Unavailable — Vertex target canary coverage is absent | BLOCKED — Vertex dependency |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r4gateway alias | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=shared gateway / shared gateway; gateway / gateway; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; inventory=estate-004; alias=latest; requested alias=latest; effective ID=unknown; host/region=unknown; pin action=required; evidence=2026-09-02 | Replace the floating alias with an exact, auditable ID before migration. | BLOCKED — alias identity |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r5offline replay | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; inventory=estate-005; prompt/artifact/result hashes=required; target replay=required; judge denominator=required; evidence=2026-09-02 | Unavailable — offline replay evidence is not available | HOLD — replay gap |
batch54-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r6no-fallback service | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider/host/surface=api.anthropic.com / api.anthropic.com; Messages API / Messages API; requested IDs=claude-sonnet-4,claude-sonnet-4-6; effective IDs=claude-sonnet-4,claude-sonnet-4-6; inventory=estate-006; fallback=none; lifecycle=dated; unresolved dependency=present; terminal owner=required; evidence=2026-09-02 | Do not cut over without a terminal human/service action when Sonnet 4 can no longer be fallback. | BLOCKED — terminal action required |
First-party provenance: Anthropic Claude model documentation; verification date 2026-09-02. Missing or conflicting joins fail closed.
Method and limitations: formulas are deterministic; assumptions are labeled; no missing provider, host, account, region, realm, cluster, alias, snapshot, version, artifact, effort, tool, modality, benchmark, workload, rate-period, timestamp, or result is transferred. Run the claude-sonnet-4-vs-claude-sonnet-4-6 Batch 54 scenario →
Batch 69 · exact-pair decision contributions · verified 2026-09-08
Exact pair boundary: Anthropic; same provider, generational replacement, identical $3/$15 token rates, and 200K vs 300K context must join. Requested models are claude-sonnet-4 and claude-sonnet-4-6. Provider, rate, pricing, and task pages remain fact owners.
Zero-price-delta migration economic ledger and parity check
Frozen Batch 69 scenario board. Formula / deterministic rule: cost_delta = sonnet_4_6_spend - sonnet_4_spend; identical $3.00/$15.00 per 1M tokens Boundary: Owns zero-price-delta migration modeling and workload budget parity.
| Frozen scenario / field ID | Pair, identity, host, surface, and evidence fields | Result | State |
|---|---|---|---|
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r110K coding agent tool calls | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=10K coding agent tool calls; workload; prompt tokens; completion tokens; Sonnet 4 spend; Sonnet 4.6 spend; budget delta; upgrade recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — 10K coding agent tool calls is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r250K automated PR code reviews | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=50K automated PR code reviews; workload; prompt tokens; completion tokens; Sonnet 4 spend; Sonnet 4.6 spend; budget delta; upgrade recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — 50K automated PR code reviews is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r3100K structured data extractions | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=100K structured data extractions; workload; prompt tokens; completion tokens; Sonnet 4 spend; Sonnet 4.6 spend; budget delta; upgrade recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — 100K structured data extractions is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r4prompt caching active (90% read discount both) | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=prompt caching active (90% read discount both); workload; prompt tokens; completion tokens; Sonnet 4 spend; Sonnet 4.6 spend; budget delta; upgrade recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — prompt caching active (90% read discount both) is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r5batch processing active (50% both) | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=batch processing active (50% both); workload; prompt tokens; completion tokens; Sonnet 4 spend; Sonnet 4.6 spend; budget delta; upgrade recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — batch processing active (50% both) is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m1-r6unresolved pricing currency | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=unresolved pricing currency; workload; prompt tokens; completion tokens; Sonnet 4 spend; Sonnet 4.6 spend; budget delta; upgrade recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — unresolved pricing currency has no matched, dated bilateral observation. | FAIL CLOSED — manual, probe, or source evidence required |
First-party provenance: Anthropic API pricing; verification date 2026-09-08. Missing or conflicting joins fail closed.
Context window expansion (200K to 300K) capability gate
Frozen Batch 69 scenario board. Formula / deterministic rule: eligible = (context <= 200K ? Both : (context <= 300K ? Sonnet4_6 : Excluded)) Boundary: Owns context scaling and capability gating for large monorepo codebases.
| Frozen scenario / field ID | Pair, identity, host, surface, and evidence fields | Result | State |
|---|---|---|---|
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r1standard module analysis (50K tokens) | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=standard module analysis (50K tokens); context size; Sonnet 4 eligible; Sonnet 4.6 eligible; Sonnet 4 cost; Sonnet 4.6 cost; context gate verdict; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — standard module analysis (50K tokens) is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r2large monolithic application (180K tokens) | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=large monolithic application (180K tokens); context size; Sonnet 4 eligible; Sonnet 4.6 eligible; Sonnet 4 cost; Sonnet 4.6 cost; context gate verdict; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — large monolithic application (180K tokens) is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r3maximum Sonnet 4 context (200K boundary) | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=maximum Sonnet 4 context (200K boundary); context size; Sonnet 4 eligible; Sonnet 4.6 eligible; Sonnet 4 cost; Sonnet 4.6 cost; context gate verdict; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — maximum Sonnet 4 context (200K boundary) is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r4expanded codebase index (275K tokens) | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=expanded codebase index (275K tokens); context size; Sonnet 4 eligible; Sonnet 4.6 eligible; Sonnet 4 cost; Sonnet 4.6 cost; context gate verdict; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — expanded codebase index (275K tokens) is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r5300K full saturation audit | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=300K full saturation audit; context size; Sonnet 4 eligible; Sonnet 4.6 eligible; Sonnet 4 cost; Sonnet 4.6 cost; context gate verdict; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — 300K full saturation audit is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m2-r6unsupported archive payload format | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=unsupported archive payload format; context size; Sonnet 4 eligible; Sonnet 4.6 eligible; Sonnet 4 cost; Sonnet 4.6 cost; context gate verdict; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — unsupported archive payload format has no matched, dated bilateral observation. | FAIL CLOSED — manual, probe, or source evidence required |
First-party provenance: Anthropic Claude model documentation; verification date 2026-09-08. Missing or conflicting joins fail closed.
Agent tool call reliability and defect reduction ROI
Frozen Batch 69 scenario board. Formula / deterministic rule: roi = prevented_defects_value - switching_overhead; higher precision justifies cutover Boundary: Owns defect reduction modeling and agent reliability metrics.
| Frozen scenario / field ID | Pair, identity, host, surface, and evidence fields | Result | State |
|---|---|---|---|
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r1autonomous multi-file refactoring | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=autonomous multi-file refactoring; engineering task; Sonnet 4 defect rate; Sonnet 4.6 defect rate; defect reduction; economic ROI; migration recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — autonomous multi-file refactoring is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r2test suite generation without hallucinated mocks | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=test suite generation without hallucinated mocks; engineering task; Sonnet 4 defect rate; Sonnet 4.6 defect rate; defect reduction; economic ROI; migration recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — test suite generation without hallucinated mocks is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r3complex JSON schema compliance | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=complex JSON schema compliance; engineering task; Sonnet 4 defect rate; Sonnet 4.6 defect rate; defect reduction; economic ROI; migration recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — complex JSON schema compliance is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r4external API tool call retry reduction | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=external API tool call retry reduction; engineering task; Sonnet 4 defect rate; Sonnet 4.6 defect rate; defect reduction; economic ROI; migration recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — external API tool call retry reduction is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r5agent loop runaway circuit breaker | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=agent loop runaway circuit breaker; engineering task; Sonnet 4 defect rate; Sonnet 4.6 defect rate; defect reduction; economic ROI; migration recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — agent loop runaway circuit breaker is a frozen fixture pending exact identity, configuration, and denominator joins. | UNTESTED — assumption cannot establish a verdict |
batch69-claude-sonnet-4-vs-claude-sonnet-4-6-m3-r6unresolved error penalty metric | pair=claude-sonnet-4 vs claude-sonnet-4-6; provider=Anthropic; hostA=api.anthropic.com; hostB=api.anthropic.com; surfaceA=Anthropic Messages API; surfaceB=Anthropic Messages API; requested/effective IDs=claude-sonnet-4,claude-sonnet-4-6; scenario=unresolved error penalty metric; engineering task; Sonnet 4 defect rate; Sonnet 4.6 defect rate; defect reduction; economic ROI; migration recommendation; prompt/config/input/output/result/cache/checkpoint/artifact hashes=required; evidence=2026-09-08; measurement versus assumption=explicit | Unavailable — unresolved error penalty metric has no matched, dated bilateral observation. | FAIL CLOSED — manual, probe, or source evidence required |
First-party provenance: Anthropic Claude documentation; verification date 2026-09-08. Missing or conflicting joins fail closed.
Method and limitations: formulas are deterministic; observed and assumed inputs are labeled; no missing provider, host, account, region, realm, alias, snapshot, revision, weight, artifact, control, tool, modality, workload, rate-period, timestamp, or result is transferred. Run the claude-sonnet-4-vs-claude-sonnet-4-6 Batch 69 scenario →
How do Claude Sonnet 4 and Claude Sonnet 4.6 compare on specs?
| Claude Sonnet 4 | Claude Sonnet 4.6 | |
|---|---|---|
| Price (input) | $3.00/M | $3.00/M |
| Price (output) | $15.00/M | $15.00/M |
| Blended price | $6.00/M | $6.00/M |
| Context window | 200,000 tokens | 300,000 tokens ✓ |
| Max output | 32,000 tokens | 64,000 tokens ✓ |
| Modalities | text, vision | text, vision |
| Reasoning mode | No | Yes |
| Released | 2025-02 | 2026-03 |
| Speed | Not measured | 76 t/s |
How much do Claude Sonnet 4 and Claude Sonnet 4.6 cost at scale?
| Tokens / month | Claude Sonnet 4 | Claude Sonnet 4.6 | Delta |
|---|---|---|---|
| 1,000,000 | $6.00 | $6.00 | $0.0000 (1.0×) |
| 10,000,000 | $60.00 | $60.00 | $0.0000 (1.0×) |
| 100,000,000 | $600.00 | $600.00 | $0.0000 (1.0×) |
Choose Claude Sonnet 4 if…
- ✓Former Anthropic standard for reasoning
- ✓Strong coding and analysis
- ✓Vision input
- ✓Legacy 2025 Sonnet workflows superseded by Sonnet 4.6.
Choose Claude Sonnet 4.6 if…
- ✓Best intelligence-per-dollar in the Claude lineup
- ✓Fast enough for interactive coding agents
- ✓Reliable structured output
- ✓Enterprise workloads that need Opus-adjacent quality at Sonnet pricing.
Run this exact matchup right now
Send the same prompt to Claude Sonnet 4 and Claude Sonnet 4.6 side by side and see the outputs yourself.
Try Claude Sonnet 4 vs Claude Sonnet 4.6 FreeWhat are common questions about Claude Sonnet 4 and Claude Sonnet 4.6?
Is Claude Sonnet 4 cheaper than Claude Sonnet 4.6?
Claude Sonnet 4 is cheaper, at $6.00 per million blended tokens vs $6.00 for Claude Sonnet 4.6.
Which has the bigger context window, Claude Sonnet 4 or Claude Sonnet 4.6?
Claude Sonnet 4.6 has the larger context window: 300,000 tokens vs 200,000.
Can Claude Sonnet 4 replace Claude Sonnet 4.6 for coding?
Both are viable for coding. Former Anthropic standard for reasoning (Claude Sonnet 4) vs Best intelligence-per-dollar in the Claude lineup (Claude Sonnet 4.6) — pick based on which strength matters more for your workload.
Neither of these? See Claude Sonnet 4.6 alternatives.
What related comparisons help choose between Claude Sonnet 4 and Claude Sonnet 4.6?
Pricing verified 2026-04-06. Specs verified 2026-08-14.
