Random Number Generator (1–10, 1–100 or Any Range)

Free random number generator: pick one or many numbers in any range, e.g. 1–10 or 1–100, with an option to avoid repeats. Instant, fair results.

Generate one or more random whole numbers within any range you choose, with an option to avoid repeats. Useful for picking a raffle winner, rolling a virtual die, drawing lottery-style numbers, or any time you need an unpredictable number.

How it works

Numbers are generated using your browser's cryptographically secure random source (crypto.getRandomValues) with rejection sampling, rather than a simple modulo operation on a random value — a naive modulo approach very slightly favors smaller numbers in the range, an effect known as modulo bias, which rejection sampling eliminates so every number in your range has exactly the same chance of appearing.

Worked example

Generating 3 unique numbers between 1 and 49 (as in a typical lottery draw) might produce something like 7, 23, 41 — each drawn independently and without replacement when "no repeated numbers" is checked.

Frequently asked questions

Is this truly random enough for something like a raffle?

Yes — it uses your browser's cryptographically secure random number generator, the same class of randomness used for things like generating passwords or encryption keys, not the weaker source used by simple site scripts.

What happens if I ask for more unique numbers than fit in my range?

The generator will show an error explaining that the range is too small, since it's mathematically impossible to draw more unique numbers than exist in the range.

Can the minimum be negative?

Yes, the minimum and maximum can be any whole numbers, including negative ones, as long as the minimum is less than or equal to the maximum.