Add the names, set who must not draw each other, then hand out the matches by passing the device or by private links, all drawn in your browser.
Secret Santa Generator
Add the names, set who must not draw each other, then hand out the matches by passing the device or by private links, all drawn in your browser.
The draw runs entirely in your browser. Names, rules and event details are kept on this device only, and a private link carries one person's match inside the link itself rather than on a server.
Paste the names, one per line, and the Secret Santa Generator draws one closed assignment: everyone gives to one person, receives from one person, and nobody draws themselves. Add rules for people who should not draw each other, such as couples, housemates or last year's match, and switch on Avoid swapping so nobody draws the person who drew them. If the rules make a draw impossible, the tool names the people involved instead of failing silently. Add an event title, a budget and a gift exchange date, then choose how the matches reach people: pass this device around so each person sees only their own card, send each person a private link, or keep an organiser list hidden until you need it. The draw uses your browser's secure random numbers, and you can lock it before sending links.
Features
Names pasted one per line or separated by commas, from 3 to 100 people, with numbering stripped and repeats removed
Can't-draw-each-other rules for couples, housemates and last year's match, two-way or one way only
Avoid swapping, so nobody draws the person who drew them, on by default from four people up
Plain-language reasons when a draw is impossible, naming the people the rules squeeze
Event title, budget, gift exchange date and a note shown on each person's card
Pass the device: each person taps their name, sees their match alone, then hides it
Private links with Copy, Email and WhatsApp buttons that open your own app, so nothing is sent from the page
Lock the draw before sharing; the organiser list stays hidden until you ask, with copy, CSV and print
How to use the Secret Santa Generator
Paste the names, one per line, or add them one at a time
Add can't-draw-each-other rules, then set the event title, budget and date
Press Draw names, draw again if you like, then lock the draw
Choose how to hand out the matches: pass the device, private links or the organiser list
Give each person only their own card or link
Example
Input
Alex, Sam, Priya, Jo, Kim
Rule: Alex and Sam cannot draw each other
Budget: $25
Output
Giver Gives to
Alex Priya
Priya Sam
Sam Jo
Jo Kim
Kim Alex
Alex and Sam never meet in the draw, and nobody draws the person who drew them. Every draw comes out differently, and this list stays hidden unless you ask to see it.
Common errors & troubleshooting
"Not possible: Sam has nobody left to draw." — The rules rule out every other person for Sam. Remove one of the rules that involve Sam, or make it one way only so that Sam can still draw that person.
"Not possible with “Avoid swapping” on: …" — With your exclusions, the only valid draws would have two people drawing each other. Turn Avoid swapping off, or remove an exclusion.
A name was left out because it was already on the list. — Names are compared ignoring capital letters, so two people with the same name need a surname or an initial to tell them apart.
A private link says it looks damaged. — The link was cut short when it was copied. Copy it again in full: each link carries the whole match after the # sign, so every character matters.
Frequently asked questions
How do I run a Secret Santa draw online?
Enter the names, add any rules, press Draw names, then choose how to hand out the matches: pass the device, send private links or keep an organiser list. The draw happens in your browser.
Can I stop couples or housemates from drawing each other?
Yes. Add a can't-draw-each-other rule between any two people, or switch on one way only if just one of them should be barred from drawing the other. You can add as many rules as you need, and the tool tells you if they make a draw impossible.
How do private links keep each match secret?
Each link holds one person's match in the part after the # sign, which browsers do not send to a server. That is encoding, not encryption, so anyone who gets a link can read it: send each person only their own link, privately.
Can I organise a Secret Santa without seeing who got whom?
Yes. In pass-the-device mode each person taps their name, sees their own match and hides it again, and you never see the full list. The organiser list stays hidden until you choose to see everything.
Is the Secret Santa draw really random?
It uses your browser's secure random number generator. It first tries fully random assignments, which gives every valid draw an equal chance, and only searches for a fitting assignment when your rules are tight.
Are my names saved or uploaded?
Nothing is uploaded. Your names, rules and event details are saved on this device only so they are there next time, and one button clears them. The draw itself is never saved, so hand out the matches before you close the tab.
Related tools
Random Name Picker — Draw winners, shuffle a list or split teams, with a seed you can share.
Countdown to a Date — Live days, hours, minutes and seconds until any date, with holiday shortcuts and a shareable link.
QR Code Generator — Generate a QR code from text or a URL; download as PNG or SVG.
Bulk QR Code Generator — Turn a list or a CSV into up to 500 QR codes as a ZIP of PNG or SVG files, or a printable labelled sheet.
Dice Roller — Roll any number and type of dice (d4–d20) with modifiers and totals.