# Random Name Picker

> Paste a list of names, then pick one or more winners at random, shuffle the whole list, or split it into teams. Every draw is unbiased.

- URL: https://generate.now/random-picker
- Category: Data & types
- Price: free, no account required
- AI-powered: no (runs in the browser)
- Last updated: 2026-11-11

## What is a random name picker?

A random name picker takes a list of names or other items and selects from it by chance, so that every item has the same probability of being chosen. This one draws winners, shuffles a list into a random order and deals a list into teams, using the browser's cryptographic random number source.

## How the Random Name Picker works

Type or paste a list, one item per line or separated by commas. The picker counts the items, flags duplicates and can remove them. Pick any number of winners, with the option to take each winner out of the list before the next draw. Shuffle the list into a random order. Or split it into a set number of teams, or into teams with a maximum size; team sizes never differ by more than one and the tool says where the remainder went. Draws use a Fisher-Yates shuffle fed by crypto.getRandomValues with rejection sampling. It is a list picker, not a spinning wheel. The list stays in your browser.

## How the draw works

Every mode is the same operation: a Fisher-Yates shuffle. The picker walks the list from the first position and swaps each position with one chosen uniformly from the positions not yet fixed. Winners are the first entries of the shuffled order, a shuffle is the whole order, and teams are consecutive slices of it. When you draw k winners from n items, each item wins with probability k/n.

Each swap needs a random whole number below the count of remaining items. The picker takes 32 random bits from crypto.getRandomValues and throws away any draw that falls in the uneven tail of the range (rejection sampling). The shortcut of taking a remainder is slightly unfair: 2^32 divided by 6 leaves a remainder of 4, so four of six values would each come up once more often than the other two in every 4,294,967,296 draws.

The draw is decided the moment you press the button. The short fade-in that follows is decoration; it is skipped when your system asks for reduced motion.

## How uneven team sizes are handled

When the list does not divide evenly, team sizes differ by one at most. With a set number of teams, the leftover items go one each to the first teams. With a team size, the picker makes the fewest teams that keep every team at or below that size, then evens them out, so 10 items with a largest size of 4 become teams of 4, 3 and 3 rather than 4, 4 and 2. Which people land in the larger teams is random, because the list is shuffled before it is dealt.

The table was produced by running the tool's own team-size function on each input.

| Items | Setting | Team sizes |
| --- | --- | --- |
| 10 | 3 teams | 4, 3, 3 |
| 13 | 5 teams | 3, 3, 3, 2, 2 |
| 23 | 4 teams | 6, 6, 6, 5 |
| 7 | Largest size 2 | 2, 2, 2, 1 |
| 10 | Largest size 4 | 4, 3, 3 |
| 11 | Largest size 5 | 4, 4, 3 |
| 12 | Largest size 5 | 4, 4, 4 |

*Team sizes for lists that do not divide evenly*

## When to use the Random Name Picker

- Draw a giveaway or raffle winner from a list of entrants
- Choose who presents next, taking each person out of the list once picked
- Split a class or a workshop into groups of a set size
- Put a list of tasks, songs or speakers into a random order

## Random Name Picker examples

### 10 names, pick 3 winners

```
Hiro, Chloe, Jonas
```

Three different entries, in the order they were drawn. Each of the 10 names had a 3 in 10 chance.

### 10 names, 3 teams

```
Team 1: Elena, Chloe, Ben, Grace
Team 2: Farid, Amara, Imani
Team 3: Jonas, Dev, Hiro
```

10 ÷ 3 leaves 1 over, so one team has 4 members and two teams have 3.

### red, green, blue, yellow, purple (shuffle)

```
purple, yellow, red, blue, green
```

A comma-separated list with no line breaks is split on the commas. One of the 120 possible orders of five items.

## Frequently asked questions

### Is the draw fair?

