Claude Opus 5.5 and Sonnet 5.5: Cheaper Data Prompts
Claude Opus 5.5 costs $4/$20 and Sonnet 5.5 $2/$10 per 1M tokens, with cheaper cache reads. How to send tabular context to Claude 5.5 with TOON and caching.
Claude Opus 5.5 costs $4 / $20 per 1M input and output tokens and Claude Sonnet 5.5 costs $2 / $10, prices as of October 2026. Opus 5.5 cache hits cost only $0.20 per 1M tokens. For data-heavy prompts, the cheapest setup is to send tables as TOON, put them in a cached prefix, and ask for JSON back with structured outputs.
What do Claude Opus 5.5 and Sonnet 5.5 cost?
These are standard prices in USD per 1M tokens from Anthropic's pricing page, checked on October 1, 2026.
| Model | Input | 5-min cache write | 1-hour cache write | Cache hit | Output | Batch in / out |
|---|---|---|---|---|---|---|
| Opus 5.5 | $4 | $5 | $8 | $0.20 | $20 | $2 / $10 |
| Sonnet 5.5 | $2 | $2.50 | $4 | $0.20 | $10 | $1 / $5 |
| Haiku 4.5 | $1 | $1.25 | $2 | $0.10 | $5 | $0.50 / $2.50 |
| Opus 5 (legacy) | $5 | $6.25 | $10 | $0.50 | $25 | $2.50 / $12.50 |
| Fable 5.1 | $10 | $12.50 | $20 | $0.25 | $50 | $5 / $25 |
Opus 5.5 is cheaper than the Opus 5 it replaces, and its cache hits are priced at 0.05x input instead of the usual 0.1x. Sonnet 5.5 matches Sonnet 5, whose $2 / $10 launch price became permanent. Anthropic's footnote says the planned rise to $3 / $15 "will not occur".
What else changed in Claude 5.5 for data prompts?
- Model IDs:
claude-opus-5-5andclaude-sonnet-5-5. Both have a 1M-token context window and 128K max output, per the models overview, which tells developers to start with Opus 5.5 "for most workloads". - Long context at flat price: Claude 4.6 and later bill the full 1M window at standard rates, so a 900K-token request costs the same per token as a 9K one.
- Smaller tool overhead: the hidden tool-use system prompt is 286 tokens on Opus 5.5 and Sonnet 5.5, down from 675 on Opus 4.7.
- A hungrier tokenizer: Claude 4.7 and later use a tokenizer that "produces approximately 30% more tokens for the same text". The models page puts 1M tokens at roughly 555K words, down from about 750K on older models.
That last point is why data format matters more on Claude 5.5 than the price table suggests. Our post on Claude's new tokenizer covers how to measure the difference on your own prompts.
How should you format tabular context for Claude 5.5?
Pretty-printed JSON repeats every key on every record and spends tokens on braces, quotes and indentation. TOON writes the keys once in a header. Here are three orders as JSON:
{
"orders": [
{
"id": "ord_1042",
"customer": "Acme GmbH",
"country": "DE",
"status": "shipped",
"total": 1249.5
},
{
"id": "ord_1043",
"customer": "Northwind",
"country": "US",
"status": "pending",
"total": 310
},
{
"id": "ord_1044",
"customer": "Globex",
"country": "UK",
"status": "refunded",
"total": 89.99
}
]
}And the same data encoded with @toon-format/toon 4.1.1:
orders[3]{id,customer,country,status,total}:
ord_1042,Acme GmbH,DE,shipped,1249.5
ord_1043,Northwind,US,pending,310
ord_1044,Globex,UK,refunded,89.99The [3] length marker lets the model check that it saw every row. TOON v4 also handles records with a small nested object through nested field groups, so a support-ticket table with an embedded customer stays tabular:
tickets[2]{id,customer{name,plan},priority,ageHours}:
501,Ada,pro,high,3
502,Lin,free,low,27See TOON nested field groups for the rules. On the current official benchmark (spec v4.1, 5,856 calls), TOON used 42.6% fewer tokens than JSON with 72.2% accuracy versus 71.4%. The benchmark counts tokens with OpenAI's o200k_base tokenizer, not Claude's, so measure your own savings with Claude's token-counting endpoint.
How do TOON and prompt caching stack on Claude?
They multiply. TOON shrinks the block, and caching makes every repeat of that block cheap. Put the stable data first, mark it with cache_control, and keep the question at the end:
import Anthropic from "@anthropic-ai/sdk";
import { encode } from "@toon-format/toon";
const client = new Anthropic();
const context = encode({ orders }); // same input always gives the same bytes
const response = await client.messages.create({
model: "claude-opus-5-5",
max_tokens: 2048,
system: [
{
type: "text",
text: "The order data below is TOON: the header lists the fields once, then one record per line.",
},
{ type: "text", text: context, cache_control: { type: "ephemeral" } },
],
messages: [{ role: "user", content: "Which orders are refunded, and what is their combined total?" }],
});
console.log(response.usage); // check cache_creation_input_tokens and cache_read_input_tokensHere is the arithmetic for a 200K-token JSON dataset on Opus 5.5. Writing it to the 5-minute cache costs $1.00, and each later read costs $0.04 instead of $0.80 uncached. If TOON cuts the dataset by about 40% to 120K tokens, the write drops to $0.60 and each read to $0.024. On a busy agent loop that reads the same context hundreds of times an hour, both savings add up. To estimate your own reduction instead of assuming 40%, paste a sample into the TOON token calculator. Encoding has to be deterministic, because a single changed byte in the prefix is a cache miss. Our TOON and prompt caching guide covers ordering and key stability.
Should Claude output TOON?
No. Use TOON for input and JSON for output. Claude structured outputs are generally available: you pass a JSON Schema through output_config.format, or set strict: true on a tool, and the response is guaranteed to match. There are limits. Recursive schemas and numeric or string-length constraints are not supported, and additionalProperties must be false. Within those limits, you get validated JSON with no parsing retries, which matters more than a few saved output tokens.
When is TOON not worth it on Claude?
- Small payloads. A single config object gains little, and the format note costs tokens.
- Deeply nested or irregular data. The TOON README says compact JSON often wins here.
- Long multi-turn agents. arXiv 2605.29676 found TOON saved up to 18% of tokens at about a 9-point accuracy cost on open-weight models in agentic benchmarks, and called it "not safe as a default in multi-turn agentic systems".
- Haiku 4.5 workloads with a deadline. Haiku 4.5 is the Claude model in the TOON benchmark (65.6% TOON vs 63.5% JSON), but its retirement is listed as "not sooner than October 15, 2026". Plan your migration tests on Sonnet 5.5.
For a broader Claude integration walkthrough, read TOON with Anthropic Claude, and compare these prices with other providers in LLM API pricing for October 2026. To try the format on your own data, paste it into the JSON to TOON converter.
Frequently Asked Questions
How much do Claude Opus 5.5 and Sonnet 5.5 cost?
As of October 2026, Claude Opus 5.5 costs $4 per 1M input tokens and $20 per 1M output tokens, and Claude Sonnet 5.5 costs $2 and $10. Cache hits cost $0.20 per 1M tokens on both. The Batch API halves input and output prices.
Does Claude 5.5 understand TOON without instructions?
TOON is designed to be readable without a long explanation, but a one-sentence note helps: say the data is TOON, that the header lists the fields once, and that each indented line is one record. Then check accuracy on your own questions before switching production traffic.
Should Claude return TOON or JSON?
Return JSON. Claude structured outputs are generally available and guarantee schema-valid JSON through output_config.format or strict tools. Use TOON for the data you send in, and JSON Schema for the data you need back.
Why does my token count go up after migrating to Claude 5.5?
Claude Opus 4.7 and later models use a newer tokenizer that Anthropic says produces approximately 30% more tokens for the same text. Lower list prices offset part of that, and compact formats like TOON reduce the number of characters the tokenizer has to count.
Recommended Reading
Claude's New Tokenizer Uses ~30% More Tokens: What to Do
Claude's new tokenizer (Opus 4.7 and later) yields about 30% more tokens for the same text. What it does to your bill and why compact data formats help.
Using TOON with Claude: Token Savings and Prompt Caching
How to pass TOON context to Claude, why to benchmark accuracy on your model first, and how Anthropic's 90% cache-read discount stacks with TOON's token savings.
Stacking TOON with Prompt Caching to Cut LLM Costs Further
Prompt caching cuts the price per token up to 90%; TOON cuts token count by about 43% on average. Combine both levers for compounding savings on Claude and GPT.