Unbiased Rejection-Sampled Randomness
Standard JavaScript sorting tricks introduce statistical bias. Pinatool uses the Fisher–Yates algorithm backed by Web Crypto API rejection sampling for fair, uniform distribution.
Shuffle a list into random order or select a random subset of entries. Useful for organizing activities, mixing teams, and making everyday random selections.
12 items (one per line)
12 selected of 12 available items
Randomization runs in your browser using the Web Crypto API. Your list is not uploaded to Pinatool's servers.
Enter your names, numbers, words, or tasks into the input editor with one item per line.
Choose whether to shuffle the complete list or draw a random subset. Optionally trim spaces, remove duplicates, or number the output.
Click Randomize to generate an unbiased result. Reroll whenever desired, copy directly to your clipboard, or download as a text file.
Standard JavaScript sorting tricks introduce statistical bias. Pinatool uses the Fisher–Yates algorithm backed by Web Crypto API rejection sampling for fair, uniform distribution.
Need to pick 3 winners from 50 entries or choose a presenter order? Switch to subset mode, pick your count, and automatically format with clean rank numbers.
Your input is processed directly in your browser and is not uploaded to Pinatool's servers.
The tool implements the classic Fisher–Yates (Knuth) shuffle algorithm combined with rejection sampling over the browser’s cryptographically secure Web Crypto API (`crypto.getRandomValues`). Unlike naive `Math.random() - 0.5` sorting which exhibits strong directional bias, every permutation of items has an equal mathematical probability of occurring.
Yes. Toggle to "Pick Random Subset" at the top of the tool and enter how many items you want to pick. The tool draws that exact number of unique items without replacement.
Yes. Check the "Remove Duplicates" option. You can also toggle "Case Sensitive" to differentiate between capitalized and lowercase entries.
Yes. Enable the "Add Numbering" checkbox to prefix each randomized line with its rank (e.g., "1. Alice", "2. Bob").
No. Your input is processed directly in your browser and is not uploaded to Pinatool’s servers.
No. While the algorithm uses rejection-sampled Web Crypto API randomness for unbiased results, this utility is intended for casual drawings, giveaways, classroom activities, team standup orders, and task assignment. It is not certified for state-regulated gambling, legal contracts, or mission-critical cryptographic key generation.
Sort lines alphabetically, numerically, by length, or natural order with multilingual collation.
Filter lines containing or matching text, prefixes, suffixes, or regex with include/exclude views.
Remove repeated rows with case options and keep first or last occurrence intact.