toksum · migration report

GPT-5.5 → Claude for a coding assistant. Worth the migration?

Dev-tools company · agentic coding assistant

toksum.dev Verified 2026-05-27 SAMPLE · FREE
Verdict GO — if cost-driven

Move to Claude Sonnet 4.6 with prompt caching.

Sonnet 4.6 fits this workload; Opus 4.7 saves only 9% — that is a capability choice, not a cost one.

$304,800 saved per year · 58% lower · budget the port
Volume 1,000,000 req/mo
Input 4,000 tok · 2,000 cacheable
Output 800 tok
Current model GPT-5.5 · no cache

Every option, costed

OptionMonthlyAnnualSavings vs currentMigration effort
GPT-5.5 — no caching $44,000 $528,000 — (baseline)
GPT-5.5 + caching $35,000 $420,000 $108,000/yr · 20% Same provider; add caching
Claude Opus 4.7 $40,000 $480,000 $48,000/yr · 9% Cross-provider port
Claude Sonnet 4.6 — no caching $24,000 $288,000 $240,000/yr · 45% Cross-provider port
Claude Sonnet 4.6 + caching $18,600 $223,200 $304,800/yr · 58% Port + cache wiring

List-price arithmetic on the stated workload — a planning model, not a guaranteed invoice.

The reasoning behind the call

Start with where the $44,000/month actually goes. On GPT-5.5 each request bills 4,000 input tokens at $5.00/M (about $0.020) plus 800 output tokens at $30.00/M (about $0.024) — so output is more than half the cost despite being a fifth of the tokens. That asymmetry is the whole story: GPT-5.5's output rate is the single most expensive line you are paying, and a coding assistant emitting 800 tokens of diffs and explanations per call hits it a million times a month. Any option that doesn't bring down the output rate is rearranging deck chairs.

That is exactly why GPT-5.5 + caching only reaches $420k (20% off). Caching discounts the 2,000 cacheable input tokens — the system prompt and tool schema you resend every call — but it does nothing to the $0.024 output line, and OpenAI's cache reads still aren't free. You bank the saving with zero cross-provider risk, which is why it belongs in the plan as the honest baseline you measure everything else against. But 20% is the ceiling of what staying put can buy you here, because input was never the expensive half.

Claude Sonnet 4.6 + caching ($223.2k, 58% off) wins because it attacks both halves at once. Output drops from GPT-5.5's $30/M to $15/M, and the reused 2,000-token prefix moves to cache reads at $0.30/M after a one-time write. Per request that's roughly $0.006 fresh input + $0.0006 cached read + $0.012 output ≈ $0.0186 — and notice that the entire Sonnet request costs less than GPT-5.5's output alone ($0.024). This is also the textbook case for prompt caching: a large, stable system-and-tools prefix reused across a million calls, where the write premium amortizes almost immediately. Even against the best you can do on OpenAI — GPT-5.5 + caching — Sonnet still saves about $196,800/yr (47%), so the cross-provider port is paying for far more than the in-family tweak ever could. (See when caching actually pays.)

Two cheaper-looking framings deserve a flag. First, Opus 4.7 at $480k saves only 9% — its $25/M output sits much closer to GPT-5.5 than Sonnet's $15/M does, so on this workload Opus is a capability decision, not a cost one. If you're considering Opus, justify it on harder agentic tasks, not on the bill. Second, Sonnet without caching ($288k, 45%) is not the recommendation even though it's simpler: you'd be leaving roughly $64,800/yr on the table by skipping cache_control on a prefix that is tailor-made for it. The marginal effort of one cache header is the cheapest 13 points of savings on the board.

The work that makes the recommended number real is the port, and it's modest but not zero: move the system prompt to Claude's top-level system parameter, switch your delimiters to XML-style tags, translate the tool schema (the SDK wrappers absorb most of this), re-check max_tokens because Claude tokenizes English at roughly 0.8× the GPT count so your old caps may be loose, and add cache_control on the stable prefix. Budget it as a real sprint item, not a config flip. See the OpenAI→Anthropic porting guide for the mechanics.

The honest caveat: these are list-price calculations, and we make no quality-equivalence claim. Your prompts were tuned against GPT-5.5's behavior, and a coding assistant's value lives in subtle places — tool-call reliability, instruction-following on long diffs, refusal patterns — that a pricing table cannot score. Before cutover, run your own evals on a few hundred real production traces, not curated examples, and compare Sonnet 4.6 against your current outputs on the tasks that actually matter to your users. The $304,800/yr is the prize; the eval is the price of admission, and it's the step we'd refuse to skip. Plug your real volumes into the migration simulator to re-run this on your exact numbers, and compare with the RAG startup and batch classification reports where the math points the other way.

Recommendation

If cost is the driver, Claude Sonnet 4.6 + caching wins — 58% under the GPT-5.5 baseline, and the large stable system prompt is ideal for caching. Even versus GPT-5.5-with-caching it still saves $196,800/yr (47%). Opus 4.7 saves just 9%, so choose it for capability, not price.

Do this first — zero-risk

Turn on caching on GPT-5.5 first — $108,000/yr (20%) with zero cross-provider risk, and it sets the honest baseline you measure the Claude move against.

Migration effort

OpenAI→Anthropic port: move the system prompt to the top-level system parameter, switch to XML delimiters, translate the tool schema (SDK wrappers abstract most of it), re-check max_tokens (Claude ≈0.8× GPT tokens), and add cache_control on the system prompt. Sonnet/Opus offer 1M context vs GPT-5.5's 400K.

Before you switch

Run your own eval before cutover — Claude's coding/agentic behavior and your GPT-tuned prompts can move quality in either direction. We make no quality-equivalence claim; validate on your real production distribution.