Use case

# I cut tokens and my bill went up. *Keep the prompt cache warm.*

On Claude Opus 5.5, a cut that changes the start of the request makes the provider write it to cache again, at 40 times the read price with a 1-hour mark. Context Mode trims once and sends the same bytes every turn, so the cache stays warm. Cache writes are in the cost we measure.

[Get started free](https://console.context-mode.com/login) [Read the docs](https://context-mode.com/docs/prompt-caching)

Cut tokens, see the bill

Drop tools Trim schemas Why

You stop sending 60 tool definitions to save tokens.

Prompt tokens, all tools **176,196** Prompt tokens, tool search **107,495**

Cost per run, all tools **$0.1043** Cost per run, tool search **$0.2107**

39% fewer tokens, 149.6% more cost. 12 paired runs on Claude Opus 5.5. We did not ship it.

Every tool stays. Long descriptions get shorter, the same way each turn.

Full tool list **103,253 bytes** Slim tool list **27,436 bytes**

Full, per warm turn **$0.004596** Slim, per warm turn **$0.002640**

42.5% less per warm turn, a turn that reads the start from cache. A recording of 7 turns on a Haiku model.

Claude Opus 5.5, 1-hour mark, per million tokens.

Cache write **$8** Fresh input **$4** Cache read **$0.20**

A read costs a twentieth of fresh input. When the start changes, it is written again: $0.040917 on that turn, 8.9 times a warm turn.

The problem

## Fewer tokens is not a smaller bill. *The cache decides.*

**Most of each request is cheap**

Your agent sends the whole conversation on every call. On Claude Opus 5.5, the provider reads the start of it from cache at a twentieth of the fresh price.

**A change writes it again**

If anything changes text inside that cached start, the next call writes it to cache again. With a 1-hour mark, a write costs 40 times a read.

**So a cut can cost more**

We sent no tool definitions up front and let the model search for them. Tokens fell 39%. Cost rose 149.6%.

How it works

## Trim once. *Send the same bytes after.*

1. 01 **Trim tool schemas, keep every tool** On Claude Code requests, a tool of 1,500 bytes or more keeps its name, top-level parameters and required list. Its description is cut at a sentence end at or before 420 characters. Codex tool descriptions are trimmed too.
2. 02 **Change output only the first time** A tool result changes only when it first passes. Every later request carries the same bytes, so the provider reads them from cache.
3. 03 **Hold the start still** On a long thread, old messages are cut in planned steps only. Your Instructions sit in the cached start, and the gateway holds that start unchanged during a conversation.

Your agent and its settings stay as they are. Only what each request carries changes, once.

Proof

## Measured cost, *cache writes included.*

**42.5% lower cost** per warm turn with the slim tool list, $0.004596 to $0.002640. A warm turn reads the start from cache.

**0 unplanned breaks** over 209 main requests after the fix of 2026-10-03 (89 over 9,119 before). The sample is small.

The 42.5% is a recording of 7 turns on a Haiku model. The one break after the fix was a planned step. [The study →](https://context-mode.com/blog/token-optimization-beyond-caching#trim) [Method and sources →](https://context-mode.com/docs/benchmarks)

Two ways to cut

## Two ways to cut. *Two results.*

| What happens | Trim schemas | Drop tools, search for them |
| --- | --- | --- |
| Tools the model sees | Every tool, shorter descriptions | Only the ones it finds |
| Bytes at the start | The same on every turn | Change as tools come in |
| Tokens | Tool list (manifest): 103,253 to 27,436 bytes | Prompt tokens: 176,196 to 107,495, 39% fewer |
| Cost | Per warm turn: $0.004596 to $0.002640 | Per run: $0.1043 to $0.2107 |
| Shipped | Yes | No |

The two columns are separate tests on different models, not a direct comparison. Trim schemas: a recording of 7 turns on a Haiku model, 29 tools. Tool search: 12 paired runs on Claude Opus 5.5, 60 MCP tools, every task passed in both arms. [How we learned it →](https://context-mode.com/blog/token-optimization-beyond-caching#tool-search)

Products used

## What this *uses.*

**[Context Saving](https://context-mode.com/context-saving)**

Trims tool schemas and folds tool output once, so later requests reuse the cache.

**[Instructions](https://context-mode.com/instructions)**

Your rules sit in the cached start. After the first request they cost the cache read price.

**[Prompt caching docs](https://context-mode.com/docs/prompt-caching)**

What cache reads and writes cost, what breaks the cache, and where the gateway puts cache marks.

Related: [Cut agent spend](https://context-mode.com/solutions/cut-agent-spend) · [Failing test output](https://context-mode.com/use-cases/failing-test-output) · [Long sessions](https://context-mode.com/solutions/long-sessions) · [Tool-schema slimming](https://context-mode.com/docs/how-saving-works#tool-schemas) · [Pricing](https://context-mode.com/pricing)

## Cut tokens. *Keep the cache.*

*npx @context-mode/cli* connects your agents. 1,000 requests free, no card.

[Get started free →](https://console.context-mode.com/login) [Read the docs →](https://context-mode.com/docs/prompt-caching)
