Spinner Wheel
Type your options, spin a colored wheel, get a winner — with optional remove-after-winning for raffles and history of the last 20 picks.
How to use
- Put each option on its own line (food choices, names, tasks — whatever).
- Hit Spin and let the wheel decelerate to land on the winner.
- Enable remove-after-winning for raffle-style draws where each name should win at most once.
About this tool
ShowHide
Type one option per line and each becomes a coloured slice of the wheel; press spin and the pointer at the top picks one after a four and a half second deceleration. Turn on remove-winner mode and each result is taken out of the list, which turns the wheel into a raffle draw or a secret-santa assignment instead of an independent coin flip. The last twenty winners stay in a history strip until you clear it.
The animation is theatre and the draw is not. The winner is selected from crypto.getRandomValues before the wheel starts moving, and the easing curve is then computed to land on it — so nothing about how the wheel slows down, where it appears to nearly stop, or how close the pointer comes to the neighbouring slice has any bearing on the outcome. That ordering is deliberate: a wheel that genuinely simulated friction would have to decide the result from a physics model, and getting uniformity out of a physics model is far harder than getting drama out of a known answer.
Two behaviours are worth knowing before you trust a draw to it. Duplicate lines make duplicate slices, and a name that appears twice is twice as likely to win — useful if you meant to weight it, a silent bug if it got pasted twice. And remove-winner mode changes the odds as it goes: in a list of five, the first draw is one in five and the last is certain. That is what you want for assigning five tasks to five people and not what you want for five independent picks, where the same option should be able to come up again.
Everything happens in the tab, so there is no server deciding anything and no record of the draw beyond the history strip, which lives in the page and disappears when you clear it. For a raffle where the participants need to trust the result, that is the limit worth stating out loud: the person running the wheel could reload and spin again, and nothing here would show it. Spin on a shared screen, or use a method with a published seed.
Frequently asked questions
Is the spin biased toward any slice?
No. The landing angle is picked from crypto.getRandomValues before the animation runs. The deceleration easing is purely cosmetic — the result is decided up-front.
Why does long text get cut off?
Slice labels are clipped at 18 characters to keep the wheel readable. The full text still appears in the winner banner and history list.
Does entering the same option twice double its chance?
Yes. Every line becomes its own slice, so a name written twice occupies two slices and wins twice as often. That is the simplest way to weight a wheel on purpose — repeat an entry as many times as the weight you want — and it is also why an accidental duplicate quietly skews a draw that was meant to be even.
Is the animation what decides the winner?
No. The winner is picked first from the uniform random source, and the wheel is then spun so that it comes to rest on that slice. The four and a half seconds of deceleration are presentation only, so nothing you do while it turns — waiting, clicking, switching tabs — can change a result that was already chosen.
Guides on this topic
Related tools
Raffle Draw
Pick N winners from a list of names — cryptographically random, with or without duplicates.
Random
Weighted Random Picker
Pick names or options with custom weights — like a non-uniform raffle. See each option's true probability and draw with or without replacement.
Random
Random Picker — Roulette & Ladder
Pick a winner with a spinning wheel or a ladder (ghost-leg) draw.
Random
Magic 8-Ball
Type a yes/no question, shake the ball, get one of 20 classic answers — or swap in your own pool. Pure randomness, no judgement.
Random
Random Order Shuffler
Paste a list, get it back in random order — line-, comma- or whitespace-separated input, optional seed for reproducible runs, numbered or plain output.
Random
Nickname Generator
Generate Docker-style memorable nicknames (elegant-archimedes, funny-curie) — pick a style, separator, count.
Random