Help

Random Number Generator

This free random number generator produces one number or a whole list at once, between any Minimum and Maximum you choose. Every value comes from your browser's Web Crypto API rather than a predictable pseudo-random formula, and everything runs on your device — nothing is uploaded, and there's no account to create. Set your range, tap Generate, and the result appears instantly above the controls.

How to Generate a Random Number

Type a low value into Minimum and a high value into Maximum — the defaults are 1 and 100 — then tap Generate. The result appears in large type above the fields, inclusive of both endpoints, so a 1–100 range can return either 1 or 100 itself. Tap Generate again for a fresh number at any time; nothing about your previous result is remembered or influences the next one.

Generating a Sequence of Random Numbers

Open the Sequence Options disclosure and set Quantity to how many numbers you want, from 1 up to 1000. Generate then produces the entire batch at once, shown as a scrollable list of individual values rather than a single result — useful for picking several raffle winners, sampling multiple rows of a dataset, or rolling a whole set of dice at once. The Copy button copies every value in the batch as a comma-separated list in one tap.

Random Number Generator With No Repeats

By default, Allow Repeats is on, so the same number can appear more than once in a sequence — realistic for dice rolls or coin-style draws. Switch it off and every value in the batch is guaranteed unique, which is what you want for raffle numbers, drawing names by ID, or dealing out a set of cards. If your range doesn't contain enough distinct values for the quantity you asked for — say, 10 unique numbers from a 1–5 range — the Generate button disables itself and explains why, rather than silently repeating a number.

Generating Random Decimal Numbers

Switch on Decimal numbers in Sequence Options to draw values across the full continuous range between your Minimum and Maximum instead of only whole numbers, then set Decimal places to however much precision you need, from 0 to 10 digits. This is the setting to use for randomized measurements, simulated sensor readings, or any case where a whole number is too coarse. Because decimal output already draws from an effectively infinite set of values, the Allow Repeats toggle isn't shown while Decimal numbers is on — a meaningful duplicate is already vanishingly unlikely.

Common Random Number Ranges

The Minimum and Maximum fields accept any whole numbers, including negative ones, but a handful of ranges come up constantly:

RangeTypical use
1–10Quick picks, simple games, classroom demonstrations
1–100Percentages, general-purpose random picks, this tool's default
1–1000Raffle and ticket numbers, larger sampling pools
Custom (between two numbers)Anything else — IDs, coordinates, negative-to-positive spreads

Whatever the range, the tool works identically — type your own Minimum and Maximum and Generate covers it.

Is This a True Random Number Generator?

Yes — this is a true, cryptographically secure random number generator online. Every value is produced with window.crypto.getRandomValues() — the Web Crypto API's cryptographically secure random source, the same one browsers use to generate encryption keys — rather than Math.random(), which JavaScript never designed to be unpredictable. Numbers are drawn using rejection sampling, a technique that discards any value that would bias the result toward one end of the range, so every integer between your Minimum and Maximum has exactly equal odds no matter how the range's size divides into the underlying random bytes. All of this happens locally in your browser — no number is ever sent to a server, logged, or stored.


Frequently Asked Questions

How do I generate random numbers with no repeats or duplicates?

Open Sequence Options and switch Allow Repeats to off, then set Quantity to how many numbers you need. The generator either shuffles every possible value in your range and takes the first batch, or draws unique values one at a time until it has enough — either way, no number appears twice. If your range is too small for the quantity you asked for (say, 10 unique numbers from a 1–5 range), the Generate button disables itself and tells you why instead of silently repeating a value.

How do I generate a random number between two specific numbers?

Type your low and high values into the Minimum and Maximum fields and tap Generate — the result is always inclusive of both endpoints. There's no requirement that Minimum be positive or small; negative numbers and ranges in the millions work the same way.

Can I generate a list of multiple random numbers at once?

Yes — open Sequence Options and set Quantity to any number from 1 to 1000. Generate then produces the whole batch at once, displayed as a list of individual values you can copy in one tap rather than one number at a time.

How do I generate a random decimal number instead of a whole number?

Turn on the Decimal numbers switch in Sequence Options, then set Decimal places to however many digits you need after the point, from 0 to 10. Generate then draws values across the full continuous range between your Minimum and Maximum instead of only whole numbers.

Is this a true, cryptographically secure random number generator?

Yes. Every number comes from your browser's Web Crypto API (window.crypto.getRandomValues), the same cryptographically secure source used to generate encryption keys — never JavaScript's Math.random(), which is not designed to be unpredictable. Values are drawn with rejection sampling so every number in your range has exactly equal odds, with no bias toward the low or high end.

What ranges can I use — like 1 to 100 or 1 to 1000?

Any whole-number range works, not just round ones — 1 to 100, 1 to 1000, and 1 to 10 are just common starting points people type in. The Minimum and Maximum fields accept any integers up to plus or minus one billion, so you can generate lottery numbers, dice-style rolls, raffle picks, or IDs from whatever bounds your situation needs.