BEHAVIOR-Spatial Benchmark: Evaluating Spatial Understanding for Robotics
Organizations: Stanford University · Northwestern University
Abstract
Robot tasks require grounding spatial language in physical scenes, but task success alone cannot establish whether spatial instructions are followed. We present BEHAVIOR-Spatial, a benchmark built on BEHAVIOR-1K that measures spatial question answering, point-based target grounding, and robot action to examine how VLM spatial understanding relates to VLA behavior. It comprises 3,256 spatial questions across 49 activities, 1,240 grounding queries across 14 manipulation tasks, and action evaluations covering those 14 tasks and 10 navigation tasks. Our manipulation protocol evaluates held-out configurations and instruction following when the requested target changes within a fixed training layout. The baseline achieves 41.6% on held-out configurations but only 16.1% under changed instructions. VLM adaptation and robot-data pretraining provide limited improvements, whereas oracle visual target cues raise these rates to 60.3% and 38.0%, respectively. Perception evaluations reveal policy-dependent correlations between VLM question-answering and grounding accuracy and VLA manipulation performance. Together, these findings motivate evaluating spatial instruction following alongside task completion and examining when spatial perception performance translates into robot behavior. Project website: https://arielchen07.github.io/behavior-spatial/.
Figures & tables
| Model | Single-frame | Multi-frame | ||||
|---|---|---|---|---|---|---|
| All | Dir. | Dist. | Size | All | Dir. | |
| Proprietary | ||||||
| GPT-6 Astra | 82.1 | 85.8 | 77.3 | 77.7 | 74.4 | 74.6 |
| Gemini 3 | 77.8 | 80.5 | 75.2 | 72.7 | 71.1 | 69.6 |
| Fable5.1 | 70.5 | 69.3 | 70.2 | 76.3 | 68.4 | 66.8 |
| GPT-5 | 64.7 | 61.7 | 68.1 | 69.1 | 63.2 | 59.6 |
| Policy | Held-out | Prompt-probe | |||
|---|---|---|---|---|---|
| +Soft | S | +Soft | S | W | |
| -Qwen (frozen VLM) | 41.6 | 27.9 | 16.1 | 10.0 | 70.0 |
| + LoRA-VLM | 43.5 | 30.9 | 17.9 | 9.6 | 68.1 |
| + DROID pretrain init | 40.1 | 24.7 | 16.6 | 8.9 | 66.0 |
| IR-conditioned | |||||
| + dot IR | 60.3 | 44.8 | 38.0 | 24.9 | 43.9 |
| Writer | +Soft | S | W |
|---|---|---|---|
| Proprietary | |||
| Fable 5.1 | 66.1 | 51.4 | 23.5 |
| GPT-6 | 61.2 | 47.3 | 23.0 |
| Gemini 3 | 50.3 | 33.3 | 28.8 |
| Open-weight | |||
| Qwen3.5-9B | 39.0 | 5.3 | 8.7 |
Appendix figures & tables24 assets
Supplementary material from the paper’s appendix.
Appendix
| Setting | Category | Template | Answer space | |
|---|---|---|---|---|
| single-frame | direction | “From the viewpoint of {frame_idx} , where is {objA} relative to {objB / robot arm} ?” | left / right / front / back / above / below | 300 |
| single-frame | locate | “From the viewpoint of {frame_idx} , where is {objA} located on {objB} ?” | container region (layer/level/grid) | 300 |
| single-frame | distance | “Measuring from the center of each object, which object is the closest to {objA / camera / robot arm} ?” | candidate objects | 339 |
| single-frame | size | “Measuring from the length of the longest dimension (length, width, or height), which object is the longest?” | candidate objects | 139 |
| multi-frame | direction | “From the viewpoint of the last frame, measuring from room centers, where is {objA} relative to {objB} ?” | front-left / front-right / back-left / back-right | 401 |
| multi-frame | distance | “Based on the given frames, measuring from room centers, which room is the closest to the robot’s position at the last frame?” | candidate rooms | 77 |
| Task | Category | Example instruction | Instruction variants | |
| Manipulation | ||||
| reach_food_item | size | “Reach the largest food item on the chopping board.” | {largest, 2nd largest, smallest, 2nd smallest} | 32 |
| reach_item | size | “Reach the smallest food item on the countertop.” | {largest, 2nd largest, smallest, 2nd smallest} | 32 |
| reach_plate | size | “Reach the largest plate from the countertop.” | {largest, 2nd largest, smallest, 2nd smallest} | 31 |
| reach_toys | size | “Reach the second largest toy on the desk.” | {largest, 2nd largest, 3rd largest, smallest, 2nd smallest} | 40 |
| reach_dice | distance | “Reach the dice closest to the board game on the bed.” | {closest, farthest} {board game, wall} | 32 |
| Policy | Batch | Peak LR | LR schedule | Checkpoint |
| Manipulation | ||||
| -Qwen (frozen VLM) | 256 | cosine | 100k | |
| + LoRA-VLM | 128 | cosine | 110k | |
| + DROID pretrain init | 256 | cosine | 90k | |
| + IR variants (all) | 256 | cosine | 100k | |
| Navigation | ||||
| Family | Strict success (correct) | Additional soft credit (for none) | Tasks |
|---|---|---|---|
| Reach (contact) | The end-effector touches the instructed candidate. Touching a non-instructed candidate is wrong . | The minimum end-effector distance to the instructed target over the episode is smaller than the minimum distance to every distractor. | food, item, plate, toys, dice, paperback, pizza, storage, tool, hardback |
| Reach (base proximity) | The end-effector touches the instructed can, or the base ends within m of it and satisfies the nearest-candidate rule. | Same minimum-distance rule as contact reach. | soda |
| Directional placement | The object is released onto the countertop, at least m from the reference, on the instructed side along the robot-right axis. The opposite side is wrong ; releases within m or off the countertop are on-ref failures. | At episode end, the still-held object lies on the instructed side along the robot-right axis. | carving, saucer |
| Container placement | The object rests inside the instructed compartment’s height band. A different compartment is wrong ; outside the container is none . | The object’s peak height within the container footprint falls within the permitted band around the instructed compartment. Passing through the band before overshooting does not qualify. | tupperware, bowl |
| Navigation | The robot base satisfies the instructed goal criterion (binary subtask_success ); no strict/soft split applies. | — | all move_to |
| Task | Strict | Soft | Wrong | Cand. | Size (px) | Frames (k) | Len. | |
|---|---|---|---|---|---|---|---|---|
| reach_food_item | 32 | 53.1 | 56.2 | 34.4 | 4.0 | 52 | 319 | 318 |
| reach_storage_box | 32 | 46.9 | 68.8 | 25.0 | 2.0 | 85 | 145 | 1365 |
| reach_soda_can | 42 | 38.1 | 52.4 | 42.9 | 3.0 | 35 | 97 | 696 |
| reach_plate | 31 | 35.5 | 35.5 | 61.3 | 3.7 | 124 | 55 | 212 |
| reach_hardback | 48 | 31.2 | 37.5 | 37.5 | 4.3 | 66 | 237 | 421 |
| reach_item | 32 | 31.2 | 34.4 | 53.1 | 7.0 | 98 | 307 | 311 |
| Task | Proprietary writers | Open-weight writers | ||||
|---|---|---|---|---|---|---|
| Fable 5.1 | GPT-6 | Gemini 3 | Qwen3.5-9B | Qwen3.5-4B | ||
| place_bowl_in_cabinet | 40 | 72 / 72 | 48 / 32 | 28 / 28 | 20 / 20 | 18 / 3 |
| place_carving_knife | 24 | 100 / 58 | 75 / 58 | 38 / 21 | 50 / 8 | 71 / 0 |
| place_tupperware_in_fridge | 22 | 18 / 18 | 59 / 9 | 5 / 5 | 18 / 9 | 5 / 5 |
| reach_dice | 32 | 97 / 94 | 91 / 88 | 78 / 56 | 66 / 0 | 56 / 0 |
| reach_food_item | 32 | 69 / 59 | 59 / 56 | 59 / 53 | 47 / 6 | 44 / 6 |
| IR source | Soft | Strict |
|---|---|---|
| Baseline | 41.6 | 27.9 |
| Predicted dot | ||
| Qwen3.5-4B | 48.8 | 34.1 |
| Qwen3.5-9B | 47.3 | 34.5 |
| Molmo2-8B | 47.1 | 33.5 |
| Oracle dot | 60.3 | 44.8 |
| Training data | Prompt-probe | ||
|---|---|---|---|
| Soft | Strict | Wrong | |
| Original | 11.6 | 10.1 | 79.7 |
| + prefix augmentation | 36.2 | 10.1 | 43.5 |
| Task | Base | Dot IR | ||
| 100% | 50% | 30% | ||
| reach_food_item | 53.1/56.2 | 65.6 / 71.9 | 65.6 /68.8 | 59.4/68.8 |
| reach_plate | 35.5/35.5 | 71.0 / 74.2 | 48.4/64.5 | 51.6/67.7 |
| reach_soda_can | 38.1/52.4 | 71.4/78.6 | 69.0/ 81.0 | 73.8 / 81.0 |
| reach_storage_box | 46.9/68.8 | 68.8 / 78.1 | 65.6/ 78.1 | 65.6/ 78.1 |
| reach_item | 31.2/34.4 | 50.0 / 50.0 | 50.0 / 50.0 | 43.8/43.8 |
| Task | Base | Dot IR | ||
| 100% | 50% | 30% | ||
| reach_food_item | 16.0/16.0 | 40.0 / 40.0 | 28.0/30.0 | 22.0/24.0 |
| reach_soda_can | 12.0/16.0 | 62.0/62.0 | 76.0 / 76.0 | 66.0/68.0 |
| reach_storage_box | 4.0/4.0 | 52.0 / 54.0 | 26.0/28.0 | 30.0/34.0 |
| reach_plate | 6.0/6.0 | 20.0/24.0 | 8.0/12.0 | 26.0 / 28.0 |
| reach_tool | 8.0/8.0 | 28.0 /32.0 | 22.0/ 36.0 | 26.0/32.0 |
| Task | Scene / region | VQA | Success |
|---|---|---|---|
| move_to_bookcase | single-floor house, toy room | 30.0 | 92.5 |
| move_to_bathroom | single-floor house, bedroom | 40.0 | 90.0 |
| move_to_corner_booth | restaurant diner | 23.3 | 87.5 |
| move_to_table_in_kitchen | two-floor house, main floor | 38.2 | 75.0 |
| move_to_table_near_sofa | single-floor house, open living area | 23.9 | 73.2 |
| move_to_bar | restaurant diner | 25.0 | 50.0 |
Spatial Reasoning Benchmarks
Spatial reasoning benchmarks test whether AI systems can perceive, represent, and act on geometric, relational, and viewpoint-dependent information.
See all 162 papers