SpaceChem Bench: Split Before Bonding

Inputs: α Hydrogen (H2), β Oxygen (O2). Output: ψ Hydrogen Peroxide (H2O2) ×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. 9 of 16 models solved it. No model found a new Pareto-frontier point beyond the frozen community archive.

9 / 16models solved it
83best LLM cycles (73 community)
0new frontier points

Records

ScoreCommunity bestBest LLMModel
Cycles7383GPT-6.1 Sol · +14%
Reactors11Fable 5.1 Ties record
Symbols1113GPT-6 Astra · +18%

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.1 SolYes83113—
02Gemini 4 ArgonYes119115—
03Gemini 3.8 FlashYes155119—
04GPT-6 AstraYes156113—
05Fable 5.1Yes165123—
06Opus 5.5Yes165126—
07Kimi K3.1 ProYes215125—
08Muse Wonder 1.0Yes311134—
09Sonnet 5.5Yes417130—
10DeepSeek V4.1 FlashNo————
11GLM-5.3No————
12GPT-6 LunaNo————
13Grok 4.7No————
14Haiku 5.5No————
15MiMo-V2.6-ProNo————
16Muse Spark 1.3No————

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.1 Sol Fewest cyclesFewest reactors

83 cycles · 1 reactor · 22 symbolsbonding_4.83-1-22.txt on GitHub

Layout

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

Running in the game

GPT-6.1 Sol solution running on bonding_4 in SpaceChem
SpaceChem Community Edition export (bonding_4.83-1-22.txt)
SOLUTION:Split Before Bonding,Player,0-0-0
COMPONENT:'drag-starter-reactor',2,0,''
MEMBER:'instr-start',180,0,128,3,5,0,0
MEMBER:'instr-start',0,0,32,4,2,0,0
MEMBER:'feature-bonder',-1,0,1,1,1,0,0
MEMBER:'feature-bonder',-1,0,1,1,2,0,0
MEMBER:'feature-bonder',-1,0,1,2,1,0,0
MEMBER:'feature-bonder',-1,0,1,2,2,0,0
MEMBER:'instr-arrow',0,0,64,1,2,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-bond',-1,1,128,1,2,0,0
MEMBER:'instr-input',-1,0,128,1,4,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,1,128,6,5,0,0
MEMBER:'instr-arrow',0,0,16,1,2,0,0
MEMBER:'instr-arrow',-90,0,16,1,5,0,0
MEMBER:'instr-arrow',90,0,16,6,2,0,0
MEMBER:'instr-arrow',180,0,16,6,5,0,0
MEMBER:'instr-bond',-1,0,32,1,2,0,0
MEMBER:'instr-input',-1,0,32,1,4,0,0
MEMBER:'instr-grab',-1,1,32,1,5,0,0
MEMBER:'instr-input',-1,1,32,2,5,0,0
MEMBER:'instr-grab',-1,2,32,6,2,0,0
MEMBER:'instr-output',-1,0,32,6,3,0,0
MEMBER:'instr-bond',-1,0,32,6,5,0,0

GPT-6.1 Sol Fewest symbols

155 cycles · 1 reactor · 13 symbolsbonding_4.155-1-13.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 α B− B+ GRAB IN β DROP OUT ψ

Running in the game

GPT-6.1 Sol solution running on bonding_4 in SpaceChem
SpaceChem Community Edition export (bonding_4.155-1-13.txt)
SOLUTION:Split Before Bonding,Player,0-0-0
COMPONENT:'drag-starter-reactor',2,0,''
MEMBER:'instr-start',-90,0,128,0,1,0,0
MEMBER:'instr-start',180,0,32,3,5,0,0
MEMBER:'feature-bonder',-1,0,1,1,1,0,0
MEMBER:'feature-bonder',-1,0,1,1,2,0,0
MEMBER:'feature-bonder',-1,0,1,2,1,0,0
MEMBER:'feature-bonder',-1,0,1,2,2,0,0
MEMBER:'instr-arrow',0,0,64,0,0,0,0
MEMBER:'instr-arrow',180,0,64,8,0,0,0
MEMBER:'instr-input',-1,0,128,0,0,0,0
MEMBER:'instr-bond',-1,1,128,4,0,0,0
MEMBER:'instr-arrow',0,0,16,1,2,0,0
MEMBER:'instr-arrow',-90,0,16,1,5,0,0
MEMBER:'instr-arrow',90,0,16,6,2,0,0
MEMBER:'instr-arrow',180,0,16,6,5,0,0
MEMBER:'instr-bond',-1,0,32,1,2,0,0
MEMBER:'instr-grab',-1,1,32,1,5,0,0
MEMBER:'instr-input',-1,1,32,2,5,0,0
MEMBER:'instr-grab',-1,2,32,6,2,0,0
MEMBER:'instr-output',-1,0,32,6,3,0,0