User Rating 0.0 β˜…β˜…β˜…β˜…β˜…
Total Usage 0 times
Category Generators
Input Data
Standard
Result
↓

Enter items and hit Randomize

Recent History
Is this tool helpful?

Your feedback helps us improve.

β˜… β˜… β˜… β˜… β˜…

About

True randomness is a fundamental requirement for fair decision-making, yet standard computer randomization often falls short due to pseudo-random algorithms. This tool employs the Fisher-Yates Shuffle (also known as the Knuth Shuffle), an algorithm with O(n) time complexity that guarantees an unbiased permutation. Unlike the naive approach of sort(random - 0.5), which introduces statistical bias, our implementation ensures every possible permutation is equally likely.

For high-stakes scenarios - such as lottery drawings or legal audits - users can engage High Security Mode. This bypasses the standard CPU clock-seeded Math.random generator in favor of the window.crypto API, which derives entropy from unpredictable system noises (thermal noise, I/O interrupts), ensuring cryptographically secure results.

randomizer shuffle team-generator decision-tool probability

Formulas

The probability P of selecting an item x from a set S in a weighted system is defined by its individual weight w relative to the total weight of the set:

P(x) = wxnβˆ‘i=1 wi

For the unweighted Fisher-Yates shuffle, the probability of any specific permutation Ο€ occurring is exactly:

P(Ο€) = 1n!

Reference Data

MethodEntropy SourceBias RiskUse Case
Fisher-Yates (Standard)PRNG (Math.random)LOW (Algorithmically Fair)Classrooms, Games, Raffles
Fisher-Yates (Crypto)CSPRNG (System Entropy)NULL (Cryptographically Secure)Lotteries, Audits, Security
Naive SortComparison JitterHIGH (Preferential Ordering)Prototyping Only (Avoid)
Weighted ProbabilityUser Defined MassINTENTIONALGacha, Handicaps, Marketing

Frequently Asked Questions

Enable "Weighted Mode" in settings. Then, append an asterisk and a number to your items. For example, "Alice *3" gives Alice 3 "tickets" in the draw, making her 3x more likely to be picked than a standard entry.
By default, we use a high-quality PRNG. If you toggle "High Security Mode", we switch to the Web Crypto API, which uses your device's hardware entropy. This makes the result unpredictable even to an attacker knowing the algorithm's state.
The Group Generator distributes items as evenly as possible. If the number of items is not perfectly divisible by the group count, the remainder is distributed sequentially to the first few groups.
Spreadsheet functions often update dynamically on every cell change, making it hard to "freeze" a result. Furthermore, standard spreadsheet sorting methods can sometimes exhibit subtle biases in large datasets.