Everyday Utilities

Random Number
Generator

Generate truly random numbers between any range. Pick lottery numbers, roll dice, flip a coin, or generate a unique set with no repeats. Instant, free, no signup.

Minimum
Maximum
How Many
Sort Results
Options:
Press generate to get your number
Quick Tools
Coin Flip
🪙
Click to flip
Dice Roll (D6)
🎲
Click to roll
Lottery (1–49)
🎰
6 unique numbers
Yes or No
🤔
50/50 chance
Custom Dice
🎲
Click to roll custom die
Weighted Picker
🎯
Generation History
No history yet

Is this truly random?

This generator uses JavaScript's crypto.getRandomValues() API where available — the same cryptographically secure randomness used in security applications. This is significantly more random than the older Math.random(), which uses a pseudorandom algorithm that can produce patterns. For everyday use (games, contests, decisions), both are perfectly fine.

Unique numbers explained

When "No repeats" is checked, each generated number appears only once in the output — like drawing from a hat without putting anything back. The maximum quantity you can generate is limited to the size of your range (max − min + 1). For example, if your range is 1–10, you can only generate up to 10 unique numbers. Uncheck "No repeats" to allow duplicates.

Common uses

Picking contest winners fairly. Lottery number selection. Assigning random order to a list. Randomizing homework problems or quiz questions. Running randomized A/B tests. Random seat assignments. Picking a number in a game. Generating a random PIN or one-time code (use a dedicated tool for security-critical uses). Resolving disputes between equally good choices.

How lottery number picks work

The Lottery quick tool generates 6 unique random numbers between 1 and 49 — matching the format of many national lottery games (like Lotto 6/49). The main generator can be customized for any lottery: Powerball (1–69, pick 5 + 1–26), Mega Millions (1–70, pick 5 + 1–25), EuroMillions (1–50, pick 5 + 1–12 Lucky Stars). Just set your range and count accordingly.

Frequently Asked Questions
Can I generate random numbers between 1 and 10?
Yes — set Minimum to 1 and Maximum to 10 and click Generate. You can set any range you like, including negative numbers (e.g. -100 to 100) or very large ranges. The generator handles any integer range up to JavaScript's safe integer limit (±9,007,199,254,740,991).
How do I pick a random winner from a list?
Number your entries 1 through however many you have, then generate a single random number in that range. For example, if you have 87 contest entries, set min to 1, max to 87, count to 1, and click Generate. The result is your winner number. This is provably fair as long as each entry was given exactly one sequential number.
What is the probability of getting any specific number?
Each number in the range has exactly equal probability: 1 ÷ (max − min + 1). For a range of 1–100, each number has a 1% chance. For 1–6 (a die), each face is 16.67%. True randomness means past results have zero influence on future results — the generator has no memory. Getting 7 heads in a row doesn't make tails "due."
Can I generate random decimals or floats?
This tool generates integers only. For random decimals, you can divide the result by a power of 10 — for example, generate a number between 0 and 1000 and divide by 10 to get a random number between 0.0 and 100.0 with one decimal place. For scientific or programming use, JavaScript's crypto.getRandomValues() can generate full floating-point numbers with a small code snippet.
How to Use the Random Number Generator

Generate truly random numbers, roll virtual dice, or pick unique random numbers from a range.

01
Set your range
Enter the minimum and maximum values. For a standard die roll, use 1–6. For a lottery-style pick, use 1–59.
02
Choose single or multiple numbers
Single mode generates one number. Multiple mode generates a set. Toggle 'no repeats' to ensure each number only appears once — essential for draws and lotteries.
03
Roll the dice
The dice roller panel lets you roll d4, d6, d8, d10, d12, or d20 dice — individually or in combination. Results show each die separately and the total.
04
View history
Previous results are logged so you can review what came up in a session. Useful for games where you need to track past rolls.
💡
💡 True randomness is surprisingly hard to achieve with computers. This generator uses the Web Crypto API (window.crypto.getRandomValues) for cryptographic-quality randomness — not the weaker Math.random().