A r/ClaudeCode thread from user nNaz crossed 1,200 upvotes and 144 comments this week on a claim that sounds small until you see the receipt: by default, Claude Code spends roughly 19k tokens on system tools before you've typed a single word of your prompt. The Artifact tool — the one that lets Claude post HTML documents to the web — accounts for close to half of that on its own.
The OP's fix, and the correction thread underneath it, are worth walking through carefully, because one of the "fixes" people upvoted was itself wrong until the author edited it. That's the more useful story here: which levers are real, which are typos that happened to get 1,200 upvotes anyway, and when disabling any of this actually costs you more than it saves.

TL;DR — what to check and what to change
| Question | Answer |
|---|---|
| Where do I see this cost myself? | Run /context in any session — it breaks down System tools, System prompt, Memory files, Skills, and Free space by token count and percentage. |
| What's the single biggest line item? | The Artifact tool, at roughly half of the ~19k "system tools" total on a default session. |
| Easiest way to turn it off? | /config → search "Artifacts" → toggle off. Confirmed working, no typos, reversible next session. |
| Session-only alternative? | claude --disallowed-tools Artifact at launch. |
| Permanent alternative? | "enableArtifact": false in ~/.claude/settings.json. |
What about /chrome and connectors? | /chrome to check/disable Claude in Chrome; disableClaudeAiConnectors in settings.json or ENABLE_CLAUDEAI_MCP_SERVERS=false for synced Google Drive/Gmail-style MCP servers. |
| What's the corrected env var for a leaner prompt? | CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=1 — not CLAUDE_CODE_SIMPLE=1, which strips prompts entirely and forces API billing. |
| Is any of this hot-swappable? | No. Every method here needs a fresh claude launch to take effect. |
| Should I actually do this? | Only for tools you genuinely don't use in a given workflow — see "When this isn't worth it" below. |
The mechanism: tool definitions are paid on every single turn
This is the same prefix-caching mechanism we covered in Claude Code token efficiency and prompt cache: every request sends tool definitions first, then the system prompt, then your conversation. Tool definitions sit at the very front of the prefix — ahead of everything else, including CLAUDE.md.
That means a tool you never invoke in a session is still fully described to the model, in full JSON schema, on every single turn. It's cached after the first request, so the ongoing cost is cheap (0.1x input, per the caching mechanics), but it isn't free, and it occupies budget in what the OP calls the "smart zone" — the portion of a long context window a model reasons sharply within, well short of the full 1M-token ceiling.
One reply pushes back on exactly this framing, and it's a fair correction worth stating up front: needle-in-a-haystack and long-context retrieval benchmarks have improved enough since Opus 4.6 that a hard cliff at "200k" is outdated as a blanket claim. The more defensible version of the argument is narrower — 10k of tokens spent on a tool you never call is 10k of pure waste at any context length, regardless of where exactly quality starts to soften.
What the before/after screenshot actually showed
The OP posted a side-by-side /context comparison on a Sonnet/Haiku session, running with and without CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=1:
| Category | Before | After |
|---|---|---|
| System prompt | 4.2k tokens (0.4%) | 3.9k tokens (0.4%) |
| System tools | 19k tokens (1.9%) | 9.8k tokens (1.0%) |
| Custom agents | 95 tokens | 95 tokens |
| Memory files | 2.5k tokens | 2.5k tokens |
| Skills | 4.1k tokens | 3.4k tokens |
| Total used (1M window) | 30k tokens (3%) | 19.8k tokens (2%) |
The env var switches Sonnet and Haiku sessions to the leaner prompt and tool set that Opus 5 and Fable run natively — this isn't a workaround Anthropic doesn't know about, it's an existing internal path being exposed for models that don't default to it.
Every lever the thread surfaced, and what's actually confirmed
1. Disable the Artifact tool
Three ways, in order of how permanent you want the change:
# Session-only, via CLI flag
claude --disallowed-tools Artifact
# Permanent, via settings.json
# ~/.claude/settings.json
{
"enableArtifact": false
}
# Permanent, via environment variable
export CLAUDE_CODE_DISABLE_ARTIFACT=1
Or skip the config file entirely: run /config, search "Artifacts," and toggle it off. Multiple commenters confirmed this is the simplest path and it's reversible — flip it back on for a session where you actually want to hand someone an HTML mockup.
2. Disable Claude in Chrome (/chrome)
Run /chrome to see the current status of the Claude in Chrome browser extension and disable it from the same panel. One commenter puts its cost around 22k tokens on top of the Artifact number, on the logic that if you're doing real browser automation you're more likely reaching for a dedicated agent-browser setup anyway, not Claude Code's built-in path.
3. Disable Claude.ai MCP connectors synced into Claude Code
If you've connected Google Drive, Gmail, or similar through claude.ai, those MCP servers can carry over into your local Claude Code sessions without you asking for them there:
# For one session
export ENABLE_CLAUDEAI_MCP_SERVERS=false
// ~/.claude/settings.json — permanent
{
"disableClaudeAiConnectors": true
}
This is the same category of fix as /mcp from our token efficiency guide — MCP tool definitions sit in the prefix ahead of your conversation regardless of whether you use them this session.
4. The leaner system prompt for Sonnet and Haiku
CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=1 claude
Get this one exactly right. The OP's original comment said CLAUDE_CODE_SIMPLE=1, and a reader who tried it got locked out of their subscription session entirely — /login and claude doctor both reported believable-looking success, but the session stayed unauthenticated until they unset the variable. The OP corrected the comment publicly: CLAUDE_CODE_SIMPLE=1 strips essentially all prompts and tool definitions and forces API-key billing instead of your Pro/Max subscription. CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=1 is the one that just trims the prompt while keeping your normal login and billing intact.
When this isn't worth it
The top comment on the thread is a direct rebuttal, and it's the right instinct: "The artifact tool is actually really nice and I find that I use it often. Easily worth 20k tokens per session to me." Another commenter uses Artifacts specifically for collaborating with colleagues on shared documents — that's a real, recurring use case, not an edge case.
The honest framing is a workflow question, not a blanket recommendation:
- Pure CLI/terminal coding, no sharing, no browser work → disabling Artifact,
/chrome, and unused connectors is close to free savings. - You regularly share mockups, specs, or prototypes → keep Artifact on. The ~10k-token cost buys you a feature you're actually using.
- You do browser-driven work in Claude Code → keep
/chromeon for those sessions specifically, rather than disabling it globally and re-enabling it every time. - You're not sure → run
/contextbefore deciding anything. It's the one command in this whole post that's fully documented and requires no configuration to try.
One commenter also flags a genuine UX cost of Artifacts being on by default: asking for a spec and getting it opened as a browser document instead of a markdown file saved where you asked. If that's happened to you, disabling is less about tokens and more about getting the output format you actually want.
A caution the thread surfaced in passing: /doctor is not free
Buried in the replies is an unrelated but useful warning worth repeating here, since it's the same "audit before you run it" instinct this whole post is about. One commenter ran /doctor — a diagnostic command, not a token-saving one — expecting a quick health check, and it kicked off three subagents and burned through nearly 300k tokens before they stopped it. /doctor isn't part of the token-reduction toolkit this post covers; the lesson is the same one underneath everything here: run /context and check what a command or setting actually does before trusting a one-line recommendation, including this post's.
Honest limitations
- The specific settings.json keys and env vars are community-reported, not yet cross-referenced against Anthropic's published settings schema at time of writing.
/config,/context, and/mcpare the confirmed, stable surface; treatenableArtifact,CLAUDE_CODE_DISABLE_ARTIFACT, anddisableClaudeAiConnectorsas accurate-until-proven-otherwise and verify with/contextafter setting them. - The OP's own thread contains a corrected error (
CLAUDE_CODE_SIMPLE=1vsCLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=1) that locked at least one reader out of their subscription session. That's not a reason to distrust the whole thread — it's a reason to verify each specific string before you export it. - No dollar or usage-limit figures. The before/after numbers are token counts from
/context, not a cost or usage-limit comparison — subscription users can't directly see what a 10k-token session-start saving is worth to them without their own before/after tracking. - "Smart zone" is a community framing, not an Anthropic term. The underlying point — unused tool definitions are waste regardless of window size — holds up; the specific claim that quality falls off a cliff past 200k is contested in the replies and shouldn't be repeated as settled fact.
- /chrome's ~22k-token figure is a single commenter's estimate, not verified against a
/contextscreenshot the way the Artifact number is.
Related on explainx.ai
- Claude Code token efficiency — prompt cache, sessions, and what actually costs you
- Claude in Chrome — what the browser extension does and its real risks
- Claude Code context window — what happens when you hit the limit
- Claude's system prompt grew from 300 to 3,000+ words
- Claude Code vs OpenCode — token overhead, measured
- Token budget planning and execution
- Claude Code commands — complete reference
Primary source: r/ClaudeCode — "Tip: Instantly save 10k tokens on every new session," u/nNaz, and the corrections in its comment thread.
Settings, environment variables, and token figures reflect a Reddit thread and its comments as read on September 5, 2026. Several specific configuration keys are community-reported and not yet cross-checked against Anthropic's official settings documentation — verify with /context in your own session before relying on any of them, and expect flags and defaults to change across Claude Code releases.
