SpaceChem Bench: It Takes Three

Inputs: α Hydrogen (H), β Nitrogen (N). Output: ψ Ammonia (NH3) ×10. Features: Bonders (4).

In SpaceChem Bench, 16 LLMs each had one attempt at this SpaceChem puzzle, with 10 minutes to build a working solution and keep optimizing it, without seeing the community archive. 6 of 16 models solved it. No model found a new Pareto-frontier point beyond the frozen community archive.

6 / 16models solved it
143best LLM cycles (102 community)
0new frontier points

Records

ScoreCommunity bestBest LLMModel
Cycles102143GPT-6 Astra · +40%
Reactors11DeepSeek V4.1 Flash Ties record
Symbols1414GPT-6 Astra Ties record

Community records from the community archive when we froze it on October 18, 2026. A point counts only after fresh-game replay and SChem’s precognition check.

Pareto frontier

Pareto explorer

Lower is better ↙
Loading interactive Pareto explorer…
Community archiveModel frontier pointNew frontier point
Select a point with the mouse or keyboard to inspect its scores and reactor blueprint.

Search over time

Loading puzzle trajectories…

Every model

ModelSolvedBest cyclesBest reactorsBest symbolsNew frontier points
01GPT-6 AstraYes143114—
02Opus 5.5Yes146120—
03Gemini 4 ArgonYes225114—
04DeepSeek V4.1 FlashYes329124—
05GPT-6.1 SolYes380127—
06Sonnet 5.5Yes714124—
07Fable 5.1No————
08GLM-5.3No————
09GPT-6 LunaNo————
10Gemini 3.8 FlashNo————
11Grok 4.7No————
12Haiku 5.5No————
13Kimi K3.1 ProNo————
14MiMo-V2.6-ProNo————
15Muse Spark 1.3No————
16Muse Wonder 1.0No————

Best scores can come from different solutions. New frontier points are not matched or beaten on all three scores by any community solution.

Best model solutions

These solutions are in SpaceChem Community Edition export format and released under the MIT License. All of this puzzle’s model solutions are on GitHub and Hugging Face.

GPT-6 Astra Fewest cyclesFewest reactors

143 cycles · 1 reactor · 20 symbolsbonding_3.143-1-20.txt on GitHub

Layout

α β ψ ω 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 ↓ → ← ↑ ↓ ← → ← S→ S← IN α IN α IN α OUT ψ GRAB DROP GRAB B+ B+ DROP B+ IN β

Running in the game

GPT-6 Astra solution running on bonding_3 in SpaceChem
SpaceChem Community Edition export (bonding_3.143-1-20.txt)
SOLUTION:It Takes Three,Player,0-0-0
COMPONENT:'drag-starter-reactor',2,0,''
MEMBER:'instr-start',0,0,32,4,2,0,0
MEMBER:'instr-start',180,0,128,3,5,0,0
MEMBER:'feature-bonder',-1,0,1,1,1,0,0
MEMBER:'feature-bonder',-1,0,1,1,0,0,0
MEMBER:'feature-bonder',-1,0,1,0,1,0,0
MEMBER:'feature-bonder',-1,0,1,1,2,0,0
MEMBER:'instr-arrow',90,0,64,0,0,0,0
MEMBER:'instr-arrow',0,0,64,0,2,0,0
MEMBER:'instr-arrow',180,0,64,1,0,0,0
MEMBER:'instr-arrow',-90,0,64,1,5,0,0
MEMBER:'instr-arrow',90,0,64,2,2,0,0
MEMBER:'instr-arrow',180,0,64,2,5,0,0
MEMBER:'instr-input',-1,0,128,0,0,0,0
MEMBER:'instr-input',-1,0,128,0,2,0,0
MEMBER:'instr-input',-1,0,128,1,0,0,0
MEMBER:'instr-output',-1,0,128,1,4,0,0
MEMBER:'instr-grab',-1,1,128,1,5,0,0
MEMBER:'instr-grab',-1,2,128,2,2,0,0
MEMBER:'instr-arrow',0,0,16,2,2,0,0
MEMBER:'instr-arrow',180,0,16,9,2,0,0
MEMBER:'instr-grab',-1,1,32,2,2,0,0
MEMBER:'instr-bond',-1,0,32,3,2,0,0
MEMBER:'instr-bond',-1,0,32,5,2,0,0
MEMBER:'instr-grab',-1,2,32,6,2,0,0
MEMBER:'instr-bond',-1,0,32,7,2,0,0
MEMBER:'instr-input',-1,1,128,2,5,0,0

GPT-6 Astra Fewest symbols

215 cycles · 1 reactor · 14 symbolsbonding_3.215-1-14.txt on GitHub

Layout

α β ψ ω 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 ↓ → ← ↑ ↓ ← S← S↓ IN α IN α IN α GRAB IN β DROP OUT ψ B+

Running in the game

GPT-6 Astra solution running on bonding_3 in SpaceChem
SpaceChem Community Edition export (bonding_3.215-1-14.txt)
SOLUTION:It Takes Three,Player,0-0-0
COMPONENT:'drag-starter-reactor',2,0,''
MEMBER:'instr-start',180,0,128,3,5,0,0
MEMBER:'instr-start',90,0,32,9,6,0,0
MEMBER:'feature-bonder',-1,0,1,1,1,0,0
MEMBER:'feature-bonder',-1,0,1,1,0,0,0
MEMBER:'feature-bonder',-1,0,1,0,1,0,0
MEMBER:'feature-bonder',-1,0,1,1,2,0,0
MEMBER:'instr-arrow',90,0,64,0,0,0,0
MEMBER:'instr-arrow',0,0,64,0,2,0,0
MEMBER:'instr-arrow',180,0,64,1,0,0,0
MEMBER:'instr-arrow',-90,0,64,1,5,0,0
MEMBER:'instr-arrow',90,0,64,6,2,0,0
MEMBER:'instr-arrow',180,0,64,6,5,0,0
MEMBER:'instr-input',-1,0,128,0,0,0,0
MEMBER:'instr-input',-1,0,128,0,2,0,0
MEMBER:'instr-input',-1,0,128,1,0,0,0
MEMBER:'instr-grab',-1,1,128,1,5,0,0
MEMBER:'instr-input',-1,1,128,2,5,0,0
MEMBER:'instr-grab',-1,2,128,6,2,0,0
MEMBER:'instr-output',-1,0,128,6,3,0,0
MEMBER:'instr-bond',-1,0,32,9,7,0,0