LADDER: A Long-Horizon Robot Manipulation Benchmark
Organizations: INSAIT, Sofia University “St. Kliment Ohridski” · NVIDIA
Abstract
General-purpose robot manipulation policies learn short-horizon skills effectively, but degrade rapidly on long-horizon tasks. Existing benchmarks cannot isolate failures because task horizon is either too short or entangled with scene and object variations. We propose LADDER, a long-horizon robot manipulation benchmark scaling from 1 to 10 subgoals within the same environment over three suites (SimplerEnv-Long, RobotArena--Long, and RoboLab-Long), 145 tasks, eight categories, two embodiments, and 2,024 simulated episodes per system. We evaluate two orchestration paradigms: text subgoals for learned low-level policies (VoLo) and tool selection orchestration (CaP-X, GPT-Policy, PSP-Agent, TiPToP). Given the full instruction directly, low-level policies achieve 85.4% on single-subgoal tasks, but drop to near zero on extended tasks. While orchestration remedies this, it remains bounded by physical execution errors of the low-level policy rather than high-level planning and achieves only ~25%. Tool selection orchestration with GPT-Policy on GPT-6 Astra significantly outperforms learned-policy methods, but incurs significant time and cost budget and succeeds only ~62%. Real-world experiments across two embodiments confirm the collapse of the low-level policy and the gain from orchestration. Project website: https://ladder.insait.ai
Figures & tables
| Benchmark | Sim-to-Real | Tasks | Avg Subgoals | Max Subgoals | Tasks with subgoals | Incremental Subgoal Tasks |
|---|---|---|---|---|---|---|
| CALVIN ( Mees et al. ) | 34 | 1.0 | 1 | 0 | 0 | |
| LIBERO-Long ( Liu et al. ) | 10 | 1.6 | 2 | 0 | 0 | |
| SimplerEnv ( Li et al. ) | ✓ | 4 | 1.0 | 1 | 0 | 0 |
| RobotArena- ( Jangir et al. ) | ✓ | 74 | 1.0 | 2 | 0 | 0 |
| RoboLab ( Yang et al. ) | ✓ | 120 | 1.9 | 11 | 4 | 56 |
| RoboVoLo ( Chen et al. ) | ✓ | 126 | 2.0 | 7 | 2 | 2 |
| System | Backend | Plan | Trigger | Verification | Recovery |
| Low-level policy | Learned policy | None | None | None | None |
| Periodic trigger | Learned policy | Text subgoals | Periodic | None | Advance |
| Proprioceptive trigger | Learned policy | Text subgoals | Proprioceptive | None | Advance |
| Proprioceptive verifier | Learned policy | Text subgoals | Proprioceptive | Visual (VLM) | Retry |
| VoLo ( Chen et al., 2026 ) | Learned policy | Text subgoals | Periodic | Visual (VLM) | Replan |
| Privileged verifier | Learned policy | Ground-truth subgoals | Privileged | Simulator state | Retry |
| Tasks | Low-level policy | Periodic trigger | Proprioceptive trigger | Proprioceptive verifier | VoLo | Privileged verifier | CaP-X | TiPToP | PSP-Agent | GPT-Policy |
|---|---|---|---|---|---|---|---|---|---|---|
| SimplerEnv-Long | 8.7 1.7 | 17.4 2.2 | 21.5 2.3 | 25.2 2.4 | 25.5 2.4 | 29.5 2.5 | 28.7 2.5 | 6.7 1.5 | 37.1 2.7 | 60.3 2.7 |
| RobotArena- -Long | 10.9 3.6 | 15.2 4.0 | 16.2 4.1 | 24.2 4.6 | 21.3 4.4 | 25.5 4.6 | 16.2 4.1 | 11.2 3.6 | 39.9 5.0 | 66.8 4.9 |
| RoboLab-Long | 19.6 4.5 | 25.6 4.8 | 28.1 4.9 | 25.6 4.8 | 29.0 4.9 | 34.4 5.1 | 20.7 4.5 | 17.3 4.3 | 51.4 5.2 | 62.8 5.2 |
| Single destination | 14.9 2.9 | 23.5 3.4 | 25.0 3.4 | 31.0 3.6 | 31.0 3.6 | 33.8 3.7 | 23.5 3.4 | 12.9 2.8 | 44.0 3.8 | 61.8 3.7 |
| Transfer | 16.7 6.9 | 14.6 6.7 | 14.6 6.7 | 15.3 6.8 | 27.1 7.8 | 26.4 7.7 | 43.8 8.2 | 10.4 6.1 | 36.1 8.1 | 68.8 8.0 |
| Split destination | 7.1 3.5 | 11.5 4.1 | 17.6 4.7 | 17.2 4.7 | 20.6 5.0 | 24.3 5.2 | 16.2 4.6 | 12.2 4.2 | 50.7 5.7 | 60.5 5.7 |
| Planning | Subgoal completion | State tracking | Next subgoal | Tokens | ||
|---|---|---|---|---|---|---|
| Model | exact match (%) | TP rate (%) | TN rate (%) | all correct (%) | valid (%) | per query |
| Qwen3-VL-2B | 75.2 7.6 | 68.2 7.0 | 34.1 5.9 | 9.3 4.0 | 58.9 5.3 | – |
| Qwen3-VL-8B | 91.0 5.8 | 69.0 6.8 | 79.9 5.7 | 47.9 5.5 | 72.3 4.4 | – |
| Qwen3.5-9B | 86.9 6.5 | 44.4 6.3 | 96.9 2.5 | 11.7 3.7 | 63.2 4.8 | 5,173 |
| Qwen3.8-27B | 91.0 5.8 | 76.2 6.3 | 84.8 4.3 | 58.2 4.8 | 79.3 4.1 | 1,904 |
| Gemini 3.1 Pro | 89.7 6.0 | 54.8 6.6 | 96.0 2.9 | 68.7 4.3 | 75.2 4.5 | 583 |
Appendix figures & tables14 assets
Supplementary material from the paper’s appendix.
Appendix
| Task category | Requirement | Example instruction | Tasks |
|---|---|---|---|
| Single destination | every object goes to the same destination | “put the carrot and the spoon on the plate” | 44 |
| Transfer | every object starts on one destination and must be moved to another | “move the carrot and the spoon from the plate to the blue towel” | 8 |
| Split destination | different objects go to different destinations | “put the carrot on the plate and put the spoon on the blue towel” | 25 |
| Relay | objects pass through an intermediate destination | “first put the carrot on the plate, then put the carrot on the blue towel” | 20 |
| Revisit | objects return to a destination they have already left | “first put the spoon on the cloth, then put the spoon in the pot, then put the spoon on the cloth” | 13 |
| Exclusion | some objects must be left where they are | “put everything except the eggplant on the plate” | 13 |
| Task | Subgoals | Instruction |
|---|---|---|
| Single destination | ||
| all1_plate | 1 | “put the carrot on the plate.” |
| all1_towel | 1 | “put the spoon on the blue towel.” |
| all2_plate | 2 | “put the carrot and the spoon on the plate” |
| all2_towel | 2 | “put the carrot and the spoon on the blue towel” |
| all3_plate | 3 | “put the carrot, the spoon and the eggplant on the plate” |
| Task | Subgoals | Instruction |
|---|---|---|
| Single destination | ||
| scene36_1goal | 1 | “put the fork in the pan.” |
| scene45_1goal | 1 | “put the blue bowl on the purple cloth.” |
| scene54_1goal | 1 | “put the spoon on the cloth.” |
| scene76_1goal | 1 | “put the metal pot on the yellow cloth.” |
| scene36_2goal | 2 | “put the fork and the corn cob in the pan” |
| Task | Subgoals | Instruction |
|---|---|---|
| Single destination | ||
| comp_bin_1 | 1 | “put the banana in the bin.” |
| comp_plate_1 | 1 | “put the banana on the plate.” |
| comp_bin_2 | 2 | “put the banana and the orange in the bin” |
| comp_bin_6 | 6 | “put the banana, the orange, the lemon, the lime, the avocado and the onion in the bin” |
| comp_bin_10 | 10 | “put the banana, both oranges, the lemon, the lime, the avocado, the onion, the lychee, the pumpkin and the pomegranate in the bin” |
| Low-level policy | Proprioceptive verifier | PSP-Agent | ||||||
| Task category | Subgoals | Episodes | Progress | Success | Progress | Success | Progress | Success |
| Embodiment A (WidowX, Bridge baseline) | ||||||||
| 1 subgoal, control | 1 | 24 | 66.7 | 66.7 | 75.0 | 75.0 | 100.0 | 100.0 |
| Single destination | 2–3 | 24 | 18.3 | 0.0 | 56.7 | 33.3 | 95.0 | 87.5 |
| Split destination | 2–3 | 24 | 21.7 | 0.0 | 63.3 | 29.2 | 86.7 | 83.3 |
| Exclusion | 2 | 12 | 8.3 | 0.0 | 62.5 | 58.3 | 95.8 | 91.7 |
| Tasks | Low-level policy | Periodic trigger | Proprioceptive trigger | Proprioceptive verifier | VoLo | CaP-X | TiPToP | PSP-Agent | GPT-Policy | Privileged verifier | Episodes |
| SimplerEnv-Long | |||||||||||
| 1 subgoal | 89.6 | 91.7 | 91.7 | 89.6 | 93.8 | 87.5 | 72.9 | 89.6 | 85.4 | 85.4 | 48 |
| 2 subgoals | 28.1 | 56.2 | 62.5 | 68.8 | 64.1 | 67.2 | 15.1 | 74.0 | 87.0 | 74.5 | 192 |
| 3 subgoals | 6.0 | 29.6 | 36.1 | 40.7 | 49.5 | 47.2 | 9.7 | 57.4 | 75.0 | 50.5 | 216 |
| 4 subgoals | 1.8 | 4.8 | 11.9 | 19.0 | 18.5 | 26.8 | 1.2 | 36.3 | 63.7 | 22.6 | 168 |
| 5 subgoals | 0.0 | 0.6 | 7.7 | 10.7 | 6.0 | 11.3 | 0.0 | 25.6 | 48.8 | 11.9 | 168 |
| Tasks | Low-level policy | Periodic trigger | Proprioceptive trigger | Proprioceptive verifier | VoLo | CaP-X | TiPToP | PSP-Agent | GPT-Policy | Privileged verifier | Episodes |
| SimplerEnv-Long | |||||||||||
| Single destination | 9.6 | 18.8 | 22.7 | 26.9 | 27.1 | 23.8 | 11.7 | 41.2 | 54.4 | 30.0 | 480 |
| Transfer | 9.2 | 8.3 | 7.5 | 9.2 | 22.5 | 44.2 | 1.7 | 25.8 | 67.5 | 21.7 | 120 |
| Split destination | 12.5 | 15.3 | 21.5 | 23.6 | 25.7 | 21.5 | 8.3 | 41.7 | 61.1 | 29.2 | 144 |
| Relay | 3.2 | 13.0 | 19.0 | 25.5 | 18.1 | 39.8 | 0.0 | 23.1 | 74.5 | 28.2 | 216 |
| Revisit | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 9.4 | 0.0 | 8.3 | 39.6 | 1.0 | 96 |
| Tasks | Low-level policy | Periodic trigger | Proprioceptive trigger | Proprioceptive verifier | VoLo | CaP-X | TiPToP | PSP-Agent | GPT-Policy | Privileged verifier | Episodes |
| SimplerEnv-Long | |||||||||||
| 1 subgoal | 89.6 | 91.7 | 91.7 | 89.6 | 93.8 | 87.5 | 72.9 | 89.6 | 85.4 | 85.4 | 48 |
| 2 subgoals | 49.2 | 73.7 | 77.9 | 81.8 | 76.0 | 78.9 | 29.9 | 83.1 | 92.7 | 83.6 | 192 |
| 3 subgoals | 37.2 | 62.0 | 65.9 | 66.0 | 69.0 | 69.8 | 29.2 | 76.4 | 89.8 | 70.2 | 216 |
| 4 subgoals | 29.9 | 43.3 | 48.2 | 54.2 | 54.9 | 56.0 | 11.3 | 67.3 | 87.5 | 54.5 | 168 |
| 5 subgoals | 30.7 | 38.2 | 46.9 | 51.2 | 46.3 | 43.2 | 1.8 | 61.5 | 84.8 | 49.0 | 168 |
| Planning | Subgoal completion | State tracking | Next subgoal | ||
| Model | exact match (%) | TP rate (%) | TN rate (%) | all correct (%) | valid (%) |
| SimplerEnv-Long scenes | |||||
| Qwen3-VL-2B | 61.1 | 52.1 | 40.4 | 10.6 | 39.9 |
| Qwen3-VL-8B | 92.6 | 58.5 | 86.5 | 58.6 | 65.2 |
| Qwen3.5-9B | 96.3 | 45.7 | 97.1 | 13.6 | 60.6 |
| Qwen3.8-27B | 92.6 | 63.8 | 92.3 | 71.2 | 79.3 |
| Low-level policy | Periodic trigger | Proprioceptive trigger | Proprioceptive verifier | VoLo | CaP-X | TiPToP | PSP-Agent | GPT-Policy | Privileged verifier | |
| VLM calls per episode | ||||||||||
| SimplerEnv-Long | 0.0 | 0.0 | 0.0 | 12.7 | 24.8 | 3.8 | 1.0 | 18.0 | 50.1 | 0.0 |
| RobotArena- -Long | 0.0 | 0.0 | 0.0 | 9.3 | 26.4 | 5.6 | 1.0 | 20.2 | 41.7 | 0.0 |
| RoboLab-Long | 0.0 | 0.0 | 0.0 | 9.3 | 19.2 | 6.3 | 1.0 | 31.8 | 70.8 | 0.0 |
| VLM calls per completed subgoal | ||||||||||
| SimplerEnv-Long | 0.0 | 0.0 | 0.0 | 4.9 | 10.1 | 1.6 | 2.8 | 6.1 | 11.8 | 0.0 |
| Plan decomposition | Subgoal completion | State tracking | Next subgoal | |||||
| Model | input | generated | input | generated | input | generated | input | generated |
| Qwen3-VL-2B | – | – | – | – | – | – | – | – |
| Qwen3-VL-8B | – | – | – | – | – | – | – | – |
| Qwen3.5-9B | 655 | 2,951 | 875 | 2,404 | 3,445 | 10,325 | 653 | 3,339 |
| Qwen3.8-27B | 690 | 943 | 617 | 967 | 2,321 | 3,790 | 690 | 1,189 |
| Gemini 3.1 Pro | 1,474 | 663 | 1,727 | 231 | 6,965 | 970 | 1,471 | 529 |
| Grasping | Carrying | Placing | Undone later | Never started | |||||||||
| System | Lost | Orch. | Missed | Lost grip | Dropped | Timed out | Wrong place | Off target | Picked up | Knocked off | Slid off | Not reached | Untouched |
| SimplerEnv-Long | |||||||||||||
| Low-level policy | 74.7 | – | 9.1 | 3.3 | 1.7 | 0.7 | 6.1 | 8.3 | 0.6 | 0.9 | 3.3 | 0.0 | 40.6 |
| TiPToP | 92.9 | 66.6 | 4.0 | 1.1 | 0.7 | 0.0 | 3.4 | 1.3 | 0.1 | 0.2 | 0.3 | 0.0 | 15.2 |
| CaP-X | 54.1 | – | 5.0 | 2.7 | 1.9 | 1.1 | 3.2 | 6.4 | 1.5 | 2.0 | 4.5 | 0.0 | 26.0 |
| Periodic trigger | 60.1 | 47.8 | 1.4 | 0.5 | 0.3 | 0.2 | 0.2 | 2.9 | 0.5 | 0.3 | 0.7 | 0.0 | 5.2 |
| System | Lost | Orch. | Not planned | No plan | Stopped | Moved on | Deferred | Stuck | Re-issued |
|---|---|---|---|---|---|---|---|---|---|
| SimplerEnv-Long | |||||||||
| Low-level policy | 74.7 | – | – | – | – | – | – | – | – |
| TiPToP | 92.9 | 66.6 | 0.0 | 66.6 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 |
| CaP-X | 54.1 | – | – | – | – | – | – | – | – |
| Periodic trigger | 60.1 | 47.8 | 0.0 | 0.0 | 0.0 | 47.8 | 0.0 | 0.0 | 0.0 |
| Proprioceptive trigger | 54.2 | 34.2 | 0.0 | 0.0 | 0.0 | 33.2 | 0.0 | 1.0 | 0.0 |