# Claude Code Is 3x Faster to First Token: What Changed

> Claude Code's p90 wait before the first token fell from 4.07s to 1.33s. What gzip changed, what the numbers measure, and how to turn it off.

- Author: Nitish Garg, Founder & CEO, CellCog
- Published: 2026-10-18
- Canonical (HTML): https://cellcog.ai/blog/claude-code-3x-faster-gzip/
- Section: Guides / Choosing a platform
- Publisher: CellCog (https://cellcog.ai), the AI employee platform. Blog index for agents: https://cellcog.ai/blog/llms.txt

## Key points

- Anthropic says Claude Code's p90 wait before the first token fell from 4.07 to 1.33 seconds in local sessions between August and October 2026, about 3x faster.
- Cloud sessions fell from 16.99 to 6.00 seconds at p90, because they now start up as soon as you start typing.
- The main fix is gzip: since version 2.1.300 on October 14, Claude Code compresses large requests to api.anthropic.com.
- Compression is skipped behind a proxy or with custom certificates, and CLAUDE_CODE_GZIP_REQUEST_BODIES=0 turns it off.
- The Claude Code numbers exclude model time; the API's median time to first token, which includes it, went from 1.53 to 1.01 seconds.

## At a glance

- **Why is Claude Code faster?** Since version 2.1.300 it gzips the conversation it sends each turn, and cloud sessions now start up as soon as you start typing.
- **How much faster?** Local sessions' p90 wait before the first token fell from 4.07 to 1.33 seconds between August and October 2026, Anthropic says.
- **Is the model faster?** No. The Claude Code figures exclude model time; they measure the wait around the model, not the model's thinking.

**Claude Code now starts answering about three times faster than it did in August, and the main fix is an old one: it compresses what it sends.** On October 16, 2026, [@ClaudeDevs on X](https://x.com/ClaudeDevs/status/2111209208012210409) wrote: "Claude Code now gzips the conversation it sends on every turn, so it reaches the model faster." The same post added: "Cloud sessions also start up as soon as you start typing." It passed 2.1 million views by October 18.

Anthropic's chart puts the 90th-percentile wait before the first token in local Claude Code sessions at 1.33 seconds, down from 4.07 seconds in August. Here is what changed, what the numbers actually measure, and the one setting worth knowing if you work behind a corporate network.

## The numbers Anthropic published

*Table: Wait before the first token, August to October 2026 (Anthropic, October 16, 2026)*

| Surface | Measure | August | October | Faster |
|---|---|---:|---:|---:|
| Claude Code, local sessions | p90, excluding model time | 4.07 s | 1.33 s | 3.1x |
| Claude Code, cloud sessions | p90, excluding model time | 16.99 s | 6.00 s | 2.8x |
| Claude chat and Cowork | p90, excluding model time | 3.36 s | 2.17 s | 1.5x |
| Claude API | p50, including model time | 1.53 s | 1.01 s | 1.5x |

Two details decide how to read this. The first three rows exclude model time: they measure the wait that Anthropic's own software adds around the model, not how fast Claude thinks. And they are 90th percentiles, so nine requests in ten were at least that fast; the slow tail is the part people notice. The API row is different on both counts: it is the median, and it includes the model.

So "3x faster" does not mean the model got three times faster. A turn where Claude reasons for a long time still takes as long as the reasoning. What got shorter is the dead time before anything happens.

## Why compressing the conversation helps

Anthropic's Messages API keeps no session on the server. Every request carries the conversation so far: your messages, Claude's replies, file contents it read, tool output, diffs. Prompt caching saves the model from reprocessing that history, but the request still has to carry it. In a long coding session, that body gets large, and upload is usually the slow direction of a home or office connection.

Text compresses very well. As a rough check, gzip at its default level shrinks Claude Code's own 1.1 MB changelog to 351 KB, about 3.1x smaller. On a 10 Mbps upload, a 1 MB request takes about 0.8 seconds just to leave your machine, before the model sees a single token.

![Animation: two lanes from a laptop to a Claude server; in the top lane a long conversation scroll crawls across and its stopwatch stops at 4.07 s, in the bottom lane a zipper squeezes the same scroll into a small gzip packet that arrives fast, its stopwatch stops at 1.33 s and an amber first token chip pops out first](https://cellcog.ai/blog/media/claude-code-3x-faster-gzip/ccfast-gzip-lane.svg)
*Same conversation, a smaller request, an earlier first token*

The change shipped in Claude Code version 2.1.300 on October 14, 2026. Its [changelog](https://code.claude.com/docs/en/changelog) entry reads: "Changed large requests to api.anthropic.com to use gzip compression even when telemetry is disabled." The changelog does not say what the setting was before; the wording suggests compression already ran in some setups and now runs on direct connections by default.

## When compression is skipped, and how to turn it off

Anthropic's [environment variable reference](https://code.claude.com/docs/en/env-vars) says Claude Code compresses large request bodies on direct connections and skips compression in three cases:

- requests sent through a proxy,
- a configured client certificate,
- `NODE_EXTRA_CA_CERTS` set to add your own certificate authority.

Those are common on company networks, so a team behind a proxy may see less of the local-session gain. Anthropic's chart does not split results by network.

The opposite problem also has a fix. If a TLS-inspecting proxy that Claude Code cannot detect breaks compressed requests, Anthropic's documented switch turns compression off:

```bash
export CLAUDE_CODE_GZIP_REQUEST_BODIES=0
```

The same variable covers telemetry and artifact uploads to api.anthropic.com, so one setting handles all three.

## Cloud sessions now start while you type

The biggest absolute drop is in cloud sessions: from 16.99 seconds to 6.00 seconds at the 90th percentile. Anthropic gave one line on how: cloud sessions "start up as soon as you start typing." Starting the remote environment at the first keystroke instead of at submit hides that startup behind the time you spend writing the prompt.

![Animation: two timelines; before, the cloud session bar only starts after Enter and the first token arrives at 16.99 s; now, the cloud session bar starts at the first keystroke under the typing bar and the amber first token arrives 6.00 s after Enter](https://cellcog.ai/blog/media/claude-code-3x-faster-gzip/ccfast-cloud-early.svg)
*Starting the cloud session at the first keystroke*

We found no changelog or docs entry for this part as of October 18, so the X post is the only source. Even after the change, cloud sessions remain the slowest row on the chart at six seconds.

## Part of a longer speed push

This is the second speed result from Anthropic in a month. On September 23, three engineers, Raymond Wang, Sam Attard and Issac G., published [How we made claude.ai 3x faster in two weeks](https://claude.dev/blog/how-we-made-claude-ai-faster/), about an August sprint run from one Slack channel with Claude in every thread. Its opening line: "Once Claude can measure something, it can make it faster."

That post reports different measurements: at the 75th percentile, a fresh load of claude.ai went from 3.1 seconds to 0.55, starting a new Claude Code session from 0.8 seconds to 0.3, and loading a Claude Cowork cloud session from 2.6 seconds to 0.73. Those are page and session startup times, not the wait before the first token, so the two sets of numbers do not add up into one figure.

## What it means if you build on agents

For anyone running agents, most of the wait you can fix is not the model. It is the request body, the environment that has to boot, and the client code around the call. Anthropic measured exactly that part, with model time removed, and attacked it with compression and early startup rather than a new model.

CellCog runs Claude Opus 5.5 on every tier, so faster Claude infrastructure reaches our users too. We chased the same number on our own side in January, when we [cut our time to first token from 15 seconds to 4.5](https://cellcog.ai/blog/time-to-first-token-70-percent-faster/). The lesson held then and holds here: measure the wait you own, separately from the wait the model needs.

## FAQ

**Which Claude Code version compresses requests?**

Version 2.1.300, released October 14, 2026, made large requests to api.anthropic.com use gzip even when telemetry is disabled.

**Does everyone get the speedup?**

Compression runs on direct connections. Anthropic's docs say it is skipped when requests go through a proxy, a client certificate is configured, or NODE_EXTRA_CA_CERTS is set.

**How do I turn gzip off?**

Set CLAUDE_CODE_GZIP_REQUEST_BODIES=0. Anthropic suggests it when a TLS-inspecting proxy that Claude Code can't detect mishandles compressed requests.

**What changed for cloud sessions?**

They start up as soon as you start typing. Anthropic's chart shows the p90 wait before the first token falling from 16.99 to 6.00 seconds.

**What model does CellCog run?**

Every CellCog tier runs Claude Opus 5.5.

## Related

- [Claude Writes 90% of Claude Code: How Review Keeps Up](https://cellcog.ai/blog/claude-code-90-percent-code-review/index.md)
- [Claude Code Auto Mode: What It Does, How to Turn It Off](https://cellcog.ai/blog/claude-code-auto-mode/index.md)
- [From 15s to 4.5s: How We Made Time to First Token 70% Faster](https://cellcog.ai/blog/time-to-first-token-70-percent-faster/index.md)

## The AI employee for this read

[AI Software Engineer](https://cellcog.ai/ai-employees/ai-software-engineer): I built this page. For what it covers, hire an engineer: it works in your repo behind an approval gate, so nothing reaches your world unclassified.

---

Markdown alternate of https://cellcog.ai/blog/claude-code-3x-faster-gzip/. Try CellCog free, no credit card needed: https://cellcog.ai/signup
