Spin the wheel: random name picker with a fair draw
Type a list of names and spin the wheel: the browser's cryptographic generator picks the winner, with a draw history and an option to remove each winner.
How the random wheel picks a name without bias
Every slice of the wheel has the same probability, 1 divided by the number of names: 12.5% with 8 names. The winner is drawn with crypto.getRandomValues before the wheel turns; the animation simply stops on it.
The draw
The browser supplies a random 32-bit integer through crypto.getRandomValues. To turn it into a slice number from 0 to n − 1 without favoring anyone, the tool rejects values above the last multiple of n, then takes the remainder of the division by n. The winner is fixed at that moment. The wheel's rotation is then computed to stop between 15% and 85% of that slice, never on a border.
Example with 7 names
232 = 4,294,967,296 and 4,294,967,296 mod 7 = 4. The limit is therefore 4,294,967,292: the 4 values above it are drawn again, which happens about 9 times in 10 billion. Without this rejection, slices 0 to 3 would get 613,566,757 values each and slices 4 to 6 only 613,566,756. The gap is tiny, and the tool removes it anyway. Each name has a 1 in 7 chance, or 14.29%.
Assumptions and limits
- A name typed twice takes two slices and has twice the chance.
- The wheel accepts 100 lines. Long labels are shortened on the wheel; the full name appears in the result.
- No seed is published, so a draw can be neither replayed nor proven afterwards. Keep a screenshot of the history if you need to show it.
- If your system asks for reduced motion, the wheel jumps straight to the winner, without confetti.
- The list stays in your browser and is sent nowhere.
Sources and dates: W3C, Web Cryptography API, getRandomValues method (checked on 29/10/2026)
Frequently Asked Questions
Is the random wheel really fair?
Yes: every slice has a probability of 1 in n, which is 12.5% with 8 names. The draw uses crypto.getRandomValues and rejects values above the last multiple of n, which removes modulo bias.
Does the result depend on where the wheel stops?
No, it works the other way round: the winner is drawn when you click, then the rotation is computed to stop on that slice. Speed, duration and screen size have no effect on the result.
How do I remove the winner after each spin?
Tick "Remove the winner from the list": the name leaves the wheel as soon as it is announced. With 30 students, 29 spins set a complete order with no repeats; the last name left goes last.
How do I give one name more chances?
Type it on several lines, since each line is one slice. With 9 lines of which 2 carry the same name, that name has a 2 in 9 chance, or 22.2%.
Is this tool really free?
Yes, all tools on Kristools are 100% free and accessible without registration.
Is my data protected?
Yes. All processing is performed directly and securely inside your browser. No personal data is sent to our servers.