Our explanation of how the spin is generated is just an explanation — you still have to take it on faith unless you can watch it happen. So this page runs the exact same random-selection code used by a real spin, right here in your browser, as many times as you like, and shows you the raw results.

Pick a scenario, pick how many simulated spins to run, and press the button. Nothing here is pre-recorded — every run draws fresh randomness live, the same way an actual spin does.

1. Choose a scenario

2. Run simulated spins

Pick a run size above to see results.

Reading the chi-squared result

The chi-squared statistic measures how far the actual counts landed from what perfect randomness would produce on average. It's not "pass" or "fail" — genuinely fair randomness still occasionally produces an unusually uneven-looking batch, purely by chance, about 1 time in 20. That's expected, not a sign anything's wrong. What would actually indicate a problem is the result consistently landing in that "unusual" territory run after run, not a single batch doing it once.

This page and the code it runs use the browser's crypto.getRandomValues() — see the full breakdown for why that's the relevant detail, not just an implementation footnote.