List Randomizer / Shuffle
Randomize and shuffle list items online using the Fisher-Yates algorithm. Multiple shuffle passes supported. Free, fast, client-side tool.
Why Use the List Randomizer?
Need to randomly order a list? Whether you're picking winners for a giveaway, creating randomized test orders, or shuffling a playlist, our List Randomizer uses the proven Fisher-Yates algorithm for truly unbiased shuffling every time.
Key Features
- Fisher-Yates algorithm for statistically fair shuffling
- Support multiple shuffle passes for extra randomization
- One-click re-shuffle for new random orders
- Item count display for quick reference
How to Use
- Enter your items, one per line, in the input textarea
- Set the number of shuffle passes (default: 1)
- Click Shuffle to randomize your list
Technical Details
The Fisher-Yates shuffle algorithm produces an unbiased permutation — every possible ordering is equally likely. It works by iterating from the last element to the first, swapping each element with a randomly chosen element at or before it. Multiple passes increase entropy but a single pass is mathematically sufficient for uniform distribution.
FAQ
Is the shuffle truly random?
Yes, the Fisher-Yates algorithm produces a perfectly uniform random permutation when the underlying random number generator is uniform. We use JavaScript's Math.random().
Should I use multiple shuffle passes?
A single Fisher-Yates pass is mathematically sufficient for a uniform shuffle. Multiple passes don't improve randomness but may provide psychological confidence.
Related tools
Compare Two Lists / Arrays
Compare two lists and find items unique to each, plus common items
List Intersection (Common Items)
Find common items between two lists with case-sensitive toggle
List Union (Merge & Dedupe)
Merge two lists together and remove duplicates
List Difference (A − B)
Find items in List A that are not in List B (set difference)
Remove Empty Lines
Remove empty and blank lines from text instantly
Add Line Numbers
Add line numbers to text with customizable start number, separator, and padding