{
 "measurement": "Cost of parallel subagents in Claude Code, by agent count",
 "claude_code_version": "2.1.227",
 "method": {
  "task": "Each subagent creates one file containing the single word DONE. The inline arm creates the same files without subagents.",
  "arrival_control": "The N files must exist on disk after the run. A run whose file count != N is recorded unscored, never averaged in.",
  "tokens": "modelUsage summed over inputTokens + cacheCreationInputTokens + cacheReadInputTokens across all models. NOT .usage, which does not count subagent tokens.",
  "isolation": "--setting-sources project on the isolated arms, which excludes user-level configuration. The unisolated arm deliberately omits it because the configuration is that arm subject.",
  "pairing": "inline and fanout arms measured in the same round, because the session baseline drifts."
 },
 "runs": {
  "fanout_ladder_session_1": [
   {
    "n": 1,
    "status": "ok",
    "agents_requested": 1,
    "files_created": 1,
    "files": [
     "agent-1.txt"
    ],
    "context_tokens": 64748,
    "output_tokens": 446,
    "turns": 2,
    "cost": 0.06621600000000001,
    "wall": 13.5,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "status": "ok",
    "agents_requested": 2,
    "files_created": 2,
    "files": [
     "agent-1.txt",
     "agent-2.txt"
    ],
    "context_tokens": 85098,
    "output_tokens": 902,
    "turns": 3,
    "cost": 0.11164600000000001,
    "wall": 14.7,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "status": "ok",
    "agents_requested": 4,
    "files_created": 4,
    "files": [
     "agent-1.txt",
     "agent-2.txt",
     "agent-3.txt",
     "agent-4.txt"
    ],
    "context_tokens": 125767,
    "output_tokens": 1950,
    "turns": 5,
    "cost": 0.26827925,
    "wall": 28.0,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "status": "ok",
    "agents_requested": 8,
    "files_created": 8,
    "files": [
     "agent-1.txt",
     "agent-2.txt",
     "agent-3.txt",
     "agent-4.txt",
     "agent-5.txt",
     "agent-6.txt",
     "agent-7.txt",
     "agent-8.txt"
    ],
    "context_tokens": 206668,
    "output_tokens": 3506,
    "turns": 9,
    "cost": 0.4392312499999999,
    "wall": 28.8,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "status": "ok",
    "agents_requested": 1,
    "files_created": 1,
    "files": [
     "agent-1.txt"
    ],
    "context_tokens": 64809,
    "output_tokens": 482,
    "turns": 2,
    "cost": 0.13044575,
    "wall": 14.9,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "status": "ok",
    "agents_requested": 2,
    "files_created": 2,
    "files": [
     "agent-1.txt",
     "agent-2.txt"
    ],
    "context_tokens": 85289,
    "output_tokens": 1107,
    "turns": 3,
    "cost": 0.18160325,
    "wall": 15.7,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "status": "ok",
    "agents_requested": 4,
    "files_created": 4,
    "files": [
     "agent-1.txt",
     "agent-2.txt",
     "agent-3.txt",
     "agent-4.txt"
    ],
    "context_tokens": 126031,
    "output_tokens": 2114,
    "turns": 5,
    "cost": 0.27360824999999994,
    "wall": 26.7,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "status": "ok",
    "agents_requested": 8,
    "files_created": 8,
    "files": [
     "agent-1.txt",
     "agent-2.txt",
     "agent-3.txt",
     "agent-4.txt",
     "agent-5.txt",
     "agent-6.txt",
     "agent-7.txt",
     "agent-8.txt"
    ],
    "context_tokens": 205038,
    "output_tokens": 2993,
    "turns": 9,
    "cost": 0.41755375000000006,
    "wall": 22.0,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "status": "ok",
    "agents_requested": 1,
    "files_created": 1,
    "files": [
     "agent-1.txt"
    ],
    "context_tokens": 64824,
    "output_tokens": 462,
    "turns": 2,
    "cost": 0.129914,
    "wall": 13.6,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "status": "ok",
    "agents_requested": 2,
    "files_created": 2,
    "files": [
     "agent-1.txt",
     "agent-2.txt"
    ],
    "context_tokens": 85192,
    "output_tokens": 1075,
    "turns": 3,
    "cost": 0.18602950000000001,
    "wall": 24.8,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "status": "ok",
    "agents_requested": 4,
    "files_created": 4,
    "files": [
     "agent-1.txt",
     "agent-2.txt",
     "agent-3.txt",
     "agent-4.txt"
    ],
    "context_tokens": 141513,
    "output_tokens": 2540,
    "turns": 5,
    "cost": 0.1628346,
    "wall": 22.1,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "status": "ok",
    "agents_requested": 8,
    "files_created": 8,
    "files": [
     "agent-1.txt",
     "agent-2.txt",
     "agent-3.txt",
     "agent-4.txt",
     "agent-5.txt",
     "agent-6.txt",
     "agent-7.txt",
     "agent-8.txt"
    ],
    "context_tokens": 206288,
    "output_tokens": 3377,
    "turns": 9,
    "cost": 0.43322724999999995,
    "wall": 28.4,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   }
  ],
  "paired_inline_vs_fanout_session_2": [
   {
    "n": 1,
    "arm": "inline",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 44738,
    "output_tokens": 179,
    "turns": 2,
    "wall": 6.9,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "arm": "fanout",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 64941,
    "output_tokens": 567,
    "turns": 2,
    "wall": 13.9,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "arm": "inline",
    "status": "ok",
    "files_created": 2,
    "context_tokens": 45066,
    "output_tokens": 349,
    "turns": 3,
    "wall": 8.0,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "arm": "fanout",
    "status": "ok",
    "files_created": 2,
    "context_tokens": 85138,
    "output_tokens": 911,
    "turns": 3,
    "wall": 16.0,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "arm": "inline",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 45654,
    "output_tokens": 662,
    "turns": 5,
    "wall": 10.5,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "arm": "fanout",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 125856,
    "output_tokens": 1866,
    "turns": 5,
    "wall": 21.7,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "arm": "inline",
    "status": "ok",
    "files_created": 8,
    "context_tokens": 46832,
    "output_tokens": 1293,
    "turns": 9,
    "wall": 15.3,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "arm": "fanout",
    "status": "ok",
    "files_created": 8,
    "context_tokens": 207729,
    "output_tokens": 4414,
    "turns": 9,
    "wall": 31.3,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "arm": "inline",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 44738,
    "output_tokens": 181,
    "turns": 2,
    "wall": 6.2,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "arm": "fanout",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 65172,
    "output_tokens": 587,
    "turns": 2,
    "wall": 14.8,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "arm": "inline",
    "status": "ok",
    "files_created": 2,
    "context_tokens": 45065,
    "output_tokens": 348,
    "turns": 3,
    "wall": 9.3,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "arm": "fanout",
    "status": "ok",
    "files_created": 2,
    "context_tokens": 85133,
    "output_tokens": 908,
    "turns": 3,
    "wall": 15.5,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "arm": "inline",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 45654,
    "output_tokens": 662,
    "turns": 5,
    "wall": 13.1,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "arm": "fanout",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 125791,
    "output_tokens": 1814,
    "turns": 5,
    "wall": 22.3,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "arm": "inline",
    "status": "ok",
    "files_created": 8,
    "context_tokens": 46834,
    "output_tokens": 1297,
    "turns": 9,
    "wall": 15.6,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "arm": "fanout",
    "status": "ok",
    "files_created": 8,
    "context_tokens": 288040,
    "output_tokens": 3497,
    "turns": 1,
    "wall": 28.3,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "arm": "inline",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 44738,
    "output_tokens": 181,
    "turns": 2,
    "wall": 7.7,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 1,
    "arm": "fanout",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 64829,
    "output_tokens": 463,
    "turns": 2,
    "wall": 13.1,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "arm": "inline",
    "status": "ok",
    "files_created": 2,
    "context_tokens": 45065,
    "output_tokens": 348,
    "turns": 3,
    "wall": 8.6,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 2,
    "arm": "fanout",
    "status": "ok",
    "files_created": 2,
    "context_tokens": 85141,
    "output_tokens": 910,
    "turns": 3,
    "wall": 17.1,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "arm": "inline",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 45654,
    "output_tokens": 662,
    "turns": 5,
    "wall": 10.2,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 4,
    "arm": "fanout",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 127239,
    "output_tokens": 2314,
    "turns": 5,
    "wall": 28.2,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "arm": "inline",
    "status": "ok",
    "files_created": 8,
    "context_tokens": 46832,
    "output_tokens": 1293,
    "turns": 9,
    "wall": 16.9,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   },
   {
    "n": 8,
    "arm": "fanout",
    "status": "ok",
    "files_created": 8,
    "context_tokens": 206913,
    "output_tokens": 3563,
    "turns": 9,
    "wall": 29.5,
    "reply": "FINISHED",
    "models": [
     "claude-haiku-4-5-20251001",
     "claude-opus-5[1m]"
    ]
   }
  ],
  "fanout_unisolated": [
   {
    "n": 1,
    "arm": "fanout_unisolated",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 212097,
    "turns": 2,
    "wall": 19.5
   },
   {
    "n": 4,
    "arm": "fanout_unisolated",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 489223,
    "turns": 5,
    "wall": 29.5
   },
   {
    "n": 1,
    "arm": "fanout_unisolated",
    "status": "ok",
    "files_created": 1,
    "context_tokens": 212101,
    "turns": 2,
    "wall": 14.2
   },
   {
    "n": 4,
    "arm": "fanout_unisolated",
    "status": "ok",
    "files_created": 4,
    "context_tokens": 488802,
    "turns": 5,
    "wall": 21.6
   }
  ],
  "configuration_size_paired": [
   {
    "isolated": true,
    "round": 0,
    "ctx": 44694,
    "files": 1
   },
   {
    "isolated": false,
    "round": 0,
    "ctx": 120159,
    "files": 1
   },
   {
    "isolated": true,
    "round": 1,
    "ctx": 44694,
    "files": 1
   },
   {
    "isolated": false,
    "round": 1,
    "ctx": 120160,
    "files": 1
   }
  ]
 },
 "results": {
  "headline_figure_as_published": 20398,
  "derivation": "(context at 8 agents minus context at 1 agent) divided by 7, i.e. the marginal cost of each ADDITIONAL parallel subagent, on the isolated paired fan-out arm of session 2. Using ctx@8 = 207,729 and ctx@1 = 64,941 gives 20,398.29, which the post rounds to 20,398.",
  "why_this_is_being_added_now": "The figure was published in the post title and receipts from 2026-08-13 and was never written into this corpus, which carried raw runs and no results block. A receipt-figure checker added on 2026-08-21 flagged that the post's own title figure was not traceable to the corpus it cites. It is traceable; the derivation simply was not stated. Nothing about the measurement changed.",
  "the_exact_pair_used": {
   "context_at_1_agent": 64941,
   "context_at_8_agents": 207729,
   "same_pair_backs_two_other_published_figures": "8 x 64,941 = 519,528, the cost of running eight one-agent sessions, and 207,729 / 64,941 = 3.20x, both quoted in the post."
  },
  "it_rests_on_one_pair_of_runs": {
   "all_valid_pairs": [
    20248.71,
    20281.71,
    20297.71,
    20365.29,
    20398.29,
    20414.29
   ],
   "range": [
    20248.71,
    20414.29
   ],
   "reading": "Three runs at n=1 and two usable runs at n=8 give six pairings, spanning 20,249 to 20,414. The published 20,398 is one of them, not a median or a mode over rounds. A reader should treat it as a point inside that band.",
   "excluded_run": {
    "context_tokens": 288040,
    "n": 8,
    "why": "One n=8 run recorded 288,040 against 206,913 and 207,729. That run is the slow execution mode this site measured separately: a fan-out lands in one of two modes differing by about 53%, published in fanout-modes.json. Including it gives roughly 31,900 per additional agent, which is a different mode rather than noise."
   }
  },
  "what_this_does_not_claim": "This block documents how the already-published figure was derived from these runs. It is not a re-measurement and it does not revise the number.",
  "configured_machine_figure_92304": {
   "as_published": 92304,
   "derivation": "(mean context at 4 agents minus mean context at 1 agent) divided by 3, on the UNISOLATED arm, which deliberately omits --setting-sources project because user-level configuration is that arm's subject.",
   "means_used": {
    "mean_at_1": 212099,
    "mean_at_4": 489012.5,
    "value": 92304.5
   },
   "all_pairs": [
    92233.67,
    92235.0,
    92374.0,
    92375.33
   ]
  },
  "inline_figure_299": {
   "as_published": 299,
   "derivation": "(context at 8 files minus context at 1 file) divided by 7, on the INLINE arm.",
   "all_pairs": [
    299.14,
    299.14,
    299.14,
    299.14,
    299.14,
    299.14,
    299.43,
    299.43,
    299.43
   ],
   "mean_form": 299.24,
   "reading": "Every pairing and the mean form all round to 299, so this figure is not sensitive to which runs are used."
  },
  "THE_TWO_HEADLINE_FIGURES_USE_DIFFERENT_ESTIMATORS": "Recording this because it is a real inconsistency and this site's own rule is to declare ONE estimator. The isolated figure 20,398 is a SINGLE PAIR of runs, (207,729 - 64,941)/7; the six valid pairings span 20,249 to 20,414. The configured figure 92,304 is a MEAN of runs, (mean@4 - mean@1)/3; its four pairings span 92,234 to 92,375. Both are inside their own bands and neither is wrong, but they are not the same estimator and the post presents them side by side as though they were. Documented rather than silently re-derived, because changing a published figure is a bigger act than explaining it."
 }
}