Password Generator
Cryptographically random passwords with a live entropy meter.
Utilities & Converters
Random picker for giveaways, classrooms and decisions.
Yes, and the distinction matters more than it might seem for something that looks like a toy.
Most spinning wheel sites use Math.random(), a fast pseudorandom generator whose internal state can be recovered from a handful of observed outputs. For a giveaway with real prizes, that is a genuine weakness — someone who can predict the sequence can predict the winner.
This wheel draws from crypto.getRandomValues(), the same cryptographically secure source used for key generation, and applies rejection sampling so that no segment is even marginally more likely than another due to modulo bias.
The visual spin is decoration applied after the fact. The winner is selected first, and the animation is calculated to land on it. That is how every implementation works, and stating it plainly is more honest than implying that physics is deciding.
Each entry can carry a weight that determines the size of its segment and its probability. An entry with weight 3 is three times as likely as one with weight 1, and its slice is three times as wide.
This is useful whenever the options are not equally likely by design: a raffle where people bought different numbers of tickets, a prize pool with a rare grand prize and common consolation prizes, or a decision where some options should be favored.
The wheel displays the computed probability next to each entry, so the odds are visible rather than implied by slice width. For a public giveaway, that transparency is worth having.
Practically, a few hundred. The constraint is legibility rather than computation — beyond about 40 entries the labels become too narrow to read on the wheel itself, and beyond about 100 the segments are a pixel or two wide.
Above that threshold the tool switches to displaying the entry count on the wheel and announcing the winner in the results panel instead of trying to label every slice. The selection is still uniform across all entries.
For a raffle with thousands of entries, a wheel is the wrong visualization. The random selection is still correct, but nobody watching can verify anything from a wheel with 4,000 invisible slices.
No. Selection uses crypto.getRandomValues with rejection sampling to avoid modulo bias. The animation is calculated after the winner is chosen, which is how every implementation works.
Yes, with the remove-after-spin toggle. This is the setting you want for working through a class list or drawing multiple distinct prize winners.
The list persists in your browser between visits using localStorage. It is stored on your device only and is never uploaded.
Set a weight on each entry. Weight 3 makes an entry three times as likely as weight 1, and the displayed probability updates to match.
The randomness is cryptographically sound, but regulated prize promotions in the UK, EU and several US states have specific record-keeping and audit requirements. Check the rules for your jurisdiction — screen-record the draw as a minimum.
Yes. The wheel is responsive and touch-friendly, which suits passing a phone around a table.
No. They stay in your browser, optionally saved to local storage on your own device.