=Calculate
Random & fun · Numbers

Random number
generator

Pick a range, how many you need, and whether repeats are allowed — powered by your browser's cryptographic random source, with the bias-free math most generators skip.

Crypto-grade randomNo duplicates optionNo sign-up
Unbiased drawcrypto.getRandomValues

Sum / averageof this draw

What "truly random" means here

This generator uses your browser's cryptographic random source (crypto.getRandomValues) — the same generator used for encryption keys — rather than the weaker Math.random most sites use. It also applies rejection sampling, which quietly matters:

The bias most generators have
Naive method: random × range, rounded — or worse, modulo.
Both make some numbers slightly more likely than others.
Rejection sampling discards the skewed cases: every value exactly equally likely.

Where people use it

Raffles and giveaways (set no-repeats for multiple winners), random team or seat assignment, sampling rows for a survey, picking lottery-style numbers for fun, classroom problems, and quick decisions with more than two options. Everything runs locally — no draw is transmitted or stored anywhere, so it's private but also unrepeatable: there is no seed and no history.

Honest limits

Browser randomness is excellent for fairness in everyday draws, games and sampling. For anything with legal stakes — regulated lotteries, audited draws — you'd want a documented, witnessed process around the tool, not just the tool. For two-option decisions the coin flip is quicker, and for names rather than numbers the random picker takes a list directly.

Common questions

Random number FAQ

It asks the browser's cryptographic generator (crypto.getRandomValues) for raw random values, then maps them to your range with rejection sampling so every number is exactly equally likely — no modulo bias.

It's a cryptographically secure generator seeded by your operating system's entropy — unpredictable for every practical purpose, and far stronger than the Math.random used by most generator sites.

Yes — set duplicates to 'no repeats' and each value appears at most once, ideal for drawing multiple raffle winners. The range must contain at least as many values as you're drawing.

No. Generation happens entirely in your browser; nothing is transmitted, logged or repeatable. Refreshing gives a fresh, unrelated draw.