Secret Santa name generator
Enter participants and any pairs who must not draw each other. The organizer sees every assignment. A result link reveals the full draw to anyone who opens it; send individual assignments separately to keep them secret.
| Constant | Value | Source |
|---|---|---|
| Minimum participants | 3 | Chosen minimum of this tool; two people can exchange by swapping (September 14, 2026) |
| Maximum participants | 100 | Definition and limits of this browser tool (September 14, 2026) |
| Input limits | Distinct labels: 80 characters each; roster: 10,000 characters; exclusions: 20,000 characters; seed: 128 characters. | Definition and limits of this browser tool (September 14, 2026) |
| How the draw works | Up to 2,000 seeded shuffles, then exact bipartite matching if necessary. A valid result has no self-draws, respects two-way exclusions and assigns each receiver once. The fallback is not uniform over all valid draws. | Definition and limits of this browser tool (September 14, 2026) |
| What a shared link reveals | The fragment encodes names and seed, plus exclusions. Anyone with the address can reproduce every pair. | Tool behavior; MDN documents browser processing of URL fragments (September 14, 2026) |
Enter the people taking part and any pairs who must not draw each other. This organizer view shows the complete assignment list: one recipient for every giver, with nobody assigned to themselves. The address can reproduce the whole draw, so anyone who receives that address can see every pairing. For a secret exchange, distribute each person's assignment separately.
Once the roster is settled, the Secret Santa gift guide helps with the buying decision. Our guide to how Secret Santa works covers the spending cap, invitations and reveal. This calculator handles the assignments; it does not contact participants or collect their wish lists.
Enter distinct participant names
Use one name per line, or separate names with commas or semicolons. Leading and trailing spaces are removed. The tool accepts 3–100 people and labels up to 80 characters long. Two participants called Alex need distinct labels, such as Alex R and Alex T. Repeating a label, including a change of capitalization, produces an error instead of silently dropping someone.
Three is this tool's chosen minimum. Two people can exchange with each other, but that swap has no surprise about the recipient. The maximum keeps the form and assignment table manageable. These are product limits, not mathematical facts about how many people can exchange gifts.
Check the displayed participant count against your invitation list. A misspelled name can still be a valid label, and the calculator cannot identify a person you forgot. Long result tables scroll inside the calculator so the surrounding page remains usable.
Add exclusions without explanations
Write one pair per line as Ana - Ben. That block works in both directions: Ana cannot receive Ben, and Ben cannot receive Ana. Use the exact participant labels; capitalization does not matter. Hyphenated names such as Anne-Marie work when both ends of the pair identify a single participant unambiguously.
Do not append a reason in parentheses. Ana - Ben (couple) is rejected because Ben (couple) is not the participant Ben. Unknown names, incomplete lines and ambiguous separators also produce an error. A self-exclusion is unnecessary because self-draws are always blocked. Repeating the same valid block has no additional effect.
Too many exclusions can prevent a complete assignment even when each person appears to have someone available. If the tool reports that no complete draw exists, review the roster or remove a block. Choosing another seed cannot make an impossible set of restrictions work.
Read and reproduce the assignment
The seed controls a repeatable shuffle. Leave it empty for the browser to choose one; the generated value appears in the field. Keeping the same ordered roster, exclusions and seed reproduces the draw. To make a fresh attempt, replace the seed or clear it. A new seed can still produce the same pairs, especially in a small group.
The generator first tries seeded shuffles. If those attempts miss a valid assignment, an exact matching step finds one whenever the restrictions permit it. That fallback does not guarantee equal probabilities for every possible complete draw. This is a party organizer, not a cryptographic lottery or a way to prove that an organizer never tried several seeds.
For Ana, Ben, Cai and Dee, excluding Ana - Ben and using demo gives Ana → Cai, Ben → Dee, Cai → Ben and Dee → Ana. Comma-separated entry gives the same result as one name per line. With Ana, Ben and Cai, no exclusions and seed x, the result contains three assignments and displays x as its seed. These cases also appear below as worked examples.
Keep the full link with the organizer
The address includes names, exclusions and the seed after the # character. MDN explains URL fragments: this part is processed by the browser and is not included in the request for the page. That does not make a copied address confidential. Browser history, bookmarks and messages can retain it.
The organizer can see all assignments. There are no separate private participant views, automatic emails or password protection. Send each person only their own line if secrecy matters. After changing the roster or restrictions, check the new list before distributing it; previously copied links continue to describe their original draws.
Worked examples
- Four friends, one couple excluded — Ana, Ben, Cai and Dee with "Ana - Ben" excluded and seed "demo": Ana → Cai, Ben → Dee, Cai → Ben, Dee → Ana.
- Same names, same seed, comma-separated — the input format does not change the draw.
- Three names, no exclusions — the chosen minimum accepted by this tool.
Common questions
Can each participant open a private view of their assignment?
No. This organizer view shows every pair. Anyone with the full result address can reproduce the complete list. Send each person only their own assignment separately if secrecy matters.
What does an impossible draw mean?
The current roster and exclusions cannot give everybody one permitted recipient. Exact matching verifies this after the shuffle attempts. Review the participants or remove a block; a new seed cannot fix impossible restrictions.
Embed this calculator on your site
Constants and sources checked on September 14, 2026.