General Utility

Random Number Generator

Generate truly random numbers in any range, create random lists, or roll any standard dice combination.

Single number
Dice roller
About this calculator

Random number generation comes up more often than you might think. Picking a random winner from a list, deciding who goes first, running a lottery, picking a random Bible verse, selecting a random item from a menu. Having a quick no-setup tool beats reaching for a phone app or trying to mentally generate something that actually feels random (humans are terrible at this).

This generator uses window.crypto.getRandomValues, the browser's cryptographically secure random source, not Math.random(). For anything where fairness matters, this is the right approach.

Why humans are bad at generating random numbers

When asked to produce a random number between 1 and 10, most people say 7. When asked to flip a mental coin repeatedly, people avoid long streaks even though streaks of 4 or 5 heads in a row are completely normal in genuine randomness. This bias is why random selection tools matter for any situation where perceived fairness is important.

Frequently asked questions

How do I randomly select from a list of names?

Number each name starting at 1, set the range to 1 through the total count, generate one number, and use the name at that position. For picking multiple winners without replacement, set unique-only mode and generate the needed count.

What is the difference between this and Math.random()?

Math.random() uses a pseudo-random number generator seeded at startup. It is deterministic and not suitable for security or high-stakes random selection. window.crypto.getRandomValues uses the operating system's entropy source (hardware events, timing variations) and is cryptographically secure. For a random number generator used for fairness, this distinction matters.

Related calculators