HandyTools Hub

🎯 Random Name Picker

Paste names, spin the roller, and pick a fair winner.

🔒 100% client-side — names are never stored

Paste a list of names, hit pick, and watch the roller cycle through the entries before landing on one lucky winner. Built for teachers calling on students, streamers running giveaways, teams picking who presents first, and any raffle that needs a fair, unbiased draw — with a history of past winners and an option to remove each winner from the pool.

How to Use

  • Paste names: Enter one name per line in the input area — order does not matter.
  • Choose the mode: Keep 「Remove winner from list」 checked for draws without repeats, or uncheck it to keep everyone eligible.
  • Pick: Click the pick button and watch the rolling animation slow down onto the winner.
  • Pick again: Draw the next winner; every result is added to the history list below.

Features

  • Cryptographically fair randomness via crypto.getRandomValues
  • Rolling animation that cycles names and lands on the winner
  • Optional removal of winners so nobody is picked twice
  • Automatic cleanup: trims whitespace, drops blank lines, merges duplicates
  • Winner history with one-click clear
  • Works entirely in your browser — names are never uploaded

Fair Draws, Explained

Many online pickers quietly use Math.random, which is fast but not designed for fairness or unpredictability. This tool picks the winner with crypto.getRandomValues, the same secure random source browsers use for generating keys. Combined with automatic deduplication, each visible name has exactly the same probability of winning — 1 in N for a cleaned list of N names. Because winners can be removed after each draw, a series of picks behaves like drawing names out of a hat: every remaining name is equally likely, and nobody wins twice unless you want them to.

Use Cases

  • Classrooms: Call on students at random so everyone stays engaged.
  • Giveaways and raffles: Draw prize winners live on stream or in a meeting.
  • Team stand-ups: Pick who speaks first without playing favorites.
  • Chores and tasks: Assign the next unlucky volunteer fairly.

Tips for a Good Draw

Paste your list before the draw and let the tool deduplicate it — a name that appears twice would otherwise double that person’s odds. If you are drawing several winners for different prizes, leave removal on and pick in prize order so the history reads like official results. For big events, keep the textarea untouched between draws: the tool maintains the shrinking pool for you, and the history records every winner in order.

Frequently Asked Questions

How random is the pick?

The winner is chosen with crypto.getRandomValues, the browser's cryptographically secure random source — not Math.random. Every name in the list has an exactly equal chance of being picked, so the result is fair for raffles, classrooms, and giveaways.

Can I pick several winners in a row without repeats?

Yes. The 「Remove winner from list」 option is on by default: after each pick the winner is removed from the textarea, so the next draw cannot land on the same person again. Uncheck it if you want names to stay eligible for every draw.

Are my names uploaded or stored anywhere?

No. Everything runs entirely in your browser with JavaScript. The name list never leaves your device, nothing is sent to a server, and the list is gone when you close the tab.

What happens to duplicate or empty lines?

The list is cleaned automatically before each draw: names are trimmed, blank lines are dropped, and exact duplicates are merged so no one gets an unfair double chance. If you want the same person in twice, spell the entries slightly differently.

Is there a limit on how many names I can paste?

There is no hard limit — the tool handles lists from a handful of names up to thousands. Very long lists just make the rolling animation cycle faster.