Secret Santa Generator
Enter participants and draw Secret Santa gift pairings. Nobody is ever assigned themselves, and you can exclude specific pairs (like couples) from matching each other.
Need gift tags? View kraft gift tags on Amazon.(affiliate link)
As an Amazon Associate we earn from qualifying purchases.
How to use this tool
- Enter participants, one per line.
- Optionally add exclusion pairs, one per line, comma-separated.
- Draw names, then reveal each person's assignment individually.
Understanding the controls
- Participants
- One name per line, three or more. Blank lines are skipped.
- Exclusions
- One pair per line as two names with a comma between them: "Alex, Jordan". A pair counts in both directions. Spell each name exactly as it is in the participants box, capitals included, because a pair naming somebody who is not on the list changes nothing; and keep to two names a line, because a line with one name or with three is passed over without a message.
- Reveal
- Each row has its own. Revealing one person's recipient hides the last one revealed, so only one pairing is on the screen at a time.
Worked examples
- An office exchange of twelve people
- Enter all twelve names and draw. Nobody gets themselves, and everybody both gives and receives exactly once.
- A family draw with two couples
- Add each couple as an excluded pair so partners cannot draw each other in either direction — the usual reason a family draw gets re-run.
Common use cases
- Organising an office or family gift exchange
- Running a Secret Santa with couples who shouldn't match
- Quick, fair gift-draw for any group
How this generator works
The list of participants is shuffled with your browser's Web Crypto random generator to produce a candidate set of pairings, which is then checked: if anyone has drawn themselves, or an excluded pair has matched in either direction, the whole arrangement is thrown away and a fresh shuffle is tried. This repeats up to five hundred times, and drawing again rather than patching up a bad result is what keeps every valid arrangement equally likely — swapping two names to fix a clash would quietly bias the outcome. If five hundred shuffles all fail, which takes exclusions that leave only a handful of valid draws, one is found by matching givers to permitted recipients instead: still valid and still random, but no longer equally likely among the few that exist.
Limitations and good to know
- Everyone who can see the screen sees every pairing. The tool does not send anyone a private message, so the organiser inevitably knows the whole list — if the draw must be secret from everyone, use a service that emails each participant separately.
- At least three people are needed. With two, the only valid arrangement is for them to draw each other, which is not a secret exchange.
- Exclusions can rule out every arrangement — for example a group of three where two may not draw each other. The draw then says that no draw satisfies them, which is established by search rather than by giving up, and you will need to remove a restriction.
- The pairings are never saved. Once the page is closed they are gone, so record them before you navigate away; only the list of names can be kept, from the save panel on this page.
Privacy and your data
The draw runs in your browser and the pairings are never uploaded or stored. The list of names is stored only if you press Save in the panel on this page, and then only in this browser. Nothing appears in the page address, so a shared link cannot leak who drew whom. The important caveat is not technical but practical: everyone who can see the screen can see every pairing, so reveal names one at a time rather than showing the full list to the group.
This tool does not provide anonymous individual delivery — anyone viewing the results screen can see every pairing, so reveal names one at a time and don't share the full list with the group.
Frequently asked questions
- Can I stop someone from drawing their partner?
- Yes — add exclusion pairs and the draw will never assign someone to buy for anyone on their exclusion list, while keeping the rest of the draw fair.
- Does anyone else see who drew who?
- No — the draw runs entirely in your browser and no name or pairing is sent to a server, so only the person running the draw sees the full pairing list unless they choose to share it.
Related generators
- Random Team GeneratorSplit a list of names into a chosen number of random, evenly sized teams.
- Derangement GeneratorPermutations that leave nothing in its original place, counted by enumeration and by recurrence and required to agree.
- Pair GeneratorPair up a list of names, across as many rounds as you need, without anyone being paired with the same person twice.
- Ladder Draw Generator (Amidakuji)A ladder draw — amidakuji, ghost leg — that matches names to outcomes one to one, and that everybody can check by tracing their own line down.
- Gift Exchange Feasibility CheckerTells you whether your Secret Santa rules can actually work — and which rule to drop when they cannot.