Random number generator

Pick a range and how many numbers you need: they're drawn with your browser's cryptographic generator โ€” perfect for raffles, games, giveaways, and bingo nights.

๐Ÿ”’ The draw happens in your browser: nothing is sent or recorded.

Why we use crypto.getRandomValues instead of Math.random

This generator relies on crypto.getRandomValues, the cryptographically secure random source built into your browser, combined with rejection sampling to avoid bias: every number in the range has exactly the same chance of being drawn. The familiar Math.random, designed for animations and games, doesn't offer the same unpredictability guarantees โ€” so for prize drawings, picking a winner among friends, or any "blind" choice, the cryptographic version is the better bet.

Drawing with or without repeats

With "unique numbers only" you get a draw like a lottery or bingo cage: each number can come out only once, so the amount you request can't exceed the size of the range (from 1 to 100 you can draw at most 100 numbers). Uncheck the box and it works like rolling a die over and over: repeats are possible and perfectly normal โ€” handy for simulating dice rolls, generating test digits, or producing random sample data.