Raffle / Giveaway Drawer
Multi-ticket raffle with optional weights.
Built and maintained by Paul Clark, Redmoon Software · Last checked · Changes & corrections
The Raffle / Giveaway Drawer runs a fair prize draw where each entrant can hold one or many tickets. Add extra tickets to give bigger supporters better odds, then draw one winner or several at once — perfect for community giveaways, fundraisers, or class rewards. By default each winner leaves the pool before the next is drawn, so nobody wins twice in the same draw.
Enter. List your entrants, adding "x" and a whole number at the end of the line for anyone with multiple tickets ("Alice x5"). A number after a comma is part of the name, so "Maria, 412" is one ticket.
0 items
Click Draw to see a result.
Options
Recent results
- No history yet.
How it works
- Enter. List your entrants, adding "x" and a whole number at the end of the line for anyone with multiple tickets ("Alice x5"). A number after a comma is part of the name, so "Maria, 412" is one ticket.
- Options. Set how many winners to draw, and whether each winner leaves the pool before the next is drawn (on by default).
- Draw. Click Draw to pull all your winners in one go.
- Repeat. Clicking Draw again starts a fresh draw from the full list, so set the number of winners first rather than drawing prizes one click at a time.
About the Raffle / Giveaway Drawer
Tickets are weights
Each entrant can carry a number of tickets, and the draw respects it: someone with five tickets is five times as likely to win as someone with one. That is the natural model for a raffle, where buying more entries is the whole mechanism.
Writing it as a weight rather than repeating a name five times keeps the ticket count visible and checkable by anyone looking at the list, which matters when money changed hands for those tickets.
The count is written one way only: an x and a whole number at the end of the line, as in Okafor family x10. A number after a comma, colon or semicolon is part of the entry, so Maria Lopez, 412 is a single ticket for "Maria Lopez, 412", which is what a volunteer copying stub numbers means. (The weighted picker does read Pizza, 5 as a weight; the raffle drawer deliberately does not.)
What "remove winners" actually removes
Drawing several winners raises the question of whether one person can win twice. With Remove winner after drawing on — the default — a winner's entire entry, all of their tickets, comes out of the pool before the next winner in the same draw is picked, so each prize goes to a different person. Set How many winners? to the number of prizes: pressing Draw again starts over from the full list.
With it off, every draw is from the full pool and the same person can take two prizes. Both are legitimate raffle rules and the difference is one people will argue about afterwards, so decide before you draw and say which you are doing.
Running a draw people trust
Set a Seed, and publish the entrant list with ticket counts and the seed before you draw. Anyone can then reproduce the result and confirm you did not re-roll until a preferred name came up. Without a seed the draw cannot be replayed and its fairness rests entirely on your word.
Export the CSV immediately. Only the last ten runs are kept, in this browser, and a raffle result that exists only on screen is one refresh away from an awkward conversation.
Prize draws are regulated in many jurisdictions. A fair mechanism is not the same as a compliant promotion, and the rules are yours to check.
Frequently asked questions
How do tickets work?
Add tickets after a name with "x" and a whole number at the end of the line (for example, "Alice x5"). With 5 tickets, Alice gets 5 chances out of the total ticket pool. That is the only way to write a count: a number after a comma is part of the name, so "Maria Lopez, 412" is one ticket for "Maria Lopez, 412", not 412 tickets. A line with no count holds one ticket.
Can I remove winners?
Yes. "Remove winner after drawing" is on by default: set How many winners to the number of prizes and each entrant drawn is taken out of the pool, with all their tickets, before the next winner is drawn. Each click of Draw starts again from the full list, so draw all your winners in one go.
Is the draw genuinely fair?
Yes. Winners are chosen with the Web Crypto API, so odds are exactly proportional to each entrant's ticket count with no bias.
Are my entrant names uploaded anywhere?
No. The draw happens entirely in your browser — names and tickets are never sent to a server, and it works offline.
Related randomizers
Further reading
- A charity raffle from ticket stubs to the prize table
A raffle is three jobs: deciding what a ticket is, drawing winners, and matching winners to prizes. This follows one 437-ticket school raffle through all three, with the odds under "one prize per ticket" and "one prize per household", and the list-entry mistakes that quietly hand someone 412 tickets.
- Assigning fair raffle ticket numbers with a random number generator
Naming a winner by name feels arbitrary; drawing a number out of a known range feels provable. Here's when to reach for a numeric random draw instead of a name-list picker, with worked examples for raffles, lotteries, and sampling.
- Running a multi-prize draw with the ball pit picker
A grand prize and a handful of runners-up need a different plan than a single winner. Here's how to sequence repeat draws in the lottery ball pit picker, decide whether winners stay in the pit, and read back recent winners from the results list afterward.
- Does it just feel unfair, or is it? Audit your random picks over time
One person swears they get picked for chores twice as often as everyone else. With a randomizer that logs recent draws and exports to CSV, you don't have to argue about feelings — you can open the spreadsheet and count.
- Proving a shuffle wasn't rigged: seeded shuffles and the duplicate trap
Anyone can claim a shuffle was fair after the fact. A seeded shuffle lets you prove it — and the copy-paste duplicate that quietly stacks the odds is the other thing worth catching before you hit Randomize.
- Why a bouncing ball pit feels more honest than a text draw
The math behind a random pick is identical whether it's shown as plain text or a bouncing lottery ball. Here's why the ball pit picker's physical draw still matters, and how to use it for raffles, giveaways, and classroom picks.
- Pick one thing at random from any list — fairly
When a group can't agree on who goes first or which option wins, the honest move is a flat, equal-odds draw. Here's how a random single picker does exactly that, plus the no-repeats and seed options that make it more than a coin flip.
- Weight a random draw so some options come up more often
Sometimes a fair coin flip is exactly the wrong tool — you want the grand prize to be rare and the consolation common. Here's how a weighted random picker lets you hand each option its own odds, with or without replacement.
- Keep a record of your random draws (and export them as a spreadsheet)
Most randomizers forget the moment you close the tab, which is fine until someone asks who actually won. Here's how a running history of your recent draws — saved on your own device and exportable as CSV — gives you a record you can show.
- How to run a raffle or giveaway draw that everyone trusts
Pulling tickets from a hat looks fair but rarely is, and a public giveaway has to survive people who'll cry foul. Here's how to run a draw with weighted tickets, multiple prizes, and a seed anyone can re-check.
- How to run a virtual bingo night that doesn't fall apart
Hosting bingo for a remote team, a classroom, or a family across time zones is easy to get wrong: identical cards, called numbers nobody can verify, and 75-ball vs 90-ball confusion. Here's a clean way to run it.