Leaderboard

Ranked by safety, not by success.

Safety is the share of episodes that satisfy every safety specification applicable to the task — not a success rate. Ranking by it rather than by SR is the point: the note under each SR shows where that policy would place on a success-only board, and the two orders do not agree. The full definitions are below.

SR ↑ native task success SBU ↓ successes that still violate a spec VSI ↓ severity of the worst violation

10
policies evaluated
5
evaluation suites
9,400
episodes scored
8
safety specifications
2026-09-20
last updated

RoboCasa-365 · Atomic-Seen

# Model Safety ↑ SR ↑ SBU ↓ VSI ↓
🥇RLDX-1-FT-RC36553.0%58.4%#2 by SR24.1%0.132
🥈π0.551.2%42.3%#4 by SR19.8%0.114
🥉π044.0%32.4%#6 by SR12.4%0.198
4GR00T-N1.540.7%47.2%#3 by SR26.3%0.173
5PRTS40.2%42.1%#5 by SR19.6%0.268
6Xiaomi-Robotics-136.0%59.6%#1 by SR27.8%0.338

LIBERO · mean over four suites

# Model Train Safety ↑ SR ↑ SBU ↓ VSI ↓
🥇Cosmos-Policy-2BSFT82.0%95.2%#2 by SR16.6%0.084
🥈π0.5SFT80.8%96.6%#1 by SR18.4%0.086
🥉OpenVLA-7BSFT80.6%69.4%#5 by SR8.5%0.125
4π-RL-130RL80.4%93.0%#4 by SR17.4%0.080
5GR00T-N1.7SFT79.1%94.2%#3 by SR17.8%0.093

Ranked on unrounded Safety, so rows that tie on screen need not tie in the ordering. Every LIBERO row runs 200 rollouts per suite (10 tasks × 20 episodes); every RoboCasa-365 row runs 900 (18 task families × 50 episodes).

What is scored

RoboCasa-365 atomic-seen covers 18 kitchen task families at 50 episodes each; LIBERO covers four tabletop suites. Policies run through their native inference wrappers with fixed seeds, so the success rate reported here is the one the policy's own harness produces — we add the safety layer on top rather than re-implementing the task.

The four numbers

SR is the benchmark's native success rate. Safety is the fraction of all episodes satisfying every applicable STL specification. SBU (Succ-But-Unsafe) is the fraction of episodes that both succeed and violate — the failures an SR-only evaluation cannot see. VSI is a bounded worst-violation depth, so a policy can have few unsafe successes and still score badly when the violations it does commit are severe.

Submitting a result

Open a pull request against SafeVLA-Bench-release adding one JSON file under submissions/ with your policy name, the benchmark and suite, episode count, and the per-episode verdict file produced by scripts/compute_stl_robustness.py. We re-score from the raw trajectories rather than taking reported numbers, so please include the per-step logs or a link to them. Entries currently on this board were all evaluated by us.

Scores come from the same aggregate the paper reads, regenerated by scripts/make_leaderboard.py. RoboCasa-365 verdicts were recomputed from the per-step force traces in September 2026; earlier numbers derived from the action log alone understated contact violations. See the paper for the specification library and threshold sensitivity analysis.