Text Shuffle
Randomly shuffle words or lines in text
Updated
What is the Text Shuffle?
Text Shuffle is a fast, private, and powerful randomizer that shuffles text at any level you need — lines, words, sentences, paragraphs, or even individual characters. Perfect for teachers, writers, developers, researchers, and anyone who needs to randomize a list fairly.
No signup, no server upload, everything happens 100% in your browser.
Why use this shuffler?
- Fair randomization: Uses Fisher-Yates shuffle with a cryptographically-strong random source. No patterns, no bias.
- 8 shuffle modes: Lines, Words (global), Words per Line, Sentences, Paragraphs, Characters (global), Characters per Line, Characters per Word.
- Built for real lists: Handles thousands of lines without lag, preserves Unicode and emojis correctly.
- Reproducible when you need it: Optional deterministic seed lets you share the exact same shuffle with others.
- Pro-level controls: Keep first/last N items fixed (great for headers), remove duplicates before shuffling, trim whitespace, preserve empty lines, and choose your word delimiter.
Popular use cases
- Randomize a raffle or giveaway: Shuffle names and pick the top N.
- Study and flashcards: Shuffle questions, sentences, or vocabulary to avoid memorizing order.
- Writing prompts: Shuffle words or sentences to break writer's block.
- Data testing: Randomize CSV lines, test cases, or tasks.
- Games and puzzles: Create anagrams with Characters per Word or jumble lists for party games.
- Classroom activities: Mix up student groups, quiz items, or paragraph order.
If competitors give you only "shuffle lines," this tool gives you a complete text randomization toolkit in one clean interface.
How it works
The tool shuffles your text in 4 fast, transparent steps — all client-side.
1. Choose what to shuffle
Pick the granularity:
- Lines: Splits on
\n. Best for lists, names, tasks. - Words (global): Splits entire text into words using your chosen delimiter and shuffles globally.
- Words per Line: Keeps line breaks, shuffles words inside each line independently.
- Sentences: Detects sentences ending in
.!?and shuffles them. - Paragraphs: Splits on blank lines (
\n\n) and shuffles paragraph blocks. - Characters: Shuffles every character, including spaces and line breaks unless you use a per-line variant.
- Characters per Line / per Word: Jumbles letters inside each line or each word.
2. Configure parsing
- Delimiter: For word modes, choose Whitespace, Space, Comma, Semicolon, Newline, or a Custom string. The same delimiter is used to re-join.
- Trim & Empty Handling: Trim removes leading/trailing spaces from each item. Preserve Empty Lines keeps blank lines in the shuffle pool; otherwise they are dropped.
- Deduplication: Optionally removes duplicates before shuffling. Case-sensitive mode treats
Appleandappleas different.
3. Set deterministic behavior (optional)
- Keep First / Last N: Fixes headers or footers. For per-line modes, this is applied per line.
- Seed: When enabled, the tool creates a seeded RNG using
xmur3hash +mulberry32. The seed is combined with a shuffle counter (my-seed-1-0,my-seed-1-1...), so Reshuffle gives you a new but reproducible sequence you can share.
4. Shuffle
The core uses Fisher-Yates — the gold standard for unbiased shuffling:
for i from n-1 down to 1: j = random(0..i) swap items and items[i][j]
This runs in O(n) time. The result is joined with the appropriate separator (\n for lines, space or your delimiter for words, for sentences, \n\n for paragraphs).
Your text never leaves your browser. You can copy the result, swap it back to the input for another pass, or download it as a .txt file.
Examples
Shuffle grocery list
Randomize a shopping list so you shop in a different order each time.
Shuffle words for creativity
Mix up words in a sentence to spark new ideas and writing prompts.
Shuffle sentences for studying
Randomize sentences from notes to test comprehension and recall.
Shuffle characters per word
Jumble letters inside each word while keeping word order for a puzzle effect.
Frequently asked questions
What does Text Shuffle do?
What does Text Shuffle do?
Text Shuffle randomly reorders your text. You can shuffle lines, words, words per line, sentences, paragraphs, or characters. It is useful for randomizing lists, names for a raffle, quiz questions, writing prompts, and data samples.
What is the difference between Shuffle Words and Shuffle Words per Line?
What is the difference between Shuffle Words and Shuffle Words per Line?
Shuffle Words (global) takes your entire input, breaks it into words, and shuffles all words together, losing original line breaks. Shuffle Words per Line keeps each line intact and shuffles the words only inside that line, which is perfect for shuffling a table or CSV-like rows without mixing rows.
Is the shuffle truly random?
Is the shuffle truly random?
Yes. By default it uses the browser's Math.random() as the source for a Fisher-Yates shuffle, which is unbiased and produces all permutations with equal probability. For reproducible results, enable the deterministic seed mode which uses a seeded mulberry32 RNG.
Can I make the same shuffle twice?
Can I make the same shuffle twice?
Yes. Turn on Deterministic Seed and enter a seed like my-seed-1. The same seed plus shuffle count always produces the same output. This is great for sharing a fair order with a team or for classroom use. Each click on Shuffle increments the counter so you get a new deterministic order.
How do Keep First N and Keep Last N work?
How do Keep First N and Keep Last N work?
They lock items in place. For example, Keep First 1 keeps your header row from a list from moving. For global modes, it locks the first and last items of the whole list. For per-line modes like Words per Line or Chars per Line, it locks per line — useful to keep the first letter of a word fixed when creating puzzles.
Can I remove duplicates before shuffling?
Can I remove duplicates before shuffling?
Yes. Enable Remove Duplicates. The tool dedupes while keeping the first occurrence order, then shuffles the unique set. You can choose case-sensitive deduplication so Apple and apple are treated as different items.
Does it preserve empty lines and whitespace?
Does it preserve empty lines and whitespace?
You control it. Preserve Empty Lines keeps blank lines in the shuffle pool. Trim Whitespace removes spaces around each item before shuffling. For character modes, Unicode is handled correctly with Array.from(), so emojis and accented characters stay intact and are not broken.
Is my text private and secure?
Is my text private and secure?
Completely. This is a 100% client-side tool. There are no network requests, no backend, and no storage. Your text never leaves your device. You can even use it offline.
Can I shuffle sentences and paragraphs?
Can I shuffle sentences and paragraphs?
Yes. Sentence mode splits on . ! ? followed by space and keeps punctuation attached. Paragraph mode splits on blank lines. Both support keep first/last, deduplication, and seeded randomness just like line mode.
Related tools
More utilities you might find handy.
Anagram Checker
Check if two strings are anagrams with customizable normalization options.
Case Converter
Convert text to various cases like uppercase, lowercase, title case, camelCase, snake_case, and more, with additional text cleaning features.
Find & Replace Tool
Find and replace text instantly online with regex, whole word, case matching, preserve case, and batch rules. 100% client-side.