Random Name Picker Wheel
Type your options, spin once, get an answer you can point at.
Add some options and press spin.
What this is for
A picker wheel is a decision you have already agreed to accept. That sounds like a small thing, but it is the entire reason people use one instead of just choosing. When a teacher picks a name out of the air, someone always feels singled out. When the wheel picks it, nobody argues with the wheel. The randomness is doing social work as much as mathematical work.
That is why the two details most sites get wrong actually matter. If the wheel is subtly unfair, or if it looks like the result was nudged, the whole point collapses. So this one draws the winner from your browser's cryptographic random number generator, discards the small biased tail that a plain modulo would leave in, and decides the answer before the animation starts.
How the spin actually works
Most wheels on the web spin by a random amount and then read off whichever slice happens to sit under the pointer when the animation stops. It looks the same to you, but it means the easing curve, your screen's frame rate and floating-point rounding all become part of the draw. A wheel built that way tends to favour wherever the deceleration naturally stalls, and it cannot really be tested — you would have to render millions of animations to find out whether it was fair.
This wheel does it the other way round. The winner is chosen first, as a single unbiased integer. Then the rotation needed to land that slice under the pointer is calculated exactly, and the animation is told to go there. The spin is presentation. If your tab is throttled in the background, if you drop frames, if the animation is interrupted entirely, the result is the same one that was picked before the first frame was drawn.
You can verify the claim rather than trust it: the maths that converts a chosen index into a rotation has an inverse, and the test suite asserts the round trip for hundreds of combinations of slice count, chosen index and number of turns. Whatever index goes in, the angle that comes out has to point back at that same index.
Why modulo bias is not a nitpick
Random number generators hand you a value in a fixed range — here, a 32-bit integer, so zero up to 4,294,967,295. To turn that into a slice number you take the remainder after dividing. The problem is that the range almost never divides evenly by the number of slices. With six options, four of the possible values are left over, and those four extra chances all land on the first four slices.
For a lunch decision the effect is invisible: about one part in a billion. But the same code is used for raffles, giveaways and prize draws, where somebody has an incentive to care. The fix costs one line — draw again if the value falls in the leftover tail — and once you have written that line there is no reason ever to ship the biased version.
There is a trap in testing this. A chi-square test over a realistic number of spins will pass whether or not the fix is present, because the effect is far too small to see. A test named after a property it cannot detect is worse than no test at all, so the rejection step here is asserted directly by feeding the generator known values and checking that the ones in the tail get thrown away.
Practical use
Paste a list straight in — one option per line. Blank lines are ignored, so a copy-paste from a spreadsheet or a chat message usually works without cleaning up. Long labels are shortened on the wheel face, but the full text is what gets announced.
Shuffle order rearranges the slices without changing anything about the odds. It is there because people find a wheel more convincing when neighbouring options are not the ones they expected, which is a presentation problem rather than a fairness one.
Nothing is uploaded. There is no account, no list saved on a server, and no analytics watching what you typed. The whole tool is one HTML file and two small scripts, so it works on a bad connection and keeps working if you lose signal after it has loaded.
Where a wheel is the wrong tool
If you need several winners with no repeats, shuffling the list and taking the top few is cleaner than spinning repeatedly and crossing names off. If you are splitting people into teams, dealing them out round-robin after a shuffle gives you even sizes, which repeated spinning will not.
And if the decision actually matters to you, notice which result you were hoping for while the wheel was still turning. That is usually the more useful output.
Questions
Is the wheel really random, or is it weighted?
Genuinely uniform. Every option has exactly the same chance, drawn from the browser's cryptographic random number generator with the biased tail rejected. There is no weighting and no way for the site to influence the outcome — the picking happens on your device.
Can I add the same name twice to give it better odds?
Yes. Duplicate lines become separate slices, so a name entered twice on a wheel of ten has twice the chance. That is the simplest way to weight a wheel and it stays obvious to everyone watching, which matters more than elegance.
How many options can I put on it?
There is no hard limit, but labels stop being drawn on the wheel face beyond about forty slices because they become unreadable. The pick is exactly as fair with four hundred entries as with four; only the drawing gets crowded.
Does it save my list?
No. Nothing you type is sent anywhere or stored anywhere, so reloading the page gives you the default list again. Keep your list in a note or a message and paste it back when you need it.
Can I use it on a phone?
Yes. Tapping the wheel itself spins it, so you do not have to reach for the button, and the layout is built for a narrow screen first.