{"slug": "claude-sonnet-5-s-1m-context-when-big-context-pays-off-and-when-it-just-costs", "title": "Claude Sonnet 5's 1M Context: When Big Context Pays Off (and When It Just Costs More)", "summary": "Anthropic's Claude Sonnet 5 offers a 1-million-token context window at standard pricing with no long-context tax, but the cost of filling it remains significant. Whole-repo Q&A with caching costs about $1.17 for eight questions, while stuffing irrelevant context for a short task can overpay by 50x. The tokenizer change produces ~30% more tokens for the same text, inflating costs.", "body_md": "# Claude Sonnet 5's 1M Context: When Big Context Pays Off (and When It Just Costs More)\n\nA million-token window feels like a permission slip: stop pruning, dump the whole repo in, let the model sort it out.\n\nThe window is real. The permission slip isn’t. Sonnet 5 bills the full 1M context at one flat per-token rate — there’s no premium above 200K to punish you — but flat doesn’t mean free. Every token you park in context is a token you pay for, on every turn, whether the model needed it or not. The 1M window changes what you *can* do. It doesn’t change the arithmetic of what you *should*.\n\nThis is a field note, not a benchmark. It’s the token math for when big context earns its keep and when it’s just burn — with a decision rule at the end.\n\n## The 10-second answer\n\n**Whole-corpus reasoning + reuse → fill the window.** Large-repo Q&A, long-transcript synthesis, “compare everything to everything.” Cache the big prefix and it’s cheap.**Small, findable slice → retrieve it.** If the answer lives in three files, send three files. The window doesn’t make retrieval obsolete; the bill still rewards it.**One-shot short task → don’t stuff.** A 300K-token context sent to answer a two-line question pays full freight for tokens the model skims.\n\nThe one thing to internalize: **the 1M window is a capacity, not a strategy.**\n\n## The numbers (as of 2026-07-03)\n\nClaude Sonnet 5 (`claude-sonnet-5`\n\n), first-party Claude API. (Per-token rates are identical if you call the same model through Bedrock or OpenRouter — [only the wrapper around the bill changes](/blog/same-model-three-providers/).) Sonnet 5 is on **introductory pricing through August 31, 2026**, then it reverts:\n\n| Intro (through Aug 31 2026) | Standard (Sep 1 2026 on) | |\n|---|---|---|\n| Input | $2 / Mtok | $3 / Mtok |\n| Output | $10 / Mtok | $15 / Mtok |\n| Cache read (hit) | $0.20 / Mtok | $0.30 / Mtok |\n| 5-min cache write | $2.50 / Mtok | $3.75 / Mtok |\n\nTwo facts that matter more than the sticker price:\n\n**1. No long-context tax.** Sonnet 5 — along with Opus 4.6/4.7/4.8, Fable 5, and Sonnet 4.6 — includes the full 1M window at standard pricing. Anthropic’s own words: *“a 900k-token request is billed at the same per-token rate as a 9k-token request.”* If you remember the older 1M betas where tokens above 200K cost extra, that tier is gone here. Good news — but it removes the *only* mechanical reason big context was expensive, which is exactly why people now overfill it.\n\n**2. The tokenizer moved.** Sonnet 5 uses the newer tokenizer (introduced with Opus 4.7) that produces **~30% more tokens for the same text** than Sonnet 4.6 and earlier. Your list price per token dropped; your token count per task went up. That gap is where the headline number lies to you (more below).\n\n## Receipts: when 1M earns it\n\nConcrete cases, intro pricing, context cost only (question and answer tokens are small by comparison). A “300K-token repo” here means as Sonnet 5 counts it.\n\n**Case A — Whole-repo Q&A, done right.** A 300K-token codebase, eight questions in one session, repo cached as a prefix.\n\n- Cache the repo once: 300K × $2.50/Mtok =\n**$0.75** - Seven follow-up turns read the cached prefix: 7 × 300K × $0.20/Mtok =\n**$0.42** **Total ≈ $1.17** to interrogate a whole codebase eight different ways.\n\nSame eight questions with no caching, re-reading the repo each turn: 8 × 300K × $2/Mtok = **$4.80**. Caching saves ~75%, and $1.17 for whole-repo reasoning is where the big window pays for itself. The answer genuinely spans the corpus, and you reuse the prefix — both boxes checked.\n\n**Case B — Short task, fat context. Pure burn.** Same 300K repo dumped in “just in case,” one-shot: *“add a null check to parseConfig().”*\n\n- Uncached: 300K × $2/Mtok =\n**$0.60** for a task the model resolves from ~6K relevant tokens (**$0.012**). **50× overpay**, on a single shot — and you re-pay it every iteration you keep the fat context loaded.\n\n**Case C — Retrieve vs. stuff.** The answer lives in three files (~10K tokens) of the 300K repo.\n\n- Stuff the whole repo:\n**$0.60**/turn. - Retrieve the 10K slice:\n**$0.02**/turn —** 30× cheaper**, and usually*more*accurate, because you’re not burying the signal in 290K tokens of distractors.\n\nThe window makes it *easy* to skip retrieval. The bill is why you shouldn’t when the slice is small and stable.\n\n## The receipt that hides in the tokenizer\n\nHere’s the one that catches people migrating from Sonnet 4.6. Intro list price is **$2/Mtok** — a third under Sonnet 4.6’s $3. Looks like a free lunch. It isn’t, because Sonnet 5 emits ~30% more tokens for the same text.\n\nRead a document that counted **300K tokens on Sonnet 4.6**. On Sonnet 5 it’s ~** 390K tokens**.\n\n| Tokens for the same text | One-shot read cost | |\n|---|---|---|\n| Sonnet 4.6 ($3/Mtok) | 300K | $0.90 |\n| Sonnet 5, intro ($2/Mtok) | ~390K | $0.78 (~13% cheaper) |\n| Sonnet 5, standard Sep 1 ($3/Mtok) | ~390K | $1.17 (~30% more) |\n\nDuring the promo you come out a little ahead. After September 1, “same $3/Mtok as Sonnet 4.6” quietly means **~30% more per equivalent task**, because the token count moved even though the per-token price didn’t. Don’t trust a word-count or a Sonnet-4.6 baseline — run `count_tokens`\n\non *your* text with `claude-sonnet-5`\n\nbefore you budget.\n\n## Cost levers (work regardless of window size)\n\nThese apply no matter how big your context is:\n\n**Prompt caching is the whole game for big prefixes.** Cache reads cost 0.1× base input ($0.20/Mtok intro). A stable 300K prefix reused across a session goes from dollars to cents. If your long context repeats, not caching it is the most expensive mistake on this page.**Retrieve the slice when the slice is small and findable.** grep, embeddings, a file list — anything that turns 300K tokens into 10K. Cheaper*and*sharper.**Batch the async work.** 50% off input and output for non-interactive jobs (bulk summarization, tagging, offline analysis): intro batch is $1/$5 per Mtok.**Measure effective tokens, not list price.** The tokenizer shift means per-token price and per-task cost now move independently.`count_tokens`\n\non your real prompts is the only number that pays your bill.\n\n## The decision rule\n\nNo flowchart needed:\n\n**Fill the 1M window when** the answer genuinely lives across the whole corpus (whole-repo reasoning, long-transcript synthesis)**and** you’ll reuse the prefix enough to cache it. That’s when big context earns its cost.**Retrieve the slice when** the relevant information is a small, findable subset. The window tempts you to skip this; the per-turn bill says don’t.**Never stuff for a one-shot short task.** You pay full freight for tokens the model skims, once per iteration.**Re-measure on Sonnet 5’s tokenizer**, and re-check the math after** September 1, 2026**, when intro pricing ends and per-task cost jumps.\n\n**The one-line rule: a 1M window is capacity, not a plan — fill it when the answer spans the whole corpus and you’ll reuse the prefix; otherwise retrieve the slice and cache the rest. No long-context premium doesn’t make the tokens free.**\n\n## Sources\n\nVerify against the official pages before budgeting — pricing and promo terms change.\n\n- Anthropic pricing (model rates, Sonnet 5 intro terms, long-context pricing, tokenizer note):\n[https://platform.claude.com/docs/en/about-claude/pricing](https://platform.claude.com/docs/en/about-claude/pricing) - Claude models overview (Sonnet 5 context window, IDs, effort default):\n[https://platform.claude.com/docs/en/about-claude/models/overview](https://platform.claude.com/docs/en/about-claude/models/overview) - Prompt caching (multipliers, cache-read economics):\n[https://platform.claude.com/docs/en/build-with-claude/prompt-caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) - Token counting (\n`count_tokens`\n\nfor effective per-task cost):[https://platform.claude.com/docs/en/build-with-claude/token-counting](https://platform.claude.com/docs/en/build-with-claude/token-counting)\n\n*Prices and the introductory-pricing end date verified against Anthropic’s live pricing and models docs on 2026-07-03. Introductory Sonnet 5 pricing ends August 31, 2026; standard rates ($3 / $15 per Mtok) apply from September 1, 2026. Confirm current rates before committing.*", "url": "https://wpnews.pro/news/claude-sonnet-5-s-1m-context-when-big-context-pays-off-and-when-it-just-costs", "canonical_source": "https://outofcontext.dev/blog/1m-context-sonnet-5-receipts/", "published_at": "2026-07-03 00:00:00+00:00", "updated_at": "2026-07-07 05:05:39.382997+00:00", "lang": "en", "topics": ["large-language-models", "ai-products", "ai-tools", "ai-infrastructure"], "entities": ["Anthropic", "Claude Sonnet 5", "Opus 4.7", "Bedrock", "OpenRouter"], "alternates": {"html": "https://wpnews.pro/news/claude-sonnet-5-s-1m-context-when-big-context-pays-off-and-when-it-just-costs", "markdown": "https://wpnews.pro/news/claude-sonnet-5-s-1m-context-when-big-context-pays-off-and-when-it-just-costs.md", "text": "https://wpnews.pro/news/claude-sonnet-5-s-1m-context-when-big-context-pays-off-and-when-it-just-costs.txt", "jsonld": "https://wpnews.pro/news/claude-sonnet-5-s-1m-context-when-big-context-pays-off-and-when-it-just-costs.jsonld"}}