This generator picks lucky numbers for lottery tickets, raffles, games, prize draws or just for fun. You set the lowest and highest number, choose how many to draw, and decide whether repeats are allowed. It is a flexible, general-purpose draw tool that works for any custom range.
How it works
Each number is drawn with the browser’s Web Crypto API (crypto.getRandomValues) using rejection sampling: random values that would fall outside an exact multiple of your range are discarded and re-drawn, which removes the modulo bias that plain random-number tricks suffer from. The result is that every value in your range is genuinely equally likely.
- With No repeats on, each drawn number is unique — the standard for lottery-style draws.
- With it off, the same number can appear more than once, useful for dice rolls or independent picks.
Everything runs locally; the crypto source needs no network connection.
Example
To draw 6 unique lucky numbers between 1 and 49:
| Setting | Value |
|---|---|
| Range | 1 to 49 |
| How many | 6 |
| No repeats | On |
| Example result | 3, 11, 19, 27, 34, 48 |
Each click produces a fresh, unbiased set. Everything runs locally in your browser and nothing is stored or uploaded.