🎲 Cryptographically Random · Browser-Only

Random Number Generator

Generate truly random numbers in any range. Dice presets, bulk generation, and instant results — all inside your browser.

Press Generate
Quick Presets
Minimum Inclusive lower bound
Maximum Inclusive upper bound
How many? Generate multiple at once
History (last 10)
No results yet

🔐 True Randomness

Uses crypto.getRandomValues() — a cryptographically secure source, not the predictable Math.random().

🎲 Uniform Distribution

Every number in your range has an exactly equal probability of being chosen. No bias, no patterns.

🔒 100% Private

Nothing is sent anywhere. All generation happens locally in your browser. Zero tracking, zero logs.

Frequently Asked Questions

Is this truly random?

Yes. This tool uses crypto.getRandomValues(), a cryptographically secure pseudo-random number generator built into every modern browser. It is far superior to Math.random(), which is not cryptographically secure.

What is the maximum range I can use?

You can enter any integer values for min and max. For very large ranges (above 2³²), the unbiased rejection-sampling algorithm used here ensures perfectly uniform distribution with no modulo bias.

Can I generate lottery numbers?

Yes — use the "6 of 49" preset to generate 6 unique numbers between 1 and 49, matching standard lottery formats. You can also set a custom range and count to match any lottery format worldwide.

What does "bulk mode" do?

Setting the count above 1 generates multiple independent random numbers in a single click. Each number is independently sampled from the same range with equal probability.