Yes. The list is shuffled with the Fisher-Yates algorithm, using whole numbers drawn from crypto.getRandomValues with rejection sampling, so every order of the list is equally likely and no position in the list is favoured. In a test of 240,000 shuffles of four items, all 24 orders appeared at rates consistent with chance.

### Can the same name win twice?

Not within one draw: picking 3 winners gives 3 different entries. Across draws it depends on the setting. With "Remove winners from the list" on, each winner is deleted from the list after the draw. With it off, winners stay and can be drawn again. A name that appears twice in the list counts as two entries.

### How are duplicates handled?

The picker counts entries that repeat an earlier one, ignoring capital letters and extra spaces, and shows the number under the list. Nothing is removed unless you press the Remove duplicates button, which keeps the first copy of each. Leave duplicates in if someone is meant to have more than one entry.

### What happens when the teams cannot be equal?

Sizes differ by one at most, and the tool states the split before and after the draw. For 23 items in 4 teams, three teams get 6 and one gets 5. If you set a largest team size instead, it makes the fewest teams that fit: 11 items with a largest size of 5 become teams of 4, 4 and 3.

### Is my list sent anywhere?

No. The list is read and shuffled by code running in the page and is not sent to our server. It is not saved either, so it is gone when you reload. The page loads analytics that record page views and button use, including how many items were in the list, not the items themselves.

### How many items can the list hold?

The list can hold up to 10,000 items. Lists can be typed, pasted into the box, or pasted anywhere on the page, which adds to the list. Blank lines are ignored and spaces around each item are trimmed. If the text has no line breaks, it is split on commas.

### Is there a spinning wheel?

No. This is a list picker: results appear as text with a short fade-in. A wheel adds suspense without making the draw any fairer, and it becomes unreadable past a few dozen entries. The result is announced to screen readers as soon as it is drawn.

## References

- [Fisher-Yates shuffle](https://xlinux.nist.gov/dads/HTML/fisherYatesShuffle.html): NIST Dictionary of Algorithms and Data Structures. Definition of the shuffle used for every draw, with citations to Fisher and Yates (1938), Durstenfeld (1964) and Knuth's Algorithm 3.4.2P.
- [Web Cryptography API: the getRandomValues method](https://w3c.github.io/webcrypto/#Crypto-method-getRandomValues): W3C. The specification of the browser's source of cryptographically strong random values, which supplies every random number in a draw.
- [Crypto.getRandomValues()](https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues): MDN Web Docs. Usage notes and browser support for the same method.

## Related tools

- [Random Number Generator](https://generate.now/random-number): Generate random integers or decimals between any two numbers, up to 10,000 at a time. Allow or forbid repeats, and add a seed for a repeatable sequence.
- [Dice Roller](https://generate.now/dice): Roll d4, d6, d8, d10, d12, d20, d100 or a custom die, up to 100 at once, with a modifier. Type dice notation such as 3d6+2 or 2d20kh1.
- [Coin Flip](https://generate.now/coin-flip): Flip a coin online for heads or tails, or flip up to 10,000 at once and see the counts, percentages, full sequence and longest streak.
- [Random Word Generator](https://generate.now/random-word): Generate 1 to 50 random English words from a list of 7,776 common words. Filter by length (3 to 9 letters) and by first letter.

## More in Data & types

- [UUID Generator](https://generate.now/uuid): Generate UUID v4, v7 or v1, one at a time or up to 1,000. Output as standard, uppercase, braces (GUID), no hyphens, URN or Base64, and decode any UUID you paste.
- [JSON to TypeScript Types](https://generate.now/json-to-types): Paste JSON and get TypeScript interfaces, type aliases, a Zod schema or a Valibot schema. Updates as you type, in your browser.
- [Mock Data Generator](https://generate.now/mock-data): Generate up to 1,000 rows of fake test data as JSON, NDJSON, CSV or SQL INSERT. Pick the fields, set an optional seed, and copy or download.

[All 39 tools](https://generate.now/tools)
