data//run-costs

Claude Code agent run costs: recorded tokens and modeled API-equivalent pricing

Recorded token fields from devweb agent-workflow runs, with dated API-equivalent pricing scenarios and coverage limits.

figures as of Sep 7, 2026·updated Sep 7, 2026·download json

Recorded run costs

This page records the token fields available from a defined set of devweb agent-workflow runs and applies a dated pricing scenario to the captured tokens. The dollar figures are modeled API-equivalent amounts, not billed spend, invoices, quotes, or forecasts. See run accounting for the terms used throughout the page.

The two complete-coverage essay examples report 27,804,254 captured tokens and $24.64 in modeled API-equivalent cost for vectors-in-the-file, and 12,955,270 captured tokens and $12.27 in modeled API-equivalent cost for clean-audit-run-proves-nothing. These are individual recorded examples. They do not establish a typical run cost or a representative average.

Coverage varies across the sample. Some rows contain exact counts for every recorded leg, some contain only part of the run, and some contain no captured Claude token counts. Native Codex usage and cost data are unavailable where the source accounting did not capture them. Unavailable does not mean zero.

Sample and coverage

Each row below is one recorded run. Coverage describes what the accounting captured, not whether the workflow itself ran. Legs captured/recorded counts only legs present in the accounting denominator. Older records may omit the Delegate or cold reviewer, and a run with no specialist spawn records can still have used specialists. The totals for that run are therefore an undercount.

The modeled Claude amounts use captured token fields from subscription-backed Claude Code runs. They describe what those tokens would cost under the listed API pricing scenario, not what the subscription holder paid. Grok amounts are byte-derived estimates for successful recorded passes. They are not measured invoice costs.

In captured-total columns, 0 means the dataset captured no tokens for that measure. It must not be read as proof that the run used no tokens. n/a means a modeled amount or share is unavailable. Some recent rows contain measured GPT token legs but no applicable pricing model. The extractor preserves those token measurements while setting the run's modeled USD totals to null. The field name claude_usd_equiv remains for compatibility with the older dataset shape; it does not mean GPT usage was assigned a Claude price.

RunDateWorkflowProducedCoverageLegs captured/recordedSpecialists recordedTokens processed (captured)Output tokensCache-read shareGrok callsGrok USDClaude USD equivTotal USD equiv
20260723-devweb-recallatron-improvements2026-07-23write-articlestructured-memory-graph-workerspartial10/11103,833,10615,53188%10.01454.924.93
20260723-devweb-static-nextjs-wordpress2026-07-23write-articlestatic-nextjs-vs-wordpressnone0/1000n/a10.0088n/an/a
20260905-glossary-harness-cluster2026-09-05write-glossary8 glossary-termspartial3/3035,429,14063,47994%80.018421.7721.79
20260906-article-prompt-context-harness2026-09-06write-articlethe-layer-between-wording-and-wiringpartial3/3036,050,56933,41190%30.030930.1830.21
20260906-glossary-memory-cluster2026-09-06write-glossary7 glossary-termspartial3/3055,082,07642,39995%70.016626.0326.05
20260906-topic-overviews2026-09-06write-topic-overview3 topic-overviewscomplete11/11850,805,09533,62693%30.009634.2534.26
20260624-delegate-gating-article2026-06-24write-articlegate-the-flow-not-the-judgmentnone0/9900n/a10.0105n/an/a
20260624-meta-pipeline-article2026-06-24write-articlethe-pipeline-that-wrote-thisnone0/9900n/a10.0113n/an/a
20260624-project-agent-article2026-06-24write-articledeny-by-default-groundingnone0/9900n/a10.0100n/an/a
20260625-growoperative-architecture-article2026-06-25write-articlegrowoperative-foaf-protocol-architecturenone0/9900n/a10.0150n/an/a
20260626-rheo-memory-v2-article2026-06-26write-articlegive-the-model-the-tools-not-the-contextnone0/9900n/a10.0098n/an/a
20260705-article-rheo-track52026-07-05write-articlevectors-in-the-filecomplete12/121127,804,254105,28395%10.010624.6324.64
20260705-article-run-metrics2026-07-05write-articleagent-run-cost-attributionpartial11/12114,466,01216,75182%10.01167.127.13
20260712-audit-convergence-article2026-07-12write-articleclean-audit-run-proves-nothingcomplete12/121112,955,27045,98095%10.011112.2612.27
20260723-bureau-shift-left-quality2026-07-23write-articleshift-left-quality-agentic-pipelinenone0/0000n/a10.0092n/an/a
20260723-devweb-wordpress-nextjs-v22026-07-23write-articlestatic-nextjs-vs-wordpresspartial1/10112,10451199%10.01090.080.09
20260723-write-article-evalpal2026-07-23write-articleevalpal-audhd-assessmentpartial2/208,539,5179,32395%10.00978.268.27
20260906-article-mcp-tool-design2026-09-06write-articlemcp-tool-designnone0/0000n/a30.0332n/an/a
20260906-glossary-mcp-claude-code2026-09-06write-glossary4 glossary-termsnone0/0000n/a40.0093n/an/a
20260907-article-claude-headless-backend2026-09-07write-articleclaude-p-backend-processpartial1/65311,2616,65078%00.0000n/an/a
20260907-article-skills-subagents-mcp2026-09-07write-articleskills-subagents-mcp-where-logic-livespartial1/10612,1286,90779%00.0000n/an/a
20260907-topic-guides-claude-mcp-refresh2026-09-07write-topic-overview2 topic-overviewsnone0/7700n/a00.0000n/an/a

