gizmobench
BrowseDaily

List Randomizer

Paste names, numbers or any other list, then press Shuffle for a fresh random order. Choose Whole list, Pick one or Groups. Each draw uses a Fisher-Yates shuffle with the browser’s cryptographic random generator; your input stays in Your list while the result appears in a separate pane.

Shufflednothing to shuffle yet

Paste a list into the Your list box, then press Shuffle.

No list yet.

Every ordering equally likelyNothing dropped, nothing addedYour list stays in this browserNo account, no length limit
Items
0
Show
Separator
Keep duplicates

No draw yet. Shuffle puts the list into a random order.

Line breaks separate items by default, so a column pasted out of a spreadsheet works as it is, and a name written "Smith, John" stays one item. Switch Separator to Comma when your list is typed on one line. Shuffle again draws a fresh order from the same list, so two draws of the same list are almost never the same order.

Why this order is fair. Most list shufflers sort the list with a random comparator, which is biased: some orderings come up far more often than others, and which ones depends on the sorting algorithm the browser happens to use. This one walks a single Fisher-Yates pass instead, swapping each position with a uniformly chosen earlier one, so every possible ordering has the same chance. The index comes from crypto.getRandomValues by rejection sampling rather than a remainder, so no position in your list is favoured, and the list you pasted is copied before the pass rather than sorted in place, which is why Your list still holds your input afterwards.
Accuracy. One Fisher-Yates pass over the browser's cryptographic random generator, so every ordering is equally likely and no item is dropped, duplicated or reordered on its own. It cannot prove a draw to anyone else: the result lives in your browser and nothing is recorded.

Common questions

Is the shuffle really random?
The tool walks the list from the end and swaps each position with a uniformly chosen position at or before it, a Fisher-Yates shuffle. Each index comes from crypto.getRandomValues and rejection sampling avoids the small bias of a bare remainder. A random sort comparator does not provide the same equal-ordering property.
Is my list uploaded anywhere?
No. There is no server in this: the page runs entirely in your browser, the shuffle happens on your own device, and neither your list nor the order it came out in is sent or logged anywhere. The text in the box and your separator choice are remembered in this browser alone, so the list is still there when you come back. Nothing else is kept: a draw is replaced the moment you shuffle again and is gone when you close the page.
Can I shuffle the same list twice and get the same order?
There is no seed or replay control: every shuffle draws fresh random numbers. For four distinct items, matching the previous order has a 1 in 24 chance; for ten distinct items, 1 in 3,628,800. Repeated identical entries can make the same visible order more likely. A draw is local and does not provide a verifiable record for someone elsewhere.
How do I pick one item instead of ordering the whole list?
Set Show to Pick one. The tool runs the same single Fisher-Yates pass and then reads the first item off the shuffled order, which is a uniform pick: every item has exactly the same chance of ending up on top. The rest of the order is printed underneath it, so if the first choice declines you already know who is next, and Shuffle again draws a completely fresh order rather than picking again from what is left. If you want each name to be removed as it is drawn, so nobody comes up twice across several draws, the random name picker is built for that.
What counts as one item, and what happens to duplicates?
With Separator set to Line, every line is one item, so an entry written "Smith, John" stays a single item and only line breaks split it. With Separator set to Comma, commas and line breaks both split, which is what a comma list pasted out of a document needs. Blank lines and the spaces around an item are dropped either way, and nothing else about an item is changed: the text that goes in is the text that comes back out. Keep duplicates is on by default, so a raffle entry typed twice is two entries and really does have two chances. Turn it off and identical entries collapse to the first one. The match is exact, so "Red" and "red" stay two items: deciding that two spellings are the same thing is not a call this tool should make behind your back.
How do I split a list into random teams?
Set Show to Groups and name a group size. The shuffled order is cut into consecutive groups of that size, so the randomness happens once and the split is only a question of where the cuts fall. A remainder becomes a shorter final group: eight people in threes is three, three and two, and the tool prints those sizes rather than padding a group or dropping the odd one. Copy writes the groups out as numbered lines you can paste into a message. If you know how many teams you want rather than how big each should be, the random team generator takes that number instead.
How long a list can I paste in?
No list-length limit is imposed. The practical ceiling is your device’s memory and speed, so long lists can take longer. Both panes wrap and scroll. Enter at least two items; one item is refused because it has no different ordering.
Can I shuffle a list copied from a spreadsheet?
Yes. Copy one column of names, numbers or text and paste it into Your list with Separator set to Line. Whole list and Copy produce one item per line that you can paste into a column again. The page does not open workbooks or preserve multi-column rows; tabs stay inside an item.

One Fisher-Yates pass over the browser's cryptographic random generator, so every ordering is equally likely and no item is dropped, duplicated or reordered on its own. It cannot prove a draw to anyone else: the result lives in your browser and nothing is recorded.