Guide

Random wheel vs random number generator

Same maths, very different to watch.

A number generator gives you an index. A wheel gives you a name and something to watch. The randomness underneath can be identical — Spinnza uses your browser's cryptographic generator either way.

When a number generator is enough

You are picking for yourself, the list is numbered already, and nobody needs convincing. Pick a number between 1 and 482 and count down the spreadsheet.

When a wheel is better

  • Other people are watching, in a classroom or on a stream.
  • Your entries are names or usernames, not row numbers — counting to row 482 by hand is where mistakes happen.
  • Some entries have more chances than others, and mapping bonus entries onto a number range by hand is fiddly and easy to get wrong.
  • You may have to show the draw later.

Where the randomness comes from

Most random number generators in software are not trying to be unpredictable. They are trying to be fast and evenly spread, which is what a simulation or a shuffle animation needs — and the usual one built into a browser, Math.random, is exactly that. Given the same internal state it produces the same sequence, and its state is not protected.

A cryptographic generator is seeded from the operating system's entropy pool and is built so that seeing part of its output tells you nothing about the rest. It is slower, and for picking one name out of a list that difference is far too small to measure. Spinnza uses the cryptographic one for every draw and never uses Math.random to pick a winner.

The bias almost every quick script has

Turning a random number into a list position is where homemade pickers go wrong. The obvious way is to take a big random integer and use the remainder after dividing by the number of entries. That is subtly unfair whenever the entry count does not divide evenly into the generator's range: the lowest few positions come up in one extra slice of the range, so the names at the top of the list are marginally more likely to win.

The effect is tiny and it is real. The fix is to discard any value that lands in the leftover part of the range and draw again, which is what Spinnza does — the loop almost never runs twice, and every position ends up exactly equally likely. It is the kind of thing nobody would ever catch you on and that is not a reason to get it wrong.

The part that matters either way

Neither is fair if the list changed between the draw and the announcement. All the care above is about a few thousandths of a per cent; swapping in a different list is a hundred per cent. That is why Spinnza fingerprints the list rather than only the result.

Last updated September 11, 2026 · All guides