Wheel or List? Two Ways to Pick a Name at Random
Both modes draw uniformly from the same list, so neither is fairer. What differs is throughput and theatre. A spin runs about 5.2 seconds and produces exactly one name. A list draw is instant and returns up to 10 names at once. Spin when people are watching. Draw a list when you need several names, a long roster, or a record of the result.
Key takeaways
- A spin is 5 to 7 full turns over 5.2 seconds. With the system reduce motion setting on, it drops to one turn in 0.6 seconds.
- Wheel gives 1 winner per spin; list gives up to 10 per submission. Ten winners costs 52 seconds of spinning against a single click.
- The wheel stops printing names once a slice is thinner than 3.2°, at about 114 names. Divider lines stop at 60. In a room, 30 is the practical reading limit.
- The wheel picks its winner with
crypto.getRandomValuesplus rejection sampling, so there is no modulo bias; the animation only travels to a slice already chosen. - Only list mode offers multiple winners, SHA-512 certification and lists up to 200,000 names.
- One names box feeds both modes, so switching tabs mid-session never costs you a retype.
On this page
- What actually differs between the two modes?
- Is the wheel more random than the list?
- How much time does each mode cost?
- How many names before the wheel stops being readable?
- How do you run a draw in wheel mode?
- How do you run a draw in list mode?
- Do the two modes share one list?
- Worked example: 30 names, 6 winners, both ways
- Which mode for which job?
- Terms worth knowing
- All 14 tools in this guide
What actually differs between the two modes?
Three things: how many names come out per action, whether anyone can watch it happen, and what the tool can prove afterwards. Everything else — the list, the odds, the no-repeat behaviour — is shared.
Wheel mode is a canvas drawing of your list as coloured slices with a fixed pointer. You click SPIN, the wheel decelerates over roughly five seconds, and one name lands under the pointer. List mode has no canvas at all: you choose how many winners you want, submit, and the result comes back as a ranked list of winners.
| Wheel mode | List mode | |
|---|---|---|
| Winners per action | 1 | 1 to 10 |
| Time per draw | 5.2 s animation (0.6 s with reduce motion) | One submission, no animation |
| Where the draw happens | In your browser, offline-capable | On the server |
| Randomness source | crypto.getRandomValues with rejection sampling | Python random.sample over list positions |
| Avoiding repeats | Remove winner after each spin | No repeats checkbox, with a counter of names left |
| Names shown on screen | Labelled up to about 114; readable to about 30 | Any length, up to 200,000 |
| Record of the draw | Last 10 winners listed on screen | Optional certification document hashed with SHA-512 |
| Sound | Click per slice plus a four-note fanfare, toggleable | None |
| Best for | An audience watching a single result | Several winners, long lists, evidence |
Is the wheel more random than the list?
No, and the reason is worth knowing, because it is the opposite of what the animation implies. The wheel does not spin and then see where it stops. It chooses the winning slice first, then works out the rotation that will park the pointer over that slice, and animates to it. The five seconds of deceleration are presentation of a decision that was already made in a fraction of a millisecond.
That choice uses the browser's cryptographic random generator. Picking a slice out of n naively — take a 32-bit random number, take the remainder modulo n — is very slightly unfair, because 232 is not divisible by most values of n, so the first few slices come up marginally more often. Rejection sampling fixes it: the values at the top of the range that cause the imbalance are thrown away and a new number drawn. With 28 names that discards fewer than 1 draw in 150 million, and what remains divides perfectly evenly.
List mode draws on the server with Python's random.sample, also uniform, with one detail worth knowing: it samples positions in the list, not the text of the names. If two people in your class are both called Jack, removing "Jack" by name would delete both and quietly shrink the pool by one. Sampling positions keeps them as two entrants with two chances.
How much time does each mode cost?
This is the difference that actually changes how a session runs. One spin is 5.2 seconds of animation, and in practice closer to ten seconds of wall clock once you have read the name out and closed the winner card. That is fine for one name. It is not fine for ten.
| Winners needed | Wheel: spins | Wheel: animation time | List: submissions |
|---|---|---|---|
| 1 | 1 | 5.2 s | 1 |
| 3 | 3 | 15.6 s | 1 |
| 6 | 6 | 31.2 s | 1 |
| 10 | 10 | 52 s | 1 |
| 30 (a whole class, one cycle) | 30 | 2 min 36 s | 3 |
Read that last row carefully before deciding the wheel is slow. Two and a half minutes to call a class of 30 one name at a time, with everyone watching, is not wasted time — it is the activity. The same two and a half minutes spent filling a spreadsheet nobody is looking at is pure overhead. The choice is whether the draw is content or admin.
How many names before the wheel stops being readable?
There are three thresholds, and they arrive earlier than most people expect.
Names are printed on the slices only while a slice is wider than roughly 3.2 degrees, which is 114 names on a full circle. Past that the wheel still spins and still picks correctly, but the slices are drawn blank and the winner appears only in the card at the centre. The white divider lines between slices are dropped earlier, at 60 names, because at that width the lines take up more of the wheel than the colours do. The label font shrinks as slices narrow, down to a floor of about 9 pixels, after which long names are truncated with an ellipsis rather than allowed to overlap their neighbours.
The practical limit is stricter than any of those. On a projector, roughly 30 names is where an audience stops being able to follow which slice is which — and following the slices is the entire point of using a wheel.
| Names | Slice width | What you see | Better mode |
|---|---|---|---|
| 5 | 72.0° | Big slices, full names, dividers | Wheel |
| 12 | 30.0° | Comfortable, full names | Wheel |
| 30 | 12.0° | Names readable up close, tight on a projector | Either |
| 60 | 6.0° | Last row with divider lines; names truncated | List |
| 114 | 3.2° | Last row with any labels at all | List |
| 1,000 | 0.36° | A colour ring; winner shown only in the card | List |
| 200,000 | 0.0018° | Solid colour; the wheel is decoration | List |
How do you run a draw in wheel mode?
Four steps, and the only one people skip is the third.
- Paste the names one per line in the box below the wheel. The wheel refills itself as you type — there is no separate "load" button.
- Open the Wheel tab. The multi-winner selector, the certification box and the submit button disappear, because none of them apply to a spin.
- Turn on "Remove winner after each spin" if you want everyone to get a turn. Without it, the same name can come up twice in a row and often will.
- Spin. Click the SPIN button, click the wheel itself, or press Space while the button is focused. The winner appears in a card with Spin again, Remove & spin and Close.
One deliberate behaviour catches people out: with automatic removal on, the winner is not taken off the wheel the instant it is announced — the removal is held until you close the winner card. If the slice vanished immediately, the wheel would re-shuffle underneath the card and the pointer would end up aimed at somebody else, which looks exactly like a rigged draw. Closing the card removes the name and redraws the wheel, so the audience sees the slice go.
The wheel also keeps the last 10 winners on screen under the toolbar, which is the cheapest way to answer "wait, who did we already have?" without scrolling back. Shuffle order rearranges the slices without changing anyone's chances — useful when a list arrives in alphabetical order and the wheel looks suspiciously tidy.
How do you run a draw in list mode?
Same list, three controls the wheel does not have.
- Number of winners — anything from 1 to 10, all returned from one submission and numbered 1st, 2nd, 3rd and so on.
- No repeats — removes each drawn name and refills the box with only the names still waiting. A counter tells you how many are left, and when the pool empties the tool says so and offers Start over.
- 3-step certification — builds a standalone result document listing the winner, the total number of entrants and a timestamp, then hashes it with SHA-512. The hash doubles as a lookup link, so anyone can retrieve the record later. It is available only when drawing one winner at a time.
The no-repeats state lives in the names box itself rather than in a cookie or a session. That is why you can see who is left just by reading the box, why closing the tab loses nothing you cannot rebuild by pasting again, and why the last draw of a cycle empties the box completely rather than leaving one lonely name that a stray click could pick a second time.
If your list is not people at all — prompts, tasks, seats, which restaurant — the Random Picker does the same job with neutral wording, and the Random Line Picker pulls lines straight out of pasted text.
Do the two modes share one list?
Yes, and this is the part that makes switching cheap. The names box is the single source of truth for both modes. Editing it redraws the wheel immediately; flipping to the List tab hands the same names to the server. Nothing is retyped, and nothing is lost mid-session.
Two extras carry across as well:
- Saved lists are stored in your own browser and never sent anywhere. Name one "Year 8 Maths", pick it from the dropdown next term, and it lands in the box ready for either mode.
- File import accepts a
.txtor.csvexport — a register, a signup sheet, a list of entrants — so a 400-name draw does not have to be typed.
Because the wheel runs entirely in the browser, it also keeps working when the connection does not. List mode needs the round trip to the server, so on flaky classroom wifi the wheel is the more reliable of the two.
Worked example: 30 names, 6 winners, both ways
A form group of 30. Six students are going to a science fair, chosen at random, in front of the class.
Wheel route. Paste 30 names. Slices are 12° wide, so names are readable on a laptop screen and just about readable on the projector. Turn on automatic removal. Spin six times: 6 × 5.2 s = 31 seconds of animation, and realistically a minute and a half with the reading out and the reactions. After the sixth spin, 24 names remain on the wheel, and the last 10 winners list confirms all six.
List route. Paste the same 30 names, set winners to 6, tick No repeats, submit once. Six names come back numbered 1 to 6, the box refills with the remaining 24, and the counter reads 24. Elapsed time: one click.
The results are statistically identical: six distinct names drawn uniformly without replacement from 30. What the extra 31 seconds bought is the class watching it happen, which is what stops anybody asking whether you picked your favourites. Drawn by email at 7am, those 31 seconds buy nothing.
Which mode for which job?
| Job | Mode | Why |
|---|---|---|
| Cold calling in a lesson | Wheel | One name, class watching, list of about 30 |
| Choosing 6 students for a trip | List | Six names at once, no repeats, one click |
| Live giveaway on stream | Wheel | The spin is the content |
| Prize draw from 4,000 entries | List | Slices are invisible; certification gives you a record |
| Deciding who goes first | Wheel | Two to eight names, big readable slices |
| Shuffling a whole running order | Neither | Use Randomize Lines or the List Randomizer |
| Splitting a class into teams | Neither | Use the Random Group Generator |
| Seeding a knockout draw | Neither | Use the Random Tournament Bracket Generator |
The last three rows matter more than they look. Spinning a wheel 30 times to build a running order is a slow way to do a shuffle, and drawing groups one name at a time gives you unbalanced teams. Those are different operations, not different amounts of the same one.
Terms worth knowing
- Uniform draw
- Every name has exactly the same chance of coming out. Both modes here are uniform; an animation does not make a draw more or less uniform.
- Modulo bias
- The small unfairness you get by taking a random number modulo the list length, because the range does not divide evenly. Rejection sampling removes it by discarding the values that would cause it.
- Rejection sampling
- Drawing a random number, throwing it away if it falls in the leftover part of the range, and drawing again. Costs a handful of extra draws in millions; buys exact fairness.
- Sampling without replacement
- Removing each name once it is drawn, so everyone gets a turn before anyone repeats. Called No repeats in list mode and Remove winner after each spin on the wheel.
- Sampling by position
- Drawing list positions rather than the text on them, so two entrants with the same name stay two entrants with two chances.
- SHA-512
- A cryptographic hash. Any change to the certified result document produces a completely different hash, which is what makes the record tamper-evident.
- Reduce motion
- An operating system accessibility setting. When on, the wheel makes one short turn of about 0.6 seconds instead of the full 5.2 second spin.