Secret Santa Generator
Paste a list of names and randomly assign each person someone to give a gift to — nobody gives to themselves. Free, instant.
How to use this tool
- List all participants, one per line.
- Click Calculate to generate the pairings.
- Share each person's assignment privately.
- Click again to regenerate if needed.
Organise a Secret Santa exchange in seconds. Enter all participants and the generator will randomly assign each person a unique gift recipient — no one is ever assigned themselves.
How it works
The Secret Santa Generator takes a list of participant names and assigns each person exactly one other person to give a gift to. The algorithm guarantees that no one is assigned themselves, and that every person both gives and receives exactly one gift, forming a valid random gift-exchange cycle.
Under the hood, the tool creates a random derangement of the name list -- a permutation where no element appears in its original position. This ensures the no-self-assignment rule is mathematically guaranteed rather than just hoped for.
Paste all participant names (one per line), click Generate, and share the full result list privately -- each person should see only their own assignment, or you can distribute results individually. Use it for office parties, family gatherings, friend groups, or any gift exchange where you want the pairings to be fair and anonymous.
Worked example
Organizing a family gift exchange for 8 people
- Paste all 8 family members' names into the Participants field, one per line.
- Click Generate.
- Screenshot the full assignment list for your own records.
- Tell each participant only their assigned recipient -- keep others' assignments private.
Eight valid gift-giving pairs where no one is assigned to themselves and everyone gives and receives exactly once.
Common mistakes to avoid
- Running the generator with only 2 participants, which cannot produce a valid secret-santa derangement.
- Sharing the full result list with all participants at once, which reveals everyone's assignments and ruins the secrecy.
- Including duplicate names (e.g. two family members both named Chris) without disambiguating them, causing confusion about who should give to whom.
Key terms
- Derangement
- A permutation of a list where no element appears in its original position -- the mathematical basis for Secret Santa assignment.
- Gift exchange cycle
- The circular chain of giving that results from a derangement: A gives to B, B gives to C, and so on until someone gives back to A.
- Assignment
- The specific name each participant is given as their gift recipient.
Frequently asked questions
- How does it ensure nobody is self-assigned?
- The algorithm shuffles receivers until no giver is matched with themselves (a derangement). It retries up to 1000 times.
- What's the minimum number of participants?
- You need at least 2 people for a valid Secret Santa pairing.
- Can I use exclusions (e.g. couples)?
- Not currently — this tool generates a simple derangement without exclusion rules.