KKwikfig.

Random Name Picker

Pick a random name — or several — from your own list: classroom draws, raffle winners and team picks, with a remove-the-winner flow built in. Runs entirely in your browser — your numbers never leave this device.

6 names in the list, 6 still in the draw.

Picked name
…

Picks are drawn from the browser's cryptographic random source with rejection sampling, so every name in the list has an equal chance — never Math.random. The list and the winners exist only in this tab.

How it works

The list is cleaned first: split on lines and commas, trim each entry, drop empties, optionally remove duplicates | Picks without repeats = a partial Fisher–Yates shuffle of the cleaned list, taking the first entries | Picks with repeats = one independent uniform draw per pick

Paste your names — one per line, or separated by commas — and the picker cleans the list before anything is drawn: entries are trimmed, blank lines disappear, and the duplicate toggle removes repeated names, keeping the first occurrence, so a name pasted twice does not silently double its owner's chance. The count beside the list is the honest denominator of the draw. Then choose how many names to pick and whether repeats are allowed, and press pick. The draw itself uses the browser's cryptographic random source with rejection sampling — never Math.random, and never a spinning animation standing in for randomness.

Without repeats, the picker runs the same construction as the unique mode of the Random Number Generator: a partial Fisher–Yates shuffle, in which each drawn position is swapped with a uniformly chosen position among those remaining. That guarantee matters in a classroom or a raffle: nobody can be drawn twice, and every name still in the list has exactly the same chance at every step. The remove-winner flow builds on it — press 'Remove winner & draw again' and the winner leaves the pool in this tab's state, so the next draw is among everyone else. Close the tab and the removal is forgotten; restart with the Reset button and the full list is back in the draw.

Fairness here has a social half as well as a mathematical one. A picker can only draw from the list it is given, so read the cleaned count before you draw: a name missing from the list had no chance at all, and a name pasted twice with de-duplication off has double the chance of everyone else. For anything with real stakes — money, prizes someone will dispute — run the draw where the entrants can see the list and the result, or use a witnessed process. For choosing who presents first, who washes up, or which student answers next, an equal-chance draw from a clean list is exactly the tool for the job.

Worked examples

Cleaning a pasted class list

Input
Text = ' Alice ' on one line, a blank line, then Bob, then ' Carol '
Working
Splitting on line breaks gives four raw fragments. Trimming turns ' Alice ' into Alice and ' Carol ' into Carol, and the blank line is dropped rather than becoming an empty entrant that could 'win'.
Result
A clean list of 3 names: Alice, Bob, Carol

Picking everyone, in draw order

Input
Names = Alice, Bob, Carol, Count = 3, Repeats = off
Working
The shuffle-sample rearranges all three names and takes the first three — which is all of them. Every name is guaranteed to appear exactly once; only the order, which is the finishing order of the draw, is random.
Result
All 3 names, each exactly once, in a random order

Asking for more names than the list holds

Input
Names = 4 names, Count = 5, Repeats = off
Working
Five different names cannot come from a list of four: the fourth pick empties the pool. The picker refuses with an explanation instead of quietly repeating a name and breaking the no-repeats promise. Switching repeats on makes the same request valid — five independent draws from four names.
Result
Error — cannot pick 5 different names from a list of 4 without repeats

Frequently asked questions

Can the same name be picked twice?

Only if you allow it. With repeats off (the default), picks come from a shuffle of the list, so no name can appear twice in one draw or across draws when you use the remove-winner flow. With repeats on, each pick is an independent draw — the same name can legitimately come up twice, exactly as drawing a slip and putting it back allows.

What does 'Remove winner & draw again' do?

It takes the name or names just picked out of the pool — in this tab's state only — and immediately draws again from who is left. It is the flow for picking a first, second and third place, or for working through a whole class over a lesson: everyone is drawn exactly once before the pool runs out, at which point Reset restores the full list.

I pasted a name twice. Does it get two chances?

That depends on the duplicate toggle, which is on by default: duplicates are removed during cleaning, first occurrence kept, so the pasted-twice name has exactly one chance like everyone else. Turn the toggle off if duplicates are deliberate — for example, a raffle where a person legitimately holds two entries — but say so out loud when you draw.

Is the draw really fair?

The draw mechanism is: names are sampled from crypto.getRandomValues with rejection sampling, so every name in the cleaned list has an equal chance on every pick. What the picker cannot police is the list itself — who was left off, and whether duplicates were intentional. Check the cleaned name count shown above the draw; that count is the draw's real denominator.

Are the names I paste saved anywhere?

No. The list, the picks and the removed winners exist only in this tab's memory and vanish when you close it — there is no account, no upload and no history. Paste names back in for the next draw, and treat a screenshot as your record if the result needs keeping.

Related tools

More in Everyday Tools & Generators · Browse all tools