Troubleshooting

Claude Code Opus 4.8 Slow Or Expensive

Troubleshoot Claude Code after Opus 4.8 when sessions feel slower, usage rises, ultracode burns tokens, dynamic workflows fan out, or fast mode is misunderstood.

If Claude Code feels slower or more expensive after the Opus 4.8 rollout, do not assume the model is broken. First separate four different causes: higher effort, larger context, dynamic workflow fan-out, and billing surface.

Last checked on May 29, 2026. Opus 4.8 defaults to high effort, dynamic workflows are a research preview, and Claude Code 2.1.156 fixes a same-week Opus 4.8 thinking-block API error. Run claude --version and check your active model, effort, and account before changing workflows.

Quick Diagnosis

SymptomMost likely causeFirst fix
Each turn feels slower after switching to Opus 4.8Higher effort or harder model behavior.Check /effort; use high for normal tasks and reserve xhigh/ultracode.
Usage rises during broad tasksDynamic workflows or subagents are doing more work.Narrow the prompt and watch /workflows.
ultracode burns through usageClaude may be planning workflows for substantive tasks.Switch back to /effort high after the hard session.
Fast mode cost surprises youFast mode trades money for speed.Use it for latency-sensitive turns, not long unattended runs.
400 thinking-block API errorKnown Opus 4.8 issue fixed in Claude Code 2.1.156.Update Claude Code, then restart the affected session if needed.
One project is much slower than anotherContext, MCP output, files, logs, or repo size differ.Use /clear, /compact, and scoped file paths.
Team members see different optionslatest/stable channel, plan, provider, or admin settings differ.Compare versions, /config, and organization settings.

Step 1: Confirm The Version And Channel

Run:

claude --version
npm view @anthropic-ai/claude-code dist-tags --json

At the time this page was checked, npm reported:

{
  "latest": "2.1.156",
  "next": "2.1.156",
  "stable": "2.1.145"
}

If you are on an older 2.1.x release and hit an Opus 4.8 thinking-block API error, update first:

claude update
claude --version

If you installed with npm:

npm install -g @anthropic-ai/claude-code@latest
claude --version

For the full update matrix, use Claude Code latest version.

Step 2: Check Model, Effort, And Fast Mode

Inside Claude Code:

/model
/effort

Use this decision table:

GoalRecommended settingWhy
Everyday implementationOpus or Sonnet with high/default effort.Balanced speed and quality.
Difficult bug or architecture reviewxhigh for the focused session.More reasoning without automatic workflow fan-out.
Large audit or migrationultracode, but with a narrow prompt.Allows workflow orchestration when the task warrants it.
Fast interactive iterationFast mode, if available and worth the price.Better latency, but not the cheapest long-run setting.
Cost-sensitive batch workSmaller scope, normal effort, maybe Sonnet.Reduces token and workflow expansion risk.

Do not combine every expensive setting by habit. ultracode plus broad prompts plus large context is the pattern most likely to feel slow and costly.

Step 3: Check Whether A Workflow Is Running

If you used ultracode or asked Claude to create a workflow:

/workflows

Look for:

SignalMeaningAction
Many background agentsThe task fanned out.Let it finish only if the scope is worth the usage.
Long-running verificationAgents are cross-checking findings.Good for audits, poor for tiny edits.
Unexpected task directionPrompt was too broad or ambiguous.Stop and restart with a narrower workflow.
Multiple workflow phasesClaude may be doing inventory, implementation, and verification.Split phases manually next time.

For workflow behavior, read Dynamic workflows and Ultracode.

Step 4: Reduce Context Before Blaming The Model

Long sessions often become expensive because the next turn carries too much history.

Use:

/compact

or start fresh with a focused task. Before a new expensive run, give Claude:

  1. The exact directory or files in scope.
  2. The exact error or goal.
  3. What not to touch.
  4. Whether the first pass is read-only.
  5. What evidence the final answer must include.

Bad prompt:

Use ultracode to fix the whole project.

Better prompt:

/effort ultracode
Run a read-only workflow on src/app/api and src/shared/auth only. Find missing permission checks. Do not edit files. Return file path, evidence, risk, and minimal fix.

Step 5: Decide Whether To Use Opus 4.8 At All

Opus 4.8 is not automatically the cheapest or fastest choice for every Claude Code task.

Task typePractical choice
Large agentic coding taskOpus 4.8 can be worth it, especially if wrong code is costly.
Routine documentation editsSonnet or normal effort may be enough.
Short one-file editsUse the fastest reliable model/settings you have.
Broad repository auditOpus 4.8 plus scoped workflow can be useful.
Creative writing or style workTest against your own benchmark; community reports are mixed.
Production deployment workUse Plan Mode, version pinning, tests, and explicit rollback.

The important point: model quality and workflow automation are separate decisions. You can use Opus 4.8 without ultracode, and you can use dynamic workflows only when the task deserves it.

Common Launch-Window Misreads

Claim you may see onlineSafer interpretation
"Opus 4.8 is slow."It may be slower on higher effort or broader tasks; measure your exact workflow.
"Ultracode is magic."It is useful for large scoped work, not a replacement for task boundaries.
"Fast mode is cheaper."Fast mode is cheaper than previous fast mode, but costs more than standard Opus 4.8 pricing.
"Dynamic workflows replace subagents."Workflows can coordinate subagents; smaller tasks still fit ordinary subagents.
"4.8 failed my test, so it is worse."One test is signal, not proof. Re-run with the same prompt, files, model, and effort.
"Everyone has ultracode now."Access can depend on version, plan, provider, and organization settings.

Official Sources