WBest Random Number Generator

Generate truly random numbers in any range, roll dice, flip coins, or pick from a list - using your browser's cryptographic randomness.

๐Ÿ”’ 100% private - generated on your device, never uploaded
โ€”

Press Generate to begin.

Cryptographically secure

Numbers come from crypto.getRandomValues() with unbiased rejection sampling - not the weak Math.random() most sites rely on.

Four tools in one

Ranged numbers with optional uniqueness, a dice roller, a coin flipper, and a random list picker for draws and giveaways.

Private by design

Every roll and draw happens in your browser. Your ranges and lists are never uploaded, and it works offline.

How the random number generator works

Most online generators call JavaScript's Math.random(), which is fast but not designed to be unpredictable. This tool instead draws from crypto.getRandomValues(), the browser's cryptographically secure random number generator - the same source used for security tokens.

Turning raw random bytes into a number within your range without bias is subtler than it looks. Naively taking a remainder (value % range) skews the odds toward the lower numbers. This generator uses rejection sampling: it discards the few values that would fall in the biased tail and draws again, so every number in your range is exactly equally likely.

Inclusive range

Both the minimum and the maximum are included. A range of 1 to 6 behaves like a die - each of the six outcomes is equally probable. Ask for more than one number and you get a batch; switch on No repeats to draw each value only once, which needs a range at least as large as the count.

What you can use it for

Because Google's built-in widget only handles a single number in a range, the dice, coin, list, and unique-batch modes here cover the cases it can't.

Frequently asked questions

How random are these numbers?

The generator uses crypto.getRandomValues(), your browser's cryptographically secure random source, and rejection sampling to map it onto your range without bias. That is far stronger than the ordinary Math.random() used by most sites, and it is more than good enough for draws, giveaways, and games. It is not, however, a substitute for certified hardware randomness in regulated gambling.

Can I generate numbers with no repeats?

Yes. Turn on 'unique' and every number in a batch will be different - useful for lottery-style draws or picking distinct winners. Uniqueness requires the range to contain at least as many values as the count you ask for; otherwise there are not enough distinct numbers to fill it.

Is the range inclusive of both the minimum and maximum?

Yes. Both endpoints are included, so a range of 1 to 6 can return 1, 6, and everything in between with equal probability. This matches how people expect dice, raffles, and 'pick a number between' to behave.

Can it flip a coin or roll dice?

Yes. The Dice mode rolls one or more dice with any number of sides and totals them, and the Coin mode flips one or more coins and tallies heads and tails - all using the same secure randomness as the number generator.

How does the random list picker work?

Paste or type a list with one item per line, choose how many to draw, and the picker selects them at random. With 'unique' on it draws without replacement (no item twice), which is ideal for choosing winners, assigning teams, or picking who goes first.

Is anything I enter sent to a server?

No. All randomness and every result is generated in your browser. Your ranges and lists never leave your device, nothing is logged or tracked, and the tool keeps working offline once loaded.