Wheel Spinner

Add names or options, spin a colourful wheel and get a fair random winner - decided by secure randomness before the wheel even moves.

How the wheel picks fairly

It is tempting to think a spinning wheel is random because it looks chaotic, but a good picker does not leave the result to the physics of an animation. This one chooses the winner first, using crypto.getRandomValues with rejection sampling so every option has an identical chance and there is no bias toward the segment under the pointer. The spin you watch is then animated to land exactly on that pre-decided winner. In other words, the wheel is theatre - the draw is already fair before it starts turning.

What people use it for

  • Classrooms - pick a student to answer without always choosing the same hands.
  • Giveaways and raffles - drop in entrant names and spin for a winner on stream.
  • Team decisions - who presents first, who does the coffee run, which restaurant.
  • Chores and turns - settle whose turn it is without an argument.

After a spin you can remove the winner and spin again from the rest, which is perfect for drawing an order (first, second, third) rather than a single name. Every result is added to the spin history so you have a record during a live event.

Tips and limits

Put one option per line - blank lines are ignored and spare spaces trimmed, so you can paste straight from a spreadsheet column. Two options are the minimum. There is no maximum, but the segments get thin quickly; past 40 entries the labels are hidden to stay legible while the wheel still spins and picks fairly. If your browser is set to reduce motion, the spin is skipped and the winner shown at once.

Prefer a plain list draw without the wheel? Try the random name picker. For numbers use the random number generator, and for a quick two-way or tabletop call there is the coin flip and the dice roller.

Frequently asked questions

Is the wheel actually random and fair?
Yes. Every option has an exactly equal chance. The winner is chosen with the browser Web Crypto API (crypto.getRandomValues) using rejection sampling before the wheel even starts turning. The spinning animation is just theatre played back to that pre-decided result, so it cannot be nudged or biased.
Can I remove a name after it wins?
Yes. After a spin, use "Remove winner and spin again" to take that option out of the wheel and immediately draw from the rest. This is handy for drawing first, second and third place, or a seating order, without anyone being picked twice.
How many options can the wheel hold?
As many as you like. The segments get thinner as you add more, and to keep things readable the labels are hidden once you go past 40 entries - the wheel still spins and picks fairly, you just read the winner from the announcement rather than the wheel face.
Does it work with the animation turned off?
Yes. If your device or browser is set to reduce motion, the wheel skips the spin animation and shows the winner instantly. The result is identical either way because the winner is decided before any animation runs.