Random Number Generator

Generate random numbers in any range.

Free online random number generator

Generate one random number or a whole list of them, anywhere within the range you choose. Set a minimum and maximum, decide how many numbers to draw, and pick whether the same number can repeat. Every value is produced with your browser's cryptographically secure random number generator, so the results are fair and impossible to predict — perfect for raffles, giveaways, lottery-style picks, dice rolls, sampling, and testing. Nothing is sent to a server; it all runs on your device.

How to generate random numbers

  1. Enter the minimum and maximum — the range is inclusive of both ends.
  2. Set how many numbers you want to generate.
  3. Turn Allow duplicates off if every number must be unique, like drawing raffle winners.
  4. Optionally tick Sort results ascending, then press Generate and click Copy.

Unbiased, secure randomness

Each number is drawn with crypto.getRandomValues and unbiased rejection sampling, which discards the rare values that would otherwise make some outcomes slightly more likely than others. That means an even, honest distribution across your whole range — no modulo bias, no predictable patterns. If you need random secrets instead of numbers, try the password generator, or create random identifiers with the UUID generator.

Private and free

This generator never uploads your inputs or results. All the work happens locally in your browser, so you can use it freely for anything from picking a winner to seeding test data. Refresh the page and everything is cleared.

Frequently asked questions

How does this random number generator work?

You set a minimum and maximum, choose how many numbers you want, and decide whether duplicates are allowed. The tool then draws whole numbers from your inclusive range using your browser's cryptographically secure crypto.getRandomValues. A fresh set is generated the moment the page loads and every time you press Generate.

Are the numbers truly random and unbiased?

Every number is drawn with the Web Crypto API (crypto.getRandomValues), not the predictable Math.random. The tool uses rejection sampling on 32-bit values so that no number in your range is even slightly more likely than another, avoiding the modulo bias that skews naive generators.

What does "Allow duplicates" do?

When it is on, the same number can appear more than once — like rolling a die repeatedly. When it is off, every number in the result is unique, as if drawing raffle tickets without putting them back. You cannot draw more unique numbers than the range contains, so the tool will warn you if you ask for too many.

Is my data sent to a server?

No. The entire generator runs in your browser with JavaScript. Nothing you enter or generate is uploaded, logged, or stored, so it is safe to use for draws, sampling, and testing. Refresh the page and the numbers are gone.

Can I generate numbers for a raffle or giveaway?

Yes. Set the range to cover your entrant or ticket numbers, turn off "Allow duplicates" so no winner is picked twice, and choose how many winners to draw. Because the randomness is cryptographically secure, the result is fair and unpredictable.