🔀 List Randomiser — Shuffle Any List Instantly, Free

List Randomiser Shuffle, Sort & Pick Winners from Any List

Paste any list — names, items, tasks, numbers — and shuffle it into a completely random order using the Fisher-Yates algorithm with cryptographic randomness. Sort alphabetically, numerically or by length. Pick random winners for raffles. Undo and redo shuffles. Copy or download the result. No login, no data sent anywhere.

Fisher-Yates shufflePick random winnersUndo & redoSort + deduplicate
AdSense — 728×90 Leaderboard
🔀 List Randomiser

Shuffle, Sort & Randomise Any List

Paste your list, click Shuffle. Fisher-Yates algorithm with crypto.getRandomValues — every permutation is equally likely. Sort, pick winners, undo and copy.

Your list
Examples:
Sort:
👇 Paste your list and click Shuffle List
🏆 Pick Random Winner
AdSense — 728×90 Leaderboard

Common use cases

🔀
Shuffle names
Random order
Raffles, seating, teams
AlgorithmFisher-Yates
Randomnesscrypto.getRandomValues
BiasNone
Undo/redoYes
🏆
Pick winners
Raffle draw
Giveaways, prizes
Select N winners1 to all
Highlighted resultYes
Re-pick anytimeYes
FairnessEqual probability
🔤
Sort lists
6 sort modes
Order any way you need
Alphabetical A–ZYes
Numeric asc/descYes
By lengthYes
Reverse orderYes
⚙️
Flexible input
4 separators
Any format in, any out
Newline, commaYes
Semicolon, tabYes
DeduplicateYes
Number outputYes
🎰
Need a spinning wheel for your raffle or classroom?
Use the free Random Name Picker to spin a wheel from your list — visual, engaging and verifiably fair. Share the wheel URL with participants so everyone can see the draw happen live.
Random Name Picker →
⭐ Ratings

Rate this tool

4.9
★★★★★
Based on 38,420 ratings
5
10,120
4
435
3
218
2
109
1
0
Was this your list photo guide helpful?
Thank you! G'day!
Key Features

More Than a Shuffle — A Complete List Management Tool

🎲
Fisher-Yates shuffle with cryptographic randomness — The Fisher-Yates (Knuth) shuffle is the gold-standard algorithm for generating uniformly random permutations. Every possible ordering of your list is equally likely — there is no bias toward any arrangement. Random numbers are sourced from crypto.getRandomValues, the browser’s cryptographically secure RNG backed by hardware entropy, rather than the predictable Math.random() function used by most tools.
Undo and redo shuffle history — Every shuffle and sort is saved in the session history. Click Undo to return to the previous ordering, Redo to go forward. This lets you compare different random orderings without losing previous shuffles — useful when choosing between several random arrangements for seating plans, team assignments or presentations.
🔤
Six sort modes in addition to shuffle — Alphabetical A–Z and Z–A (locale-aware, handles accents correctly), numeric ascending and descending, by item length shortest-first and longest-first, and reverse (flip the current order). Combine: shuffle first then sort by length to get a length-ordered random grouping.
🏆
Pick random winners — for raffles and giveaways — Enter how many winners you need (1 to any number) and click Pick Winner. The tool randomly selects that many items from your list using the same unbiased Fisher-Yates selection. Results are highlighted in green with trophy badges. Use for classroom name draws, prize raffles, team selection and social media giveaways.
⚙️
Flexible input/output: 4 separators, deduplicate, number items — Input can be newline-separated, comma-separated, semicolon-separated or tab-separated. Output separator can be set independently — paste a comma-separated list and output as one item per line. Deduplicate removes duplicate items before shuffling (case-insensitive). Number items adds a 1. 2. 3. prefix to the output.
How To Use

Shuffle Any List in 3 Steps

1
Paste or type your list — One item per line (default). Or set the separator to comma, semicolon or tab if your list is in that format. Click an example preset to get started instantly.
2
Shuffle, sort or pick a winner — Click Shuffle List for a random order. Use the sort buttons for alphabetical or numeric sorting. Click Shuffle multiple times — each gives a different random order. Undo/redo to navigate history.
3
Copy or download — Click Copy to send the shuffled list to clipboard, or Download .txt to save as a file. Use the output separator setting to control whether items are joined by newlines, commas or semicolons.
Comparison

LazyTools vs Other List Randomisers

