Random List Shuffler
Shuffles your whole list into a fair, random order.
Built and maintained by Paul Clark, Redmoon Software · Last checked
Paste any list of names, prizes, tasks, or to-do items and the shuffler reorders the whole thing into a fair, random sequence. It's handy for setting a draw order, randomizing a playlist, or deciding who goes first without arguments. Because it uses your browser's Web Crypto API, every possible ordering is equally likely.
Paste your list. One item per line. Names, prizes, tasks — anything.
0 items
Click Shuffle list to see a result.
Options
Recent results
- No history yet.
How it works
- Paste your list. One item per line. Names, prizes, tasks — anything.
- Shuffle. Click Randomize. We use a Fisher-Yates shuffle for a perfectly uniform result.
- Copy, share, or export. Use the buttons under the result. Share links round-trip your list.
About the Random List Shuffler
Every ordering is equally likely
The shuffle is a Fisher–Yates pass driven by the browser's cryptographic random source, which means every one of the possible orderings has exactly the same chance of coming out. That is a stronger claim than "it looks random", and it is not what a naive shuffle gives you.
The common wrong implementation — sorting by a random comparator — produces measurably biased orderings, with items near their starting position more often than they should be. It is the single most widespread bug in shuffling code, and it is invisible until you run it ten thousand times and count. There is a longer piece on why.
Dedupe, numbering and seeds
Remove duplicates collapses identical lines before shuffling. This matters more than it sounds: two identical entries are two chances at every position, so a list with a name typed twice quietly gives that name double weight. If the duplicates are deliberate — a raffle where someone bought two tickets — leave the option off, because that is exactly how you express weighting in a plain list.
Number the results prefixes each line with its position, which is what you want when the output is going into a document as an order rather than back into another tool.
Seed makes the shuffle reproducible. Publish the list and the seed beforehand and anyone can verify afterwards that you ran it once and did not re-roll — which is the difference between a draw people trust and a draw they take your word for.
A shuffle answers several questions at once
- The whole order: presentation slots, turn order, a randomised playlist.
- One winner: shuffle and take the first — identical in distribution to a single pick.
- Several winners: shuffle and take the first n, which guarantees they are distinct.
- A random split: shuffle, then cut the list into chunks.
Frequently asked questions
Is this truly random?
Yes — we use the browser's crypto.getRandomValues to drive an unbiased Fisher-Yates shuffle. Each possible permutation has exactly the same probability.
Does my list get sent anywhere?
No. The shuffle runs entirely in your browser, and your list never leaves your device or touches a server.
Can I reproduce a shuffle later?
Yes. Open Options and set a seed value; the same seed plus the same list always produces the identical order, which is useful for audits or sharing a verifiable result.
Is there a size limit?
Tens of thousands of items shuffle instantly. Very large lists above roughly 100,000 entries may slow your browser down.
Related randomizers
Further reading
- Proving a shuffle wasn't rigged: seeded shuffles and the duplicate trap
Anyone can claim a shuffle was fair after the fact. A seeded shuffle lets you prove it — and the copy-paste duplicate that quietly stacks the odds is the other thing worth catching before you hit Randomize.
- Shuffling a list without bias: the one-line mistake almost everyone makes
The most popular way to shuffle a list on the web is also subtly broken. Here's why sort-by-random gives you a lopsided order, what a fair shuffle actually looks like, and when you want a shuffle versus a draw.