How it works
Every draw uses your browser's cryptographically secure random generator (Web Crypto), with rejection sampling so each value in the range is exactly equally likely. Lists are shuffled with the Fisher–Yates algorithm, which gives every order the same chance.
Chance of each number = 1 ÷ (maximum − minimum + 1)
What you can do
- Random numbers: any range, with or without duplicates — raffles, seat numbers, sampling.
- Lottery numbers: six unique numbers from 1 to 45, sorted.
- Pick from a list: choose winners, presenters or who pays.
- Shuffle a list: random order for teams, turns or playlists.
- Dice and coins: d4 to d20 with totals, or heads and tails counts.
Tips
- Share the result with the copy button so everyone sees the same draw.
- Lottery numbers are random picks only — no method can raise your odds of winning.
- Nothing is sent to a server; every draw happens on your device.
Standards and sources
- Random values come from the Web Crypto API (crypto.getRandomValues)
- Shuffling uses the Fisher–Yates algorithm (Knuth, The Art of Computer Programming, Vol. 2)
Last reviewed October 7, 2026
Frequently asked questions
Is it truly random?
It uses the Web Crypto API, the same secure random source browsers use for encryption, and every value in the range has exactly the same chance.
How do I avoid duplicate numbers?
Tick "No duplicates". Each number can then appear only once, so the count can be at most the size of the range.
Can I use it to pick a raffle winner?
Yes. Choose "Pick from a list", paste one name per line and set how many winners you need.
Can it predict lottery numbers?
No. Lottery draws are random, so no tool can improve your chances. The lottery mode simply picks six unique numbers fairly.
Is my list saved anywhere?
No. Everything runs on your device and disappears when you close the page.