Random Order Shuffler
Paste a list, get it back in random order — line-, comma- or whitespace-separated input, optional seed for reproducible runs, numbered or plain output.
Dave Han Frank Carol Bob Eva Gina Alice
Shuffle is Fisher-Yates — uniform over all permutations. With a seed, results are deterministic and can be reproduced anywhere.
How to use
- Paste your list. Pick how it's separated (lines is the default).
- Hit Reshuffle. Or paste a seed (a name, a number, anything) for a reproducible order — same seed always gives the same result.
- Pick the output format. Numbered is useful when the order itself is the point (presentation slots, draft picks).
About this tool
ShowHide
A Fisher-Yates shuffle that respects whatever separator your list already uses — newlines, commas, semicolons — so a column pasted from a spreadsheet comes back shuffled in the same shape it went in. Useful for assigning code-review pairs, randomising demo order, drawing a draft order, or anything that needs a fair permutation rather than a vague sense of mixing.
Leave the seed empty and each shuffle draws fresh bits from crypto.getRandomValues, the operating system's cryptographic generator. Fill the seed in and the tool switches to mulberry32, a small deterministic generator, so the same seed and the same list always produce the same order. That is the useful half of a seeded draw: you can publish the seed and let anyone reproduce the result instead of asking them to take your word for it.
The reproducibility is only worth something if the seed is committed before the draw. A seed chosen after seeing the list can be searched — try a few thousand until one puts the right name first, and publish that one. The honest procedure is to announce the seed, or better a rule that fixes it to something nobody controls (a closing price, a lottery number, a block hash), and only then run the shuffle. Published afterwards, a seed proves the arithmetic and nothing about the intent.
There is also a size limit on what a seeded shuffle can reach. Mulberry32 holds 32 bits of state, so there are about 4.3 billion distinct seeds — which is fewer than the number of orderings of thirteen items, since 13 factorial is 6.2 billion. For a list of twelve or fewer, every possible order is reachable; past that, most orders simply cannot be produced by any seed. It does not make a particular draw unfair, and nobody can exploit it without an enormous search, but it means "every arrangement is possible" stops being literally true somewhere around a baker's dozen. The unseeded mode has no such ceiling.
Frequently asked questions
Is the shuffle uniform?
Yes. Fisher-Yates over crypto.getRandomValues (or the seeded PRNG) — every permutation is equally likely. No biases from naive sort(() => Math.random() - 0.5) which gives skewed orderings.
Why use a seed?
Reproducibility. Run the tool with seed team-dec-standup and you'll get the same speaking order every time, which everyone can verify. Without a seed each click pulls new entropy and the order is non-repeatable.
Can I use a shuffle to assign people fairly?
For an unbiased assignment, yes — every arrangement is equally likely, which is exactly what fairness means here. What a shuffle cannot do is honour constraints: nobody paired with their own name, no two people from the same team together, nobody repeating last month's partner. Those need a redraw when the constraint is violated, or a method built for the constraint, not a better shuffle.
Does a seed make the draw more trustworthy?
It makes it reproducible, which is a different and useful property: anyone with the seed and the list can rerun it and get your result. That only demonstrates fairness if the seed was fixed before the draw and published — a seed chosen after seeing outcomes proves nothing, because you can keep trying seeds until one gives the answer you wanted.
Related tools
Raffle Draw
Pick N winners from a list of names — cryptographically random, with or without duplicates.
Random
Playing Card Drawer
Draw N cards from a properly shuffled 52-card deck (optional jokers), with deck-tracking so you don't draw the same card twice.
Random
Random Emoji Picker
Pick random emojis from 10 categories — smileys, people, animals, food, activities, travel, objects, symbols, nature, weather.
Random
Spinner Wheel
Type your options, spin a colored wheel, get a winner — with optional remove-after-winning for raffles and history of the last 20 picks.
Random
Nickname Generator
Generate Docker-style memorable nicknames (elegant-archimedes, funny-curie) — pick a style, separator, count.
Random
CSS Named Colors
All 147 CSS / X11 named colors with HEX, RGB, and a live swatch — searchable and grouped by hue.
Color & CSS