Math and conversion

Random Name Picker Online

Draw names, numbers, groups or a random order — with the seed in plain sight, so any entrant can redo the draw and confirm the result is the same.

  • 100% in your browser
  • free
  • no sign-up

One per line, or separated by commas. Duplicates can be removed below.

0 entries in the list

Options

The seed determines the result. Leave it blank to generate a new one on every draw, or fix one (a lottery number of the day, for instance) so anyone can reproduce and verify it.

Result

Add entries and click Draw.

The problem with every online name picker

Practically all of them call Math.random() and show you only the winner. That works for deciding who buys the coffee — and fails for anything with a prize, a grade or a slot at stake, because it leaves no trace. Whoever runs the draw can click ten times until the right name appears, and nobody can prove otherwise. The entrant simply has to believe.

Here the draw is deterministic from a seed: any text you choose that fully determines the result. Same list, same seed, same options — same result, today and a year from now, on your computer or on the computer of anyone checking.

How to run a draw that proves itself

  1. Publish the list of entrants beforehand — in a post, a story or a shared spreadsheet.
  2. Announce the seed before drawing. The best kind of seed is one that does not exist yet and that you do not control: "I will use Saturday's first lottery number". That way not even you knew the result when you made the promise.
  3. Draw and publish the result with the seed. The copy button already takes both together.
  4. Anyone can verify by pasting the same list, typing the same seed and clicking Draw. If the result matches, the draw was fair.

Four modes for four different problems

  • Draw names — one or several winners from a list. The order of the result is the order of the draw, so the second name is already the runner-up.
  • Draw numbers — raffles, bingo, share draws or registration numbers, in any range.
  • Make groups — football teams, work groups, workshop breakouts. The deal is round-robin, so the groups come out evenly sized.
  • Random order — who presents first, interview order, code review queue. Shuffles the whole list without eliminating anyone.

Where this gets used

Teachers draw who presents and form work groups without argument. Creators run follower giveaways with public proof. Engineering teams draw who is on call, who reviews which PR and the order of the daily. Shops run raffles and promotions. In every case the value is not in "generating a random number" — it is in not having to defend the result afterwards.

If what you need is to generate something unpredictable rather than pick between options, the password generator uses cryptographic randomness (which, unlike here, is designed not to be reproducible). For fake test data, the CPF and CNPJ generator generates in bulk.

How the randomness works here

The seed goes through a hashing function (xmur3) and feeds a 32-bit pseudo-random generator (mulberry32). The shuffle uses Fisher-Yates, the algorithm that guarantees every permutation of the list is equally likely — unlike the common trick of sorting with sort(() => Math.random() - 0.5), which produces biased results that favour whoever sits at the top of the list.

An honest caveat: a seeded generator is predictable by construction — that is precisely the property that makes the draw auditable. It is perfect for draws and terrible for security. Never use a seed like this to generate a password, a token or a key.

Privacy: the list never leaves the browser

No name typed here is sent to any server. The entire draw happens locally, with no network request and no storage — which lets you draw lists of clients, students or employees without exposing other people's personal data.

## faq

Frequently asked questions

How do you prove a draw was fair?

Publish the seed before drawing. The seed is the text that determines the result: with the same list, the same seed and the same options, the draw always returns exactly the same names. If you announce beforehand "I will use the seed MEGA2408" — or use a public number that does not exist yet, such as tonight's lottery number —, any entrant can repeat the draw afterwards and confirm the result. That is what separates an auditable draw from a "trust me".

What happens if I leave the seed blank?

Every click on Draw generates a fresh random seed using the browser's cryptographic generator. The result is shown together with the seed that was used, so you can still prove that specific draw later — you just cannot prove you did not draw several times before. For draws with a prize, fixing the seed beforehand is the way to go.

How do I draw more than one winner?

Type how many you want in the "How many to draw" field. With the repeats option off, each name can only come out once, and the order of the result is the order of the draw — the first is the winner, the second is the natural runner-up. If you ask for more than the list holds, the draw returns the whole list shuffled, because there is no way to draw more names than exist.

Can it make balanced teams or groups?

Yes, in the "Make groups" tab. The list is shuffled and dealt round-robin across the groups, so the sizes come out as close as possible — with 11 people in 3 groups you get 4, 4 and 3, never 5, 3 and 3. The split is random, not balanced by skill: the tool does not know who plays better, it only guarantees that nobody picked.

How do I draw numbers for a raffle or bingo?

Use the "Draw numbers" tab, set the range (1 to 100, for example) and the quantity. With repeats off, each number comes out only once — the correct behaviour for a raffle, a bingo or a share draw. With repeats on, each position is an independent draw, like rolling a die several times, and duplicates can appear.

Does the list need a specific format?

No. You can paste one name per line, or separate them with commas or semicolons — which is how lists come out of spreadsheets, group chats and forms. Extra spaces are trimmed and blank lines ignored. The "Ignore repeated names" option is on by default so that the same person pasted twice does not get double the chance; turn it off if your draw gives extra entries to people who participated more.

Is my data sent to a server?

No. The list, the options and the entire draw run in your browser, in JavaScript, with no network request. Names of clients, students or employees never leave your machine — and nothing is stored once you close the page. To keep the result, use the copy button: it takes the drawn list and the seed together.

## other tools