These 5 Words Cost 12% of Your Claude Code Usage

5:273 min readBetter Stack11/01/2026Computing/Software · Internet Technology

Key Takeaway

Background agent summaries in Claude Code run every 30 seconds on the full conversation history, accounting for up to 20 percent of total usage costs.

Highlights

  • Claude Code background agents trigger a summary request every 30 seconds, consuming 5 to 20 percent of a user's subscription usage.

  • Each summary call sends the entire growing conversation context, generating about 40,000 input tokens to return roughly 130 output tokens.

  • These background summary calls execute using Opus rather than a cheaper model such as Haiku.

  • Claude Code JSONL transcripts do not log these background summary calls, meaning usage tracking tools fail to capture these specific costs.

  • Setting fork subagents to zero disables the summary feature while keeping normal background agents active.

Timeline

  1. The Hidden Cost of Background Agent Summaries

    Claude Code utilizes background agents that periodically summarize their current status for the UI status line. Measuring this behavior via OpenTelemetry export to BetterStack reveals that these summary calls happen precisely every 30 seconds. As the conversation progresses, the context grows from 18 messages to 42 messages, with each recall transmitting roughly 40,000 input tokens. A realistic test building a TanStack site with three background agents showed that these summaries consumed about 8 percent of total usage, running entirely on the expensive Opus model rather than a cheaper alternative like Haiku.

    • Background agents trigger summary requests every 30 seconds to generate 3 to 5 word descriptions.
    • A test run using background tasks resulted in agent summaries accounting for 12 percent of the session cost.
    • Every summary call sends the entire accumulated conversation history, scaling up input token counts rapidly.
  2. Industry Variation and Transcript Blind Spots

    Cost impact varies based on agent duration because the summary timer operates on wall clock time for any active agent whose transcript changes. Anthropic team members reported lower telemetry figures around 2 to 6 percent, whereas independent users measured similar overhead between 8 and 25 percent. Because these background requests bypass standard JSONL transcripts, third-party usage estimators cannot see them. Although prompt caching reduces the API pricing impact of repeated context transmission, subscription users still experience severe limits draining faster.

    • Team telemetry data and independent measurements place these summaries between 8 and 20 percent of total usage.
    • Claude Code JSONL transcripts omit these summary calls entirely, preventing standard usage tracking tools from detecting them.
    • Wall clock time drives the frequency, meaning long-running agents incur high summary costs rapidly.
  3. Workarounds and Mitigation Strategies

    No direct configuration setting exists to turn off background summaries, but setting fork subagents to zero successfully stops the summary generator while allowing normal subagents to start fresh without inheriting past context. Alternatively, a community-created Bun preload script hooks into set timeout functions to block the timer, though running untrusted scripts poses security vulnerabilities. While the summaries provide functional value for the system, the absence of a simple toggle leaves heavy users searching for manual fixes or alternative developer tools.

    • Disabling fork subagents via configuration turns off the summary feature entirely while retaining basic background agents.
    • A community Bun preload script intercepts timeout functions to block the summary timer, though security risks require pinning a local copy.
    • Anthropic utilizes these summaries internally, but the lack of a native toggle switch leaves users dependent on workarounds.

Description

Claude Code re-sends each working background agent's whole conversation to the model every 30 seconds, just to write a 3–5 word label in its agents panel. 🔗 Relevant Links Flamerix's write-up and Bun preload fix (the original finding): https://gist.github.com/flamerix-ai/c3905705cc4205e5de3011fa2e74efce ❤️ More about us Radically better observability stack: https://betterstack.com/ Written tutorials: https://betterstack.com/community/ Example projects: https://github.com/BetterStackHQ 📱 Socials Twitter: https://twitter.com/betterstackhq Instagram: https://www.instagram.com/betterstackhq/ TikTok: https://www.tiktok.com/@betterstack LinkedIn: https://www.linkedin.com/company/betterstack 📌 Chapters: 0:00 - Intro 0:32 - The Agents Panel Bar 0:45 - Measuring It in Better Stack 1:41 - A Real Opus Build 2:21 - Anthropic's Numbers 2:54 - The Prompt Cache Defence 3:13 - Why It Hit a Nerve 3:39 - How to Turn It Off 4:17 - Flamerix's Preload Fix 4:44 - Final Thoughts #ClaudeCode #Anthropic #AICoding

Write about this video