The coverage table exposes the accounting boundary at leg level. exact means exact token counts were recorded. partial means the counts are incomplete. not recorded means the accounting holds no record of that leg and excludes it from the denominator. absent means the older schema had no field for it.

RunSchemaCoverageConductorDelegateReviewerSpecialists captured / recordedGrok calls
20260723-devweb-recallatron-improvementsv2partialnot recordedexactnot recorded9/101
20260723-devweb-static-nextjs-wordpressv2nonenot recordedpartialnot recorded0/01
20260905-glossary-harness-clusterv2partialexactexactexact0/08
20260906-article-prompt-context-harnessv2partialexactexactexact0/03
20260906-glossary-memory-clusterv2partialexactexactexact0/07
20260906-topic-overviewsv2completeexactexactexact8/83
20260624-delegate-gating-articlev1noneabsentabsentabsent0/91
20260624-meta-pipeline-articlev1noneabsentabsentabsent0/91
20260624-project-agent-articlev1noneabsentabsentabsent0/91
20260625-growoperative-architecture-articlev1noneabsentabsentabsent0/91
20260626-rheo-memory-v2-articlev1noneabsentabsentabsent0/91
20260705-article-rheo-track5v2completeexactabsentabsent11/111
20260705-article-run-metricsv2partialpartialabsentabsent11/111
20260712-audit-convergence-articlev2completeexactnot recordednot recorded11/111
20260723-bureau-shift-left-qualityv1noneabsentabsentabsent0/01
20260723-devweb-wordpress-nextjs-v2v2partialnot recordedexactnot recorded0/01
20260723-write-article-evalpalv2partialexactexactnot recorded0/01
20260906-article-mcp-tool-designv2nonenot recordednot recordednot recorded0/03
20260906-glossary-mcp-claude-codev2nonenot recordednot recordednot recorded0/04
20260907-article-claude-headless-backendv2partialnot recordednot recordedexact0/50
20260907-article-skills-subagents-mcpv2partialnot recordednot recordedexact0/00
20260907-topic-guides-claude-mcp-refreshv2nonenot recordednot recordednot recorded0/70

Method and arithmetic

For Claude legs, the cost model applies the recorded input, cache creation, cache read, and output token fields to the corresponding rate:

modeled API-equivalent cost = (input tokens / 1e6 x input rate) + (cache creation tokens / 1e6 x one-hour cache-write rate) + (cache read tokens / 1e6 x cache-read rate) + (output tokens / 1e6 x output rate)

The rates were checked against the linked provider pages on 2026-09-07. The one-hour cache-write rate is a pricing-scenario assumption. It does not prove which cache TTL applied to every historical leg. Likewise, sonnet, opus, haiku, and fable are priced as the models those aliases mapped to on the fetched date. That mapping is not evidence of the model ID that originally executed an earlier run.

The million-token operands printed in the Arithmetic column are rounded for display and are illustrative. The extractor computes from the raw integer token fields, rounds each priced native leg to cents, and then sums those leg amounts. Recomputing a total from the displayed million-token operands can therefore produce a different result.

