Gift Exchange Generator

A name generator for gift exchange draws, for whoever is organising it. Enter everyone taking part, keep groups of people from drawing each other, and get the complete list of who buys for whom — ready to print, copy or pass on.

Put their names on each line, separated by |.

How it works

  1. Enter the names. Add everyone taking part, with one name on each line. The generator needs at least three names and allows up to 60.
  2. Exclude people who shouldn't draw each other. If two or more people should not be matched together, put their names on the same line and separate them with |, such as Ava | Ben | Chloe. Everyone on that line will be kept apart. This is useful for couples, families, roommates, or any other group you want to keep separate.
  3. Generate the list. Click Generate the list to create the complete assignment. Each person buys for someone else, nobody buys for themselves, and everyone receives exactly one gift.
  4. Copy the results. The complete list is shown to the organiser.

Exclude groups, not just pairs

You can keep more than just a couple apart. Put any people who should not draw each other on the same line, separated by vertical bars: Ava | Ben | Chloe.

Two names exclude each other in both directions. With three or more names, everyone on the line is excluded from everyone else on that line. This can be useful for families, couples, roommates, or any other group that should not be matched internally.

The vertical bar keeps the format unambiguous without making assumptions about names that might contain spaces, commas, or ampersands.

Nobody draws themselves

Every generated list keeps each person from being assigned their own name. The generator also checks the exclusion rules before accepting a result.

Rather than using a fixed rotation of the names, it creates a shuffled arrangement and checks whether it satisfies all the rules. If it doesn't, it tries again. This means Draw again can produce a new valid arrangement instead of simply rotating the previous one.

When a draw is impossible

Exclusion groups can make a complete exchange impossible. For example, if one person is excluded from everyone else, there is nobody they can be assigned to. The generator checks for this obvious case before attempting the draw.

Other combinations of exclusions can also make a valid arrangement difficult to find. The generator searches for one within a fixed number of attempts. If it cannot find a valid arrangement, it tells you to adjust the exclusions or add more people rather than presenting an invalid list.

Frequently asked questions

What's the difference between this and the Secret Santa generator?

This one shows the complete list, for an organiser to distribute. The Secret Santa generator reveals one match at a time on a shared device and never shows the full list, so whoever runs it can take part too.

Can I keep a group of people from drawing each other?

Yes — put the people in the same group on one line, separated by vertical bars, like Ava | Ben | Chloe. Any number of people can be included in a group, as long as the overall list stays within the 60-person limit.

Do I need emails or an account?

No. Names only, drawn in your browser. Nothing is sent anywhere and nothing is stored, so copy or print the list before you close the page.

How many people do I need?

At least three. With two people the only possible arrangement is that they buy for each other, so there is nothing to draw. Up to 60 in one list.