InputTestHub

Shuffle Lines

Randomly reorders the lines of any list using a cryptographically strong shuffle.

Text Nothing uploaded No sign-up Free, unlimited
Text tool
Paste something on the left to see the result.
In short Shuffling lines reorders a list randomly using a Fisher-Yates shuffle seeded by the browser's cryptographic random source rather than by the ordinary pseudo-random generator. That distinction is the reason to use this rather than a spreadsheet formula. Fisher-Yates is the algorithm that produces every possible ordering with equal probability; the naive alternative — sorting with a random comparison function — is biased, and measurably so, which is a well-known bug that has shipped in real code more than once. Using crypto.getRandomValues rather than Math.random means the sequence is not predictable from previous results, which matters if the shuffle decides anything of value. The uses are drawing an order for a giveaway, randomising question order in a quiz, and creating a randomised sample from a list. One thing worth saying plainly: the shuffle is genuinely random, so it can produce an order that looks unshuffled in places. Runs of consecutive items appear in random orderings more often than intuition suggests, and reshuffling until it looks random enough makes the result less random, not more.

How to use the Shuffle Lines

  1. Paste your text into the input box on the left.
  2. Adjust the options above the box if you need a different behaviour.
  3. The converted text appears on the right; press Copy to put it on your clipboard.

About the Shuffle Lines

The Shuffle Lines randomly reorders the lines of any list using a cryptographically strong shuffle. It runs as plain JavaScript inside the page, which means there is no upload step, no queue and no size limit imposed by a server — the only limit is your own device.

What people use it for

  • Randomising the order of quiz questions.
  • Creating a fair random draw order.
  • Removing accidental ordering bias from a test list.

Details

AlgorithmFisher-Yates shuffle seeded by crypto.getRandomValues, so the order is genuinely unpredictable

Frequently asked questions

Is the Shuffle Lines free?
Free, unlimited, and no email address required. You can use it a hundred times a day and nothing changes.
Is what I paste into the Shuffle Lines stored?
No. The Shuffle Lines runs entirely in your browser using JavaScript. Your input never reaches inputtesthub.com or any third party — open your browser's Network tab while you use it and you will see no request go out.
What is the Shuffle Lines used for?
The jobs it is built for: randomising the order of quiz questions. Creating a fair random draw order. Removing accidental ordering bias from a test list. It is built for exactly those cases rather than being a general-purpose tool with this bolted on.
Will this work on a tablet?
Yes. The page is responsive and the utility works in Chrome, Safari, Firefox, Edge and Samsung Internet on both Android and iOS. There is no app to install and nothing to sign into.

Related text tools

All 92
01

Case Converter

Converts text between twelve cases: UPPER, lower, Title, Sentence, camelCase, PascalCase…

02

Uppercase Converter

Converts any text to UPPERCASE instantly, keeping numbers, punctuation and line breaks exactly…

03

Lowercase Converter

Converts any text to lowercase, including text that was typed with Caps Lock on by mistake.

04

Title Case Converter

Converts headings to proper Title Case using AP and Chicago rules, keeping short words like…

05

Sentence Case Converter

Rewrites text in sentence case: first letter of each sentence capitalised, the rest lowercase…

06

camelCase Converter

Turns any phrase into camelCase for JavaScript, Java and JSON keys, stripping spaces, hyphens…

07

PascalCase Converter

Converts phrases to PascalCase (UpperCamelCase) for class names, React components and type…

08

snake_case Converter

Converts text to snake_case for Python variables, database columns and file names.

09

kebab-case Converter

Converts text to kebab-case for URLs, CSS class names and HTML attributes.

10

CONSTANT_CASE Converter

Converts text to SCREAMING_SNAKE_CASE for environment variables, constants and configuration…