AliasPriced asInput $/MCache write $/MCache read $/MOutput $/MSourceFetched
sonnetClaude Sonnet 52.04.00.210.02026-09-07
opusClaude Opus 55.010.00.525.02026-09-07
haikuClaude Haiku 4.51.02.00.15.02026-09-07
fableClaude Fable 5.110.020.00.2550.02026-09-07
grok (OpenRouter)x-ai/grok-4.31.25n/a0.22.52026-09-07

Grok token values use the dataset rule bytes / 4. bytes_in is the draft file size, so it omits the system instruction and user-message frame also sent with the request. The estimate is a rough content-size proxy, not complete request usage. The extractor includes successful recorded passes only. It does not count every attempted or potentially billed request. Although the underlying service was metered, grok_usd is a byte-derived modeled estimate, not recorded billed spend.

The two complete-coverage essay breakdowns show the arithmetic at each recorded leg.

vectors-in-the-file

AgentModelInputCache writeCache readOutputUSD equivArithmetic
The Conductoropus26,512470,06923,346,12792,07018.810.027M x $5.0 + 0.470M x $10.0 + 23.346M x $0.5 + 0.092M x $25.0 = $18.81
Tallysonnet20111,8941,305,54510,4600.810.000M x $2.0 + 0.112M x $4.0 + 1.306M x $0.2 + 0.010M x $10.0 = $0.81
The Counselorsonnet1043,730143,0023170.210.000M x $2.0 + 0.044M x $4.0 + 0.143M x $0.2 + 0.000M x $10.0 = $0.21
The Scribesonnet943,169229,1643680.220.000M x $2.0 + 0.043M x $4.0 + 0.229M x $0.2 + 0.000M x $10.0 = $0.22
The Scribeopus13,11673,339283,394330.940.013M x $5.0 + 0.073M x $10.0 + 0.283M x $0.5 + 0.000M x $25.0 = $0.94
The Scribeopus13,11471,116221,730180.890.013M x $5.0 + 0.071M x $10.0 + 0.222M x $0.5 + 0.000M x $25.0 = $0.89
The Scribeopus13,11664,295273,956280.850.013M x $5.0 + 0.064M x $10.0 + 0.274M x $0.5 + 0.000M x $25.0 = $0.85
The Scribeopus13,11446,466164,261200.610.013M x $5.0 + 0.046M x $10.0 + 0.164M x $0.5 + 0.000M x $25.0 = $0.61
The Counselorsonnet1349,607324,4527670.270.000M x $2.0 + 0.050M x $4.0 + 0.324M x $0.2 + 0.001M x $10.0 = $0.27
The Counselorsonnet889,60671,2707230.380.000M x $2.0 + 0.090M x $4.0 + 0.071M x $0.2 + 0.001M x $10.0 = $0.38
The Scribesonnet528,18961,909170.130.000M x $2.0 + 0.028M x $4.0 + 0.062M x $0.2 + 0.000M x $10.0 = $0.13
The Challengeropus13,11041,05149,4834620.510.013M x $5.0 + 0.041M x $10.0 + 0.049M x $0.5 + 0.000M x $25.0 = $0.51
Grok pass 1grok-4.3~2,829 (est)n/an/a~2,822 (est)0.0106(11315/4)/1e6 x $1.25 + (11287/4)/1e6 x $2.5 = $0.0106
Total24.64Claude 24.63 + Grok 0.0106

clean-audit-run-proves-nothing

