Random Name Picker
Paste your list, choose how many winners you need, and let the built-in randomizer choose fairly — with a short suspense animation before the reveal.
Winner(s)
Previous rounds
Picks use your browser's built-in cryptographic randomness (crypto.getRandomValues) with rejection sampling, so every eligible name has exactly the same chance.
A fair way to draw one winner or a whole shortlist
Picking a name out of a hat scales badly once the hat has more than a handful of names in it, and it scales even worse when you need three, five or ten winners instead of one. This picker replaces the hat: paste every name on its own line, say how many winners you need, and click once. The draw finishes in about a second, shows every winner at the same time, and never sends your list anywhere.
How the draw stays unbiased
Selecting a random item from a list sounds trivial, but the common shortcut — take a random 32-bit number and use the remainder after dividing by the list length — is subtly unfair. Since 232 rarely divides evenly by the number of names, the first few entries end up very slightly more likely to be picked. This tool avoids that by drawing from crypto.getRandomValues and discarding any value above the largest exact multiple, then trying again. For multiple winners, each slot is drawn one at a time from the shrinking pool of remaining names, so slot order never changes anyone's odds — only the display order is staggered for the reveal animation.
Example 1 — three winners for a giveaway. You have 40 entries and need 3 winners for 3 different prizes. Set "Number of winners" to 3 and click Pick. The tool draws 3 distinct entries without replacement — nobody can fill two slots unless their name was listed more than once — and reveals all three with a short staggered animation.
Example 2 — a five-day presenter rota, no repeats. Ten teammates, one presenter picked per stand-up for a week. Turn on "Remove winner(s) from the list" and draw one winner each morning: each day's winner leaves the pool, so by day five everyone left has an equal shot and nobody has presented twice. By day ten, every teammate has presented exactly once.
Example 3 — weekly raffle, list stays intact. A recurring 20-person raffle where you want to reuse the same roster every week but never repeat last week's winner. Leave the list untouched and turn on "Don't repeat a winner across rounds" instead of removing anyone — each week's winner is excluded from that week's draw only if you haven't cleared the history, and the full roster is still there to copy or edit for next time.
Remove winner vs. no-repeat — which one do you want?
| Situation | Setting to use | Why |
|---|---|---|
| Hand out 5 distinct prizes in one click | Number of winners = 5 | One draw, five non-overlapping slots |
| Speaking order, team draft, seating rotation | Remove winner(s) | Every name appears exactly once, list shrinks each round |
| Keep the roster for next time, skip repeat winners this session | Don't repeat across rounds | List stays intact; already-won names sit out until you clear history |
| Classroom cold call, "who buys coffee today" | Neither | Every draw is fully independent — repeats are fine and expected |
Practical notes
- Blank lines and stray spaces are ignored automatically, so pasting a column straight out of a spreadsheet works without cleanup.
- Names are matched exactly, including case — "Bob" and "bob" are treated as two different entries. Keep capitalization consistent if you plan to use "don't repeat across rounds."
- Duplicate names act as extra tickets. Listing "Alice" twice doubles her odds; with multiple winners in one round, that could let her fill two of the slots. List each person once if every entry should have exactly one chance.
- Clearing history also resets which names count as "already won" for the no-repeat option, so use it to start a fresh cycle without retyping the list.
- Nothing leaves your browser. The list, results and history live only in this page and your browser's local storage — there is no server, account or upload involved.
Sources & further reading
Frequently asked questions
How do I pick more than one winner at once?
Set "Number of winners" to however many you need — 3 for a triple giveaway, 5 for a team draft — and click Pick. The tool draws that many distinct entries from your list in a single round, so nobody fills two slots unless you deliberately listed them more than once. Each winner still comes from an independent, unbiased draw against the remaining pool.
What's the difference between removing a winner and not repeating winners across rounds?
"Remove winner(s) from the list" permanently deletes the drawn names from the textarea, so later rounds draw from a shrinking list — ideal for a running order or handing out one prize per person. "Don't repeat a winner across rounds" keeps your full list untouched but silently skips anyone who already won in a previous round this session, which is handy when you want to keep the original list for reference but still guarantee no repeats. Turn both off if every round should be completely independent, like a daily coffee-run pick.
Is the winner selection actually random and fair?
Yes. The picker uses crypto.getRandomValues, the same cryptographically secure source browsers use for security tokens, and rejects any value that would bias the result toward the start of the list — a common flaw in naive modulo-based random pickers. Every eligible name has exactly the same probability of being drawn, whether you're picking 1 winner from 5 names or 10 winners from 500.
Can the same name win more than one slot in a single draw?
Only if you typed that name more than once — duplicate entries are treated as separate tickets, so listing "Alice" twice doubles her odds and, with multiple winners, could let her fill two slots in the same round. If you want each person to have exactly one chance, keep every name on its own unique line. This mirrors how a physical raffle works: more tickets in the box, more chances to win.
Are the names I paste in saved or sent anywhere?
No. Everything — your list, the winner count, and the draw history — stays in your browser's memory and localStorage and is never uploaded to a server. Your last list is restored automatically the next time you open the page from the same browser, but nothing about it is visible to us or anyone else; clearing site data removes it for good.