Secret Santa generator

Secret Santa generator

Draw gift-exchange pairings with exclusions and personal links

Enter everyone's name and get a gift-exchange pairing where nobody draws themselves. Optional exclusions keep listed pairs from buying for each other. Each person gets a personal link with an encrypted URL fragment that shows only their assignment. The draw uses crypto.getRandomValues in this browser. Names sit in localStorage on your device. Do not paste the organizer page into a group chat.

Why Secret Santa is not a team split

A gift exchange needs a derangement: everyone gives to one person and receives from one person, and nobody is assigned themselves. Team generators place people into groups. Pair generators make unordered pairs for games, not directed giver-receiver edges. White elephant only needs a steal order. This Secret Santa generator exists so an office, a family, or a friend group can paste Names, add Exclusions for couples, and send private-looking links without running an email blast through TheOwlBay. Odd-sized groups work. We do not send mail, process wish lists, or sell wrapping paper. If you only need teams, use the team generator. If you need a steal order, use white elephant.

How the gift exchange picker works

You need at least three names. The draw is a derangement: nobody is assigned themselves, and optional pairs (couples, roommates) can be excluded. Odd-sized groups work. Each person gets a separate unlisted link so you can send assignments without a group email blast.

Treat those links like anyone-with-the-URL can read them. Do not paste the organizer results into a group chat. If you only need teams, not gifts, use the random team generator.

Examples

Office of 12 → 12 personal links, one per inbox.

Exclusion: partners who should not buy for each other.

Common mistakes

Pasting the organizer page or all links into a group chat — send one link per person in private.

Only two names — you need at least three for a valid draw.

How assignments are drawn

The script shuffles with crypto.getRandomValues and searches for a derangement that honors Exclusions. That is a fair shuffle plus constraints, not true random, not a server-side sealed envelope, and not encryption. Unlisted links encode the assignment in the URL; they are unlisted, not hashed with a password. We do not store the draw on a TheOwlBay account. localStorage holds the names and exclusion lines on this device. If the constraint set is too tight, generation fails instead of producing a broken cycle. Odd counts still form one cycle. This is not a raffle of one winner. Ads stay off. Clear site data if you want the list gone from this browser.

Who this gift tool is for

Offices, families, and friend groups running a name-draw gift exchange will use this more than a raffle picker. Exclusions help couples and roommates avoid buying for each other. It is not for splitting teams, not for seating charts, and not for white-elephant steal order. Teachers running a classroom gift swap can paste first names only. We do not ship presents or take a commission. If the group wants a public steal sequence instead of secret assignments, use white elephant. If they want one prize from tickets, use the raffle. TheOwlBay does not send the links for you — you copy them. No sign-up.

FAQ

Does an odd number of people work?

Yes. You need at least three Names. Everyone gives to one person and receives from one person.

Are the participant links encrypted?

Assignments use AES-GCM in the URL fragment on your device. Anyone with the full link can still open that assignment — send links privately, not in group chat.

How do Exclusions work?

Add a line like Alice, Bob under Exclusions so those two are not assigned to each other. If the draw cannot succeed, generate again or drop a line.

Where are names stored?

In localStorage on this device. The draw uses crypto.getRandomValues. No email and no TheOwlBay account.

Secret Santa versus white elephant?

This page assigns who buys for whom. White elephant only shuffles steal order. Teams split groups, not gifts.