WheelMigo

How to run a fair raffle or giveaway draw with a free raffle generator

The fastest way to make a prize draw feel rigged is to do it privately and just announce a name. Do it in the open instead.

Quick answer

Paste one line per entry (per person for a giveaway, per ticket for a ticket raffle), spin in front of everyone, and draw prizes plus a couple of alternates in one ordered pass. Remember a batch picks distinct entries, not distinct people, so a person with several tickets can win more than once unless you draw one at a time and remove their other tickets. Export the result to keep a record.

Key points

  • One line per entry — dedupe so nobody gets extra chances.
  • Spin live (or on a shared screen) so the draw is visible, not announced after.
  • Draw multiple winners in one ordered pass instead of many separate spins.
  • Export the result to share the full outcome, not just the winners.
  • Decide first: one entry per person (giveaway) or one line per ticket (ticket raffle).
  • A batch draws distinct entries, not distinct people — one person with several tickets can win two prizes in one batch.
  • Draw prizes plus alternates in one ordered pass and fix the no-show rule before you spin.
  • Numbered tickets? Use the random number wheel and announce the ticket number.
  • It's a fair casual draw, not a certified or legal lottery.

A raffle or giveaway lives or dies on trust. If you draw the winner privately and just post a name, a chunk of your audience will quietly assume it was fixed — even when it wasn't. The fix is simple: make the draw something people can watch happen.

Get the entry list right first

Paste your entrants one per line, or import a CSV. Then remove duplicates: if the same person appears three times, they get three chances, which is usually not what you intended. WheelMigo flags duplicates on import so you can decide. A clean, one-entry-per-person list is what makes the odds actually equal.

Draw it in the open

Spin with your audience watching — in the room, or on a shared screen for a stream or call using Present mode. Each pick uses your browser's crypto.getRandomValues with rejection sampling, so no entry is quietly favoured, and the speed or timing of the spin can't change where it lands. Seeing the wheel turn does more for trust than any claim you could write.

More than one winner

For a first, second and third prize, don't run three separate spins and track who already won. Set a batch size and draw them in one pass: everyone distinct within the batch, kept in draw order, so the ranking is clear. Then export the ordered result and share it — the whole outcome, not just the names you read out.

Choose your entry model: one per person, or one per ticket

There are two common raffles. In a giveaway, every person gets one chance, so you list each person once. In a ticket raffle, people hold different numbers of tickets, so you list one line per ticket and a person with five tickets appears five times. WheelMigo treats every line as a separate entry: it does not know that two lines are the same person, and it has no weighting setting, so repeating a line is how you give someone an extra chance.

That has one consequence worth knowing before you draw prizes. A batch draw picks distinct entries, not distinct people. If one person holds several tickets, they can win more than one prize in the same batch. Here is the exact chance, worked out for a drum of 100 tickets:

Tickets you hold (of 100)1 prize: chance to win3 prizes: chance to win at least one3 prizes: chance to win two or more
11.0%3.00%0 (one ticket can win only once)
55.0%14.40%0.59%
1010.0%27.35%2.58%

These are exact odds for drawing distinct tickets from 100, not a simulation. Holding ten tickets gives roughly a one-in-39 chance of taking two or more of three prizes. If that would be unfair for your raffle, use one of the fixes below.

Keep it to one prize per person

  • Draw one winner at a time (batch size 1), then untick that person's other tickets. Unticking removes an entry from the pool without deleting it from the list, so the draw continues without them.
  • Or run a giveaway instead: one line per person, so nobody can appear twice.
  • Or state the rule up front — for example, that a person's second win is passed to the next draw — and follow it consistently.

Numbered tickets: draw the number, not the name

If your tickets are numbered 1 to N, use the random number wheel instead of a name list. Enter the range, draw, and announce the winning ticket number so the holder can claim the prize. Within one batch the numbers are always distinct. A list holds up to 1,000 entries, so a numbered raffle of up to 1,000 tickets fits in one list.

Draw prizes and alternates in one pass

A batch can return 1 to 100 results in one ordered pass. For three prizes, draw five: the first three are the winners and the last two are alternates in a fixed order. Decide the no-show rule before you spin, for example that a winner who has not replied within 48 hours passes the prize to the first alternate. Deciding it first means nobody can say you picked a favourite after the fact.

Keep a record

Export the results as a CSV. Each row lists the draw order, the name, the round, the mode and the time from the device that ran the draw. That time is your computer's clock, not a verified timestamp, so treat it as a note for your own records. For an audience, a screen recording or a screenshot of the draw does more to show it was live than any list.

One honest limit: this is a fair casual draw, not a certified or legally-compliant lottery. If your giveaway has legal requirements (a regulated prize draw, for example), follow those rules; WheelMigo makes the pick fair and visible, it does not make it a licensed lottery.

How this works

Entries are drawn with crypto.getRandomValues and rejection sampling to avoid modulo bias. Batch draws select distinct entries without replacement within the batch and preserve draw order. All processing is local to the browser; the entry list and results are not uploaded. A batch selects distinct list entries, not distinct people, so identical names on separate lines can each be drawn. The odds table uses exact hypergeometric probabilities for drawing distinct tickets without replacement from 100 tickets.

Frequently asked questions

How do I stop one person having extra chances?
Remove duplicate lines before you draw. WheelMigo highlights duplicates on import so each person appears once and the odds stay equal.
Can I pick more than one winner fairly?
Yes. Set a batch size and draw them in one ordered pass — each winner is distinct within the batch and kept in the order drawn.
Is this an official lottery?
No. It is a fair, transparent casual draw. If your prize draw is legally regulated, follow the applicable rules; the wheel only makes the pick fair and visible.
How do I give someone more than one chance?
List their name once per chance. Each line is a separate entry, so a person listed five times has five chances. There is no weighting setting.
Can the same person win two prizes in one draw?
Yes, if they are listed more than once, because a batch picks distinct entries rather than distinct people. To keep it to one prize per person, draw one winner at a time and untick that person's other entries, or list each person once.
How many entries can I add to a raffle?
A list holds up to 1,000 entries, and one batch can draw between 1 and 100 results.

← All articles