{"i":16,"slug":"single-call-vs-agent-loop","chart":{"id":"agent-loop-tokens","title":"Tokens per attempt: single call vs agent loop","subtitle":"Median per configuration; whiskers = fewest and most","kind":"grouped-bar","unit":"tokens","yLabel":"Tokens","series":[{"name":"Input tokens (cache reads included)","points":{"$k":["label","value","lo","hi","n"],"$r":[["Claude Haiku 4.5 (single call) · Claude Code",3941,3879,4221,24],["Claude Haiku 4.5 (agent loop) · Claude Code",71691,41732,516306,24],["Claude Sonnet 5.5 (single call) · Claude Code",2281,2234,2669,24],["Claude Sonnet 5.5 (agent loop) · Claude Code",9550,9398,33040,16],["GPT-6 Luna (single call) · Codex CLI",11582,11526,11818,16],["GPT-6 Luna (agent loop) · Codex CLI",15530,15391,39009,14]]}},{"name":"Output tokens","points":{"$k":["label","value","lo","hi","n"],"$r":[["Claude Haiku 4.5 (single call) · Claude Code",5064,1899,9321,24],["Claude Haiku 4.5 (agent loop) · Claude Code",7912,2541,20654,24],["Claude Sonnet 5.5 (single call) · Claude Code",1050,176,3895,24],["Claude Sonnet 5.5 (agent loop) · Claude Code",876,219,3243,16],["GPT-6 Luna (single call) · Codex CLI",345,36,634,16],["GPT-6 Luna (agent loop) · Codex CLI",480,143,858,14]]}}],"note":"Whiskers are a range (fewest and most), not a confidence interval. Input counts the whole prompt of every model request in the attempt, cache reads and writes included; an agent loop re-sends its growing context each turn. Codex input includes its own system prompt and tool schemas. More tokens is not better or worse by itself.","whisker":"minmax","sourceIds":["agent-agent-loop","agent-provider-h2h-hard"]}}