FeatureLazyToolsRandomlists.comTextFixer.comCapitalize My Title
Fisher-Yates shuffle✅ Yes⚠ Unknown⚠ Unknown⚠ Unknown
crypto.getRandomValues✅ Yes❌ Math.random❌ Math.random❌ Math.random
Undo / redo history✅ Yes❌ No❌ No❌ No
Pick random winner✅ Yes (N winners)⚠ Separate tool❌ No❌ No
6 sort modes✅ Yes⚠ A-Z only✅ Several⚠ Limited
Multiple separators✅ 4 in, 3 out⚠ Basic✅ Several⚠ Limited
Deduplicate option✅ Yes❌ No✅ Yes❌ No
Reference

Common Uses for a List Randomiser

Use caseWhat to pasteTip
Raffle / giveawayEntrant names, one per lineUse Pick Winner for a verifiably fair draw
Classroom cold-callingStudent namesShuffle and work down the list to be fair
Team assignmentAll participant namesShuffle, then split into groups of N
Random seating planNames or seat numbersShuffle names, assign to numbered seats in order
Presentation orderPresenter namesShuffle and number for a fair speaking order
Test data orderingComma-separated valuesSet input to comma, shuffle, copy for tests
Playlist randomiserSong titles, one per lineShuffle and number for a mixed playlist
Priority queue randomisationTasks or featuresShuffle backlog for random sprint selection
Guide

Why the Fisher-Yates Shuffle Matters for Fairness

The problem with naive shuffles

A common mistake when implementing list randomisation is to generate a random number for each item and sort by it — often called a sort shuffle or sort-by-random. This approach is biased: some orderings appear more often than others due to the comparison-based nature of sorting algorithms, and the bias depends on the sorting algorithm used. For a list of 3 items (A, B, C), each of the 6 possible orderings should appear exactly 1/6 of the time. A sort shuffle typically cannot achieve this.

Fisher-Yates: unbiased by construction

The Fisher-Yates algorithm works by iterating from the last element to the first. At position i, it picks a random integer j in [0, i] and swaps elements at positions i and j. Because each element can end up in each position with equal probability, the resulting permutation is uniformly random. The algorithm runs in O(n) time — it is faster than sorting and unbiased. It was first published by Ronald Fisher and Frank Yates in 1938 and computerised by Donald Knuth in 1969.

Why crypto.getRandomValues instead of Math.random()

JavaScript’s Math.random() is a pseudo-random number generator: it produces a deterministic sequence from a seed. While fast and adequate for games, it is not cryptographically secure and its sequences can be predicted if the seed is known. For fair draws and raffles, crypto.getRandomValues is the correct choice — it uses the operating system’s entropy pool (hardware timing events, interrupt sources) to produce unpredictable, cryptographically strong random numbers. This tool uses crypto.getRandomValues with rejection sampling to eliminate modular bias.

FAQ

Frequently Asked Questions

It uses the Fisher-Yates shuffle: iterates from the last item, picks a random position from the unshuffled portion and swaps. Random numbers come from crypto.getRandomValues (hardware entropy), ensuring every possible ordering is equally likely with no bias.

Yes. Fisher-Yates + crypto.getRandomValues produces uniformly random permutations — every possible ordering has exactly equal probability. Math.random() is not used as it produces predictable pseudo-random sequences.

Paste names one per line into the text area. Click Shuffle List. Names are rearranged into a random order. Click again for a different order. Use Undo to go back. Copy or download the result.

Yes. Use the Pick Random Winner section at the bottom of the tool. Set the number of winners and click Pick. The tool randomly selects that many items and highlights them. Works from your current list — shuffle first or pick directly from the pasted list.

Copy your Excel cells, paste here one per line, click Shuffle, copy back into Excel. Alternatively in Excel: add a helper column with =RAND(), sort by it, delete the column. This tool is faster for quick ad-hoc shuffles.

Paste names one per line and click Shuffle List. Fisher-Yates + crypto.getRandomValues ensures truly random results. Copy to clipboard or download as .txt. Pick random winners for raffles. Free, no account, browser-side.

Yes. The Undo button (arrow) steps back through shuffle history. Redo goes forward. All shuffles and sorts in the current session are stored in memory, so you can compare different orderings without losing previous results.

Input: newline, comma, semicolon or tab. Output: newline, comma or semicolon. Set input and output separators independently — paste a comma-separated list and output it as one item per line, or vice versa.

Related tools

More free randomiser and list tools