Best Practices 5 min read

How to Pick Random Numbers Without Repeats for a Raffle or Draw

Run a fair raffle, lucky draw or team pick with a random number generator: no duplicates, how to map numbers to names, and how to make the draw transparent.

random number generator no repeatsrandom number picker for rafflelucky draw number generatorpick random winnerunique random numbers

The short answer

To draw winners fairly, number your entries from 1 to N, open the Random Number Generator, set Minimum to 1 and Maximum to N, choose how many winners you need, and tick No duplicate numbers. Each number maps to one entry, so no one can win twice. The generator uses your browser's cryptographic random source, the same one used for generating keys, rather than a simple predictable formula.

What the generator does

  • Minimum and Maximum: whole numbers, both included. 1 to 100 can return 1 and 100.
  • How many numbers: a slider from 1 to 100.
  • No duplicate numbers: skips any number already drawn, so every result is different.
  • Quick presets: 1–6 (dice), 1–100, 1–1000 and 0–1 (coin flip: call 0 heads and 1 tails, or the other way round, before you draw).
  • Copy all puts the results on your clipboard, one per line, and Regenerate draws again with the same settings.

Random values come from crypto.getRandomValues, the browser's cryptographically secure random number generator. Nothing is sent to a server, and the results are not stored.

Step by step: a fair raffle or lucky draw

  • Close entries first. Decide the final list before drawing. Adding names after a draw is the most common reason people question a result.
  • Number every entry. Put entries in a spreadsheet in the order they arrived (or alphabetical order) and number them 1, 2, 3 and so on. Share or show the numbered list before the draw.
  • Set the range. Minimum = 1, Maximum = the last entry number.
  • Set how many winners with the slider, and tick No duplicate numbers.
  • Draw once, publicly. Share your screen, record it, or draw in front of the group. Agree in advance that the first draw counts.
  • Match numbers to entries and announce the winners in the order they were drawn, which also gives you a reserve list.
  • Example

    Your society has 87 sign-ups for 3 prizes. Number the list 1 to 87, set Minimum 1, Maximum 87, How many 3, and tick No duplicate numbers. If the result is 14, 62 and 5, the entries on rows 14, 62 and 5 win, in that order.

    Picking reserves and runners-up

    Draw more numbers than you need in the same draw. For 3 prizes with 2 reserves, draw 5 unique numbers: the first 3 are winners, the next 2 are reserves in order. This is fairer than running a second draw later, because no one can argue the second draw was repeated until it produced a particular name.

    Splitting people into random teams

  • Number the players 1 to N.
  • Draw all N numbers with No duplicate numbers ticked. This gives a random order.
  • Deal them out: first number to Team A, second to Team B, and so on. Or cut the list into equal blocks.
  • Because the slider goes up to 100, this works for groups of up to 100 people in one draw.

    Getting the settings right

    SituationWhat to do
    Drawing more than one winnerAlways tick No duplicate numbers
    Want every number in the range in random orderSet How many equal to the range size and count the results
    Need more than 100 numbersNot possible in one draw: the slider stops at 100
    Entries numbered from 0Set Minimum to 0, not 1
    Dice for a board gameUse the 1–6 preset, untick duplicates

    Two limits to know

    Ask for fewer unique numbers than the range when you can. With No duplicate numbers ticked, the generator draws a batch of random values (ten per number requested) and skips repeats. If you ask for every number in the range, such as 100 unique numbers from 1 to 100, it can occasionally run out and return one fewer. In 20,000 simulated draws using the same method, that happened about 0.3% of the time. For raffles, where you want a few winners out of many entries, it does not happen. If you shuffle a whole list, count the results and click Regenerate if one is missing.

    Minimum must be lower than Maximum. The tool does not check this. If you swap them by mistake (Minimum 10, Maximum 5), the results are not limited to your range. Always double-check both boxes before a public draw.

    Is it truly random?

    The browser's cryptographic generator is designed so results cannot be predicted from earlier results. Each number is turned into your range using a remainder, which in theory makes some numbers very slightly more likely than others, but with a source of over 4 billion values and ranges in the hundreds or thousands, the difference is far smaller than anything a raffle could notice.

    What matters more for fairness is the process: a closed list, a numbered order everyone can see, one agreed draw, and no re-rolls.

    Common mistakes

    • Drawing, then adding late entries. Close the list first.
    • Re-rolling "because the result looked odd". Repeats and clusters happen in real randomness. Agree that the first draw counts.
    • Forgetting to tick No duplicate numbers and getting the same winner twice.
    • Numbering the list after seeing the result. Number and share it first.

    Related tools

    Frequently asked questions

    How do I generate random numbers without repeats?

    Set the minimum and maximum, choose how many numbers you need, and tick No duplicate numbers. Every number in the result will be different.

    How do I use a random number generator to pick a raffle winner?

    Number every entry from 1 to N in a list everyone can see, set the range to 1 to N, choose the number of winners, tick No duplicate numbers, and draw once publicly. Each number points to one entry.

    Is this random number generator truly random?

    It uses crypto.getRandomValues, the browser's cryptographically secure random source, so results cannot be predicted from earlier draws. Nothing is sent to a server.

    How many random numbers can I generate at once?

    Up to 100 per draw. If you ask for every number in a range without duplicates, count the results, because the tool can occasionally return one fewer.

    Try this tool on Lazyblink

    Put this guide into practice with our free online tool — no signup required.

    Open tool