Spin the Wheel

Build a custom wheel and spin it to pick a name or an option at random, with equal odds regardless of how the segments look.

Seeing every name once takes about three times as many spins

A fair wheel with n segments needs, on average, n × (1 + ½ + ⅓ + … + 1/n) spins before every segment has come up at least once. That is a lot more than n:

SegmentsSpins to see them allTimes more than you might guess
2 3.0 1.5×
4 8.3 2.1×
6 14.7 2.4×
8 21.7 2.7×
10 29.3 2.9×
12 37.2 3.1×
20 72.0 3.6×
50 225.0 4.5×

Ten names need about 29 spins, not ten. And the multiplier is not fixed — it grows roughly like the logarithm of the size, so a fifty-segment wheel needs 4.5× rather than 2.9×. Bigger wheels are proportionally worse, not just absolutely worse.

This is the coupon collector problem, and it is the arithmetic behind every "why haven't I got that one yet" feeling in a sticker album, a loot box, or a randomised playlist.

And nearly all the waiting is for the last few

The cost is wildly uneven across the collection. With 10 segments, here is what each new distinct result costs on average:

Getting the…Spins it takesShare of the total
1st new segment 1.00 3%
2nd new segment 1.11 4%
3rd new segment 1.25 4%
4th new segment 1.43 5%
5th new segment 1.67 6%
6th new segment 2.00 7%
7th new segment 2.50 9%
8th new segment 3.33 11%
9th new segment 5.00 17%
10th new segment 10.00 34%

The final segment alone accounts for 34% of the whole exercise — the first five together cost 6.5 spins, less than the last one does on its own.

That is the honest answer to a wheel that feels rigged. If you are waiting on one particular name, you are in the part of the process that genuinely takes longest, and a long wait is not evidence that anything is wrong.

It also points at when a wheel is the wrong tool. If everyone genuinely has to be picked once — a running order, a rota, assigning tasks — spinning is a slow way to get there and might never finish while you are watching. Shuffle the list and deal from it instead: that takes exactly 10 draws for 10 names, by construction, against about 29 spins. Use the wheel when each result should be independent, and a shuffle when the set has to be covered.

How to use

  1. Enter your options, one per line.
  2. Spin the wheel.
  3. Remove a winner if you are drawing several.
  4. Save the list if you use the same one often.

Frequently asked questions

Are all segments equally likely?

Yes. The result is chosen with the browser's random source and then the animation is drawn to land on it, so the visual size of a segment does not affect its chance. A wheel with unequal-looking slices would still be fair, which is worth knowing if the display surprises you.

Why animate it at all if the result is already chosen?

Because the spin is the point. A list that instantly prints a name feels arbitrary; a wheel that visibly slows toward one feels like a draw everyone watched. It changes nothing about the fairness and a great deal about how the result is received.

Can I remove a winner and spin again?

Yes, and it is the right way to draw several names — removing each winner gives a draw without replacement, so nobody can be picked twice. Leaving them in means repeats, which is occasionally what you want and usually not.

Is this suitable for a prize draw?

For an informal one, yes. For anything with legal or financial weight, use a documented and auditable process — regulated draws carry requirements about verifiability and record-keeping that no web page satisfies, however good its randomness.

How many options can I add?

As many as remain readable, which is the practical limit rather than a technical one. Beyond about thirty segments the labels become too small to follow, at which point a random line picker does the same job more legibly.

Is my list saved anywhere?

Only in your browser if you choose to save it, and nothing is uploaded. That means it does not follow you to another device and disappears if you clear browsing data.

🔒 This tool runs entirely in your browser. Nothing you enter is uploaded, logged, or stored.