AgentModelInputCache writeCache readOutputUSD equivArithmetic
The Conductoropus87471,6489,701,85337,5196.510.001M x $5.0 + 0.072M x $10.0 + 9.702M x $0.5 + 0.038M x $25.0 = $6.51
Tallysonnet656,367116,8683830.250.000M x $2.0 + 0.056M x $4.0 + 0.117M x $0.2 + 0.000M x $10.0 = $0.25
The Counselorsonnet1033,041161,4385710.170.000M x $2.0 + 0.033M x $4.0 + 0.161M x $0.2 + 0.001M x $10.0 = $0.17
The Scribesonnet729,811129,1683650.150.000M x $2.0 + 0.030M x $4.0 + 0.129M x $0.2 + 0.000M x $10.0 = $0.15
The Scribefable13,35372,425202,4741,1711.690.013M x $10.0 + 0.072M x $20.0 + 0.202M x $0.25 + 0.001M x $50.0 = $1.69
The Scribeopus13,37157,781655,3681,8991.020.013M x $5.0 + 0.058M x $10.0 + 0.655M x $0.5 + 0.002M x $25.0 = $1.02
The Scribeopus13,35346,824160,7346590.630.013M x $5.0 + 0.047M x $10.0 + 0.161M x $0.5 + 0.001M x $25.0 = $0.63
The Scribeopus13,35748,296268,9588880.710.013M x $5.0 + 0.048M x $10.0 + 0.269M x $0.5 + 0.001M x $25.0 = $0.71
The Counselorsonnet1546,761414,0101080.270.000M x $2.0 + 0.047M x $4.0 + 0.414M x $0.2 + 0.000M x $10.0 = $0.27
The Counselorsonnet931,777162,4716550.170.000M x $2.0 + 0.032M x $4.0 + 0.162M x $0.2 + 0.001M x $10.0 = $0.17
The Scribesonnet1031,433252,8588000.180.000M x $2.0 + 0.031M x $4.0 + 0.253M x $0.2 + 0.001M x $10.0 = $0.18
The Challengeropus13,34939,42749,7859620.510.013M x $5.0 + 0.039M x $10.0 + 0.050M x $0.5 + 0.001M x $25.0 = $0.51
Grok pass 1grok-4.3~2,958 (est)n/an/a~2,958 (est)0.0111(11833/4)/1e6 x $1.25 + (11832/4)/1e6 x $2.5 = $0.0111
Total12.27Claude 12.26 + Grok 0.0111

Within each example, the Conductor is the largest priced role cost, while the repeated Scribe legs form another visible share and the other recorded roles remain smaller. That is a reading of task allocation and cache traffic inside these runs, not a reusable rate card or evidence that one role normally costs more than another.

Fields and limits

The downloadable JSON uses the source fields below. No native billing field is added when the accounting does not contain one.

  • as_of: date through which the published dataset was refreshed.
  • pricing_basis: fetched date, source URLs, rates, cache-write basis, model mappings, and the Grok byte-to-token estimate.
  • runs[].run, date, workflow, and schema_version: the recorded run identifier and context.
  • runs[].produced.kind and runs[].produced.slug: the published output description.
  • runs[].coverage: the run-level coverage label.
  • runs[].legs[].agent, model, and tokens: the recorded agent label, model label, and input, cache creation, cache read, and output token fields.
  • runs[].legs[].confidence, recorded, and captured: the evidence state used to decide whether a leg enters totals.
  • runs[].legs[].usd_equiv and formula: the leg-level modeled API-equivalent amount and arithmetic, or null when unavailable.
  • runs[].grok_calls[].bytes_in, bytes_out, tokens_in_est, tokens_out_est, usd, and formula: the byte evidence, estimated tokens, modeled amount, and arithmetic for a successful recorded pass.
  • runs[].totals: captured-token totals, coverage counts, and modeled-equivalent totals. A null cost is unavailable, not zero. The legacy claude_usd_equiv name remains in this object even when measured GPT legs make a complete priced run total unavailable.
  • rollup: a summary restricted to complete-coverage essay runs.
  • notes: dataset-wide interpretation limits.

This sample cannot establish a typical cost, predict a future run, reconstruct an invoice, or compare providers on an equal billing basis. Pricing, aliases, plan terms, prompts, tools, workflow shape, cache behavior, and record completeness can change the result. Download the source dataset at devweb.org/data/run-costs.json.

Citation and update note

To cite the page, use: "devweb.org, 'Claude Code agent run costs: recorded tokens and modeled API-equivalent pricing,' https://devweb.org/data/run-costs, accessed [your access date]. Data as of 2026-09-07."

When citing a dollar figure, identify it as a modeled API-equivalent amount. For example: "The recorded clean-audit-run-proves-nothing example reports $12.27 in modeled API-equivalent cost as of 2026-09-07." Do not describe it as billed spend.

Update note, 2026-09-07: refreshed the recorded-run sample, coverage labels, source fields, pricing-source verification, and modeled-cost arithmetic. The original publication date remains 2026-09-06. This page changes only when its maintainers publish a new revision. It does not regenerate automatically or follow a schedule.

$ cat sources.txt