Foresight Labs · Research

What ARC-AGI-3 costs: Nodecode against Claude Code and the Codex CLI

M. Dy & T. de Vos, Foresight Labs

FL-2026-00615 Oct 2026ReportAgents, Benchmarks

Abstract. We ran Nodecode on the 25 public ARC-AGI-3 games with Opus 5.5 and with GPT-6.1 Sol, both at xhigh reasoning, next to the coding agent each model's maker ships, and priced every token at the provider's official price. On Opus 5.5, Nodecode and Claude Code both score 100 on all 25 games; Nodecode pays $124.09 and Claude Code $209.67, so Nodecode pays 41% less. On GPT-6.1 Sol, Nodecode and OpenAI's Codex CLI, which plays through Prime Intellect's published game adapter, both win all 25 games. Nodecode pays $32.55 and the Codex CLI $42.97: 24% less, with 66% fewer tokens. The Codex CLI scores 99.9 to Nodecode's 99.5 because it took fewer actions to win. In both pairs the gap in tokens is wider than the gap in cost, because most of the tokens a harness sends are cache reads, the cheapest kind.

1. Research

ARC-AGI-3, from the ARC Prize Foundation, is a benchmark of turn-based games that come with no instructions. An agent has to work out each game's rules and goal by playing it, and wins a game by clearing all of its levels. The score rewards doing that in about as few actions as a human: a level scores (human baseline actions / actions taken)², capped at 115%, level i has weight i, and a won game is capped at 100. We used the 25 public games, 183 levels in all.

On each model we ran Nodecode next to its maker's coding agent, Claude Code on Opus 5.5 and the Codex CLI on GPT-6.1 Sol, all at xhigh reasoning. Each harness counts one run per game; where a game was played more than once, the best run counts, for every harness alike. Our GPT-6.1 Sol runs reached the model through a LiteLLM gateway and a third-party API relay.

We report cost as well as tokens. A token count puts a cache read, which costs 20 cents a million on Opus 5.5, next to an output token at 20 dollars a million, and price does the weighting. ARC Prize reports its leaderboard in dollars as well, so our runs can stand next to theirs. Costs use the providers' official prices of 11 October 2026, per million tokens:

ModelInputCache readCache writeOutput
Opus 5.5$4.00$0.20$5.00 (5 minutes), $8.00 (1 hour)$20.00
GPT-6.1 Sol$2.00$0.10$2.50$10.00

On GPT-6.1 Sol we price every uncached input token as a cache write, the higher of the two rates, for every harness alike. Both providers count reasoning tokens as output tokens.

2. Results

On Opus 5.5

NodecodeClaude Code
Score, mean of 25 games100100
Levels won183 of 183183 of 183
Cost$124.09$209.67
Cost a game$4.96$8.39
Dearest game$15.81$28.44
Model calls2,333 (93 a game)2,241 (90 a game)
Tokens, all kinds180.6M393.0M
Tokens a call77,000175,000
Output tokens2.85M (1,222 a call)4.11M (1,836 a call)
Cache reads171.1M382.6M
Cache writes6.5M6.4M
Game actions7,103 (284 a game)6,695 (268 a game)
Active play9.1 hours14.7 hours

Both harnesses win every level of every game and both score 100. Nodecode spends 41% less and uses 54% fewer tokens. The two make nearly the same number of model calls, so the saving is in what each call carries: a Claude Code call reads 2.2 times the context of a Nodecode call and writes 1.5 times the output. Of Nodecode's $124, about $57 is output, $34 cache reads and $33 cache writes; of Claude Code's $210, $82 is output, $77 cache reads and $51 cache writes, some of them at the one-hour rate (Figure 4a).

On GPT-6.1 Sol

NodecodeCodex CLI
Score, mean of 25 games99.599.9
Games won25 of 2525 of 25
Levels won183 of 183183 of 183
Cost$32.55$42.97
Cost a game$1.30$1.72
Dearest game$4.49 (lf52)$4.79 (sk48)
Model calls2,822 (113 a game)2,298 (92 a game)
Tokens, all kinds57.8M171.7M
Tokens a call20,50074,700
Output tokens1.08M (383 a call)1.12M (489 a call)
Cache reads50.0M164.5M
Uncached input6.7M6.1M
Game actions8,920 (357 a game)7,575 (303 a game)

Both harnesses win every level of every game. Nodecode pays 24% less and sends 66% fewer tokens; the Codex CLI scores 0.4 points more (99.93 against 99.54). The score gap is action efficiency: Nodecode loses points on bp35 (90.5), ft09 and sk48 (99.0 each), the Codex CLI only on g50t (98.3). Nodecode's $32.55 splits into $10.81 of output, $5.00 of cache reads and $16.74 of uncached input; the Codex CLI's $42.97 into $11.23 of output, $16.45 of cache reads and $15.29 of uncached input (Figure 4b). The two write the same output and pay nearly the same for uncached input. The gap is in cache reads: a Codex CLI call carries 74,700 tokens against Nodecode's 20,500.

We leave play time out on this model. On one day of the runs the API relay answered about three times slower than the day before, so the clock would measure the relay.

Across the two models, Nodecode on GPT-6.1 Sol plays the 25 games for about a quarter of what Nodecode on Opus 5.5 pays, and scores half a point lower.

