Random Number Generator

Generate random numbers in any range, with optional uniqueness.

Frequently asked questions

Is this random enough for a lottery?
The tool uses Math.random, which is fast but not cryptographically secure. For anything security-sensitive use the Password Generator, which uses crypto.getRandomValues.
What does "unique" do?
It draws numbers without replacement — like picking lottery balls — so no number repeats. It requires the range to be large enough for the requested count.
Can I generate decimal numbers?
Yes — choose 1, 2, 3 or 6 decimal places. The unique option applies only to whole numbers, because the decimal space is too large for collision-free sampling to be meaningful.
Can I use this for security-sensitive values?
No. Math.random is fast but predictable and not cryptographically secure. Use the Password Generator, which relies on crypto.getRandomValues, for anything that protects an account or secret.
What range and count can I use?
Minimum and maximum can be any finite numbers, and you can generate up to 1,000 values at once. Unique sampling requires the whole-number range to contain at least as many values as the requested count.
Can I use this to draw raffle winners?
Yes for casual use: set the range to 1..N, enable Unique, and set the count to the number of winners. Every value is equally likely, but the results rely on Math.random and are not suitable for regulated or high-value draws.

About this tool

This generator draws random numbers from any range, with optional decimals, sorting and sampling without replacement. It is useful for simulations, raffles, test data and games. Results are only as random as the browser's Math.random, so they are not suitable for cryptography or security tokens.

How to use it

  1. Enter the minimum and maximum values.
  2. Set how many numbers to generate and how many decimal places you need.
  3. Enable Unique to sample without replacement, or Sort ascending to order the results.
  4. Copy the values from the result panel.

← All tools