Score against tokens and cost

Figures 1 and 2 show each run as it accumulates. A line plays its games back to back in alphabetical order, the same order for every harness, and steps up at every level won, so it ends on the harness's mean score at its total tokens or total cost. The order bends the middle of a line but not its end.

Two panels of running mean score against cumulative tokens. On Opus 5.5 Nodecode reaches 100 at 180.6 million tokens and Claude Code at 393.0 million. On GPT-6.1 Sol Nodecode reaches 99.5 at 57.8 million and the Codex CLI 99.9 at 171.7 million.
Figure 1. Running mean score against cumulative tokens on the 25 public ARC-AGI-3 games: (a) Opus 5.5, (b) GPT-6.1 Sol, both at xhigh reasoning. Tokens are all kinds: input, cache reads, cache writes and output. The dotted line is the human baseline, 95.4 (Prime Intellect, arXiv 2608.23552, figure 5). The panels have different x scales.
Two panels of running mean score against cumulative cost. On Opus 5.5 Nodecode reaches 100 at $124.09 and Claude Code at $209.67. On GPT-6.1 Sol Nodecode reaches 99.5 at $32.55 and the Codex CLI 99.9 at $42.97.
Figure 2. The runs of Figure 1 against cumulative cost at the prices in section 1, with uncached input on GPT-6.1 Sol priced as a cache write. In dollars the GPT-6.1 Sol lines sit closer together than in tokens: Nodecode pays 24% less while sending 66% fewer tokens.

Per game

Figure 3 pairs the two harnesses game by game. On Opus 5.5 Nodecode costs less on 23 of the 25 games, and more on g50t ($3.94 against $3.82) and tr87 ($3.85 against $3.42). On GPT-6.1 Sol it costs less on 20 of 25, and more on bp35, cn04, lf52, lp85 and sp80. A game costs Nodecode between $0.67 and $15.81 on Opus 5.5 and between $0.22 and $4.49 on GPT-6.1 Sol, so a handful of long games weigh heavily in each total.

Two dot plots of the cost of each game, Nodecode against Claude Code on Opus 5.5 and against the Codex CLI on GPT-6.1 Sol, games sorted by the other harness's cost.
Figure 3. Cost of each game, Nodecode (filled) beside the other harness on the same model (open): (a) Opus 5.5 against Claude Code, (b) GPT-6.1 Sol against the Codex CLI. Games are sorted by the other harness's cost.

3. Turns, tokens, money

Turns. A model call is a look at the board followed by a move or a few. On Opus 5.5 both harnesses make about 90 calls a game, and Nodecode makes 4% more calls than Claude Code while paying 41% less, so the number of calls alone says nothing about cost. On GPT-6.1 Sol Nodecode makes 113 calls a game and the Codex CLI 92, and again the harness that makes more calls pays less.

Tokens. A call carries the whole conversation so far, or what the harness keeps of it. Claude Code carries 175,000 tokens a call on average and Nodecode 77,000 on the same model; on GPT-6.1 Sol Nodecode carries 20,500 and the Codex CLI 74,700. Almost all of it is cached. That is why a token count overstates the cost difference between two harnesses on the same provider (54% fewer tokens and 41% less money on Opus 5.5; 66% fewer tokens and 24% less money on GPT-6.1 Sol), and why token counts cannot be compared across providers at all.

Money. Output is the dearest kind of token, 100 times a cache read on both providers, and uncached input comes next, 25 times a cache read on GPT-6.1 Sol. A dollar figure is what a user pays and what ARC Prize measures, so it is the figure we report. Figure 4 splits each total by kind of token.

Stacked horizontal bars of cost by kind of token. Opus 5.5: Claude Code $82.30 output, $50.86 cache writes, $76.51 cache reads; Nodecode $57.04, $32.82, $34.23. GPT-6.1 Sol: Codex CLI $11.23 output, $15.29 uncached input, $16.45 cache reads; Nodecode $10.81, $16.74, $5.00.
Figure 4. Cost by kind of token: (a) Opus 5.5, (b) GPT-6.1 Sol. Output and cache reads are priced from their token counts. The middle segment is the rest of each total: cache writes on Opus 5.5, some of them at the one-hour rate, and uncached input priced as a cache write on GPT-6.1 Sol.

4. Further work

Two parts of Nodecode's bill need further investigation for future improvements.

The first is the balance between input and output tokens. On GPT-6.1 Sol Nodecode sends 66% fewer tokens than the Codex CLI and pays 24% less, because the tokens it saves are cache reads. Most of its bill is uncached input ($16.74) and output ($10.81), and it makes 113 calls a game against the Codex CLI's 92. We do not yet know how a harness should trade the context it carries on each call against the number of calls it makes and the output each one writes.

The second is the context file. On GPT-6.1 Sol, Nodecode gives the model its own context as a file to edit, so the model can drop spans of the conversation it no longer needs and leave a note in their place. That keeps each call small, 20,500 tokens against the Codex CLI's 74,700. An edit changes the prompt early on, though, so everything after the cut goes uncached: the 153 calls that came right after an edit sent 0.52 million tokens uncached. We do not yet know when the model should edit, what it should drop, or how its edits meet the provider's cache.

Acknowledgements

We thank the ARC Prize Foundation for ARC-AGI-3, whose games and scoring rules this study is built on.