Random Name Generator

Names that look like they belong to real people. American names are weighted by how common they actually were in the decade you choose, drawn from 146 years of Social Security records. 23 traditions in all, each following its own conventions.

More options

Set the longest given name to 0 for no limit.

Why most random name generators produce names nobody has

The typical generator holds two lists, one of first names and one of surnames, and picks from each with equal probability. Every name on the list is as likely as every other. The output looks superficially fine and feels subtly wrong, because real populations are not uniform. In any given year a handful of names cover a very large share of births and thousands of others cover the rest.

A uniform generator gives you the same number of Bartholomews as Johns. A weighted one gives you what a school register actually looks like. That difference is why the American names here are drawn from Social Security records with their real frequencies attached rather than from a curated list of nice-sounding names.

The decade filter is the useful part

Given names turn over faster than almost any other cultural habit. Something that sounds neutral and timeless to you is usually pinned to a twenty-year window that you absorbed without noticing.

Pick the 1920s and the generator returns names like Dorothy, Estelle, Frederick and Judith. Pick the 2020s and it returns Harlow, Delilah, Remi and Ariana. Almost nothing survives across the whole period at a similar rate. If you are naming a character who is seventy years old in a story set today, the decade filter does the arithmetic for you.

One caveat worth knowing: the Social Security data excludes any name given to fewer than five babies in a year, to protect privacy. Genuinely rare names are simply absent. The dataset is excellent for what was common and silent on what was unique.

Getting each tradition right

Most generators apply a Western template to every culture and produce output that is wrong in ways their users cannot see. Three things get handled properly here.

Name order

Chinese, Japanese, Korean and Vietnamese names place the family name first. A generator that outputs given-then-family for those traditions is producing something no native speaker would write. Each region here carries its own order and the generator follows it.

Surnames that change with gender

In Russian, a surname takes a feminine ending: Ivanov becomes Ivanova, Kuznetsov becomes Kuznetsova, Belsky becomes Belskaya. Polish does the same for its -ski and -cki endings, so Kowalski becomes Kowalska and Wiśniewski becomes Wiśniewska. Switch the generator to women’s names in either region and watch the surnames change. Names ending differently, like Nowak or Mazur, correctly stay put.

Traditions with no surnames at all

Ethiopians do not use inherited family names. A person’s second name is their father’s given name, so it changes every generation. The generator draws that second name from the masculine given-name pool and tags the result, because presenting it as a surname would misrepresent how the system works.

Two surnames

Spanish, Mexican and Brazilian naming customarily uses two surnames. Turn that option on for those regions and you get the fuller form that appears on documents.

What people use this for

Fiction

The most common use, and the one the decade filter serves best. A cast whose names all come from the same twenty-year window reads as a generation; a cast whose names are scattered across a century reads as carelessness, even to readers who could not say why.

A practical technique: generate a large list, then read it aloud rather than scanning. Names that are hard to say will be hard for readers too, and a character whose name the reader stumbles over every page is a character the reader skims.

Testing and demo data

Developers need plausible names for seeded databases, design mockups and test fixtures. Realistic distribution matters more here than it first appears: a test set full of equally-rare names will not surface the collision and sorting bugs that a real dataset, with its many repeated common names, would.

Turn the count up to a hundred, copy the whole list, and you have a fixture in a few seconds. Nothing you generate is transmitted anywhere.

Games and worldbuilding

For tabletop games, non-player characters need names quickly and in bulk. Picking a region gives an internally consistent set, which is more convincing than a mix of everything. If you want invented names rather than real ones, the fantasy generator is a better fit than this one.

Design and mockups

Interfaces populated with realistic names catch layout problems that placeholder text hides: long surnames breaking a column, diacritics affecting line height, family-first ordering confusing a sort. Generating from several traditions at once is a quick way to stress-test a design that will have international users.

A word on using these names

Nothing here is a real person, but that is a statement about the process rather than a guarantee about the output. The generator combines a given name and a family name at random from separate pools. With common names in any country, some combinations will match real people, and some will match a great many of them.

For fiction that will be published, or for anything a name could be attached to publicly, search the generated name before committing. This matters most when the character is unsympathetic and the name is unusual, which is exactly the combination most likely to land on one identifiable person.

How to get better results

  • Set the decade before anything else. It changes the output more than every other control combined.
  • Generate more than you need. Forty names and a shortlist beats five names and a decision.
  • Use the starting letter filter when you already have characters whose names begin with the same sound and want to avoid a clash.
  • Cap the given-name length if the name has to fit somewhere: a UI field, a game character sheet, a column heading.
  • Turn off the family name when you only need given names, which is most of the time for background characters.

Where the data comes from

American given names come from the US Social Security Administration’s public-domain record of names on card applications, covering 1880 to 2025. We process it into a compact file at build time; the tool loads that once and runs everything else on your device.

Names for the other 22 traditions, and all surnames including the American ones, are hand-curated lists. They aim to reflect what is common rather than what is interesting, which is the right target for a generator meant to produce plausible people. If something looks wrong for a tradition you know well, please tell us. Those corrections are the main way this improves.

Related tools: the Name Combiner blends existing names into new ones, and the Baby Name Combiner is set up for naming a child from family names.

Common questions

Where do the American names come from?

Every name given to five or more babies in the United States between 1880 and 2025, taken from Social Security card applications. That is a public-domain dataset covering roughly 375 million births. Because it records how many babies got each name in each year, the generator can weight its picks by what was genuinely common in the decade you choose rather than sampling a list at random.

Why does picking a decade change the results so much?

Because naming fashions move faster than almost any other cultural habit. Ask for the 1920s and you get Dorothy, Estelle and Frederick. Ask for the 2020s and you get Harlow, Delilah and Remi. Very few names survive across the whole period at similar frequency. That churn is the single most useful thing about the underlying data.

Why is the family name shown first for some regions?

Because that is the correct order there. Chinese, Japanese, Korean and Vietnamese names put the family name before the given name, and writing them the other way round produces something no native speaker would use. The generator follows each tradition rather than forcing everything into a Western pattern.

Why did the Russian surname change when I switched to women’s names?

Because Russian surnames inflect for gender: Ivanov becomes Ivanova, Belsky becomes Belskaya. Polish does the same with its -ski and -cki endings, so Kowalski becomes Kowalska. Most generators ignore this and produce names that are simply wrong. This one applies the rule automatically.

What does the patronymic tag mean on Ethiopian names?

Ethiopians do not use inherited surnames. A person’s second name is their father’s given name, so it changes with every generation and siblings share it only because they share a father. The generator draws that second name from the pool of masculine given names, which is what actually happens.

Are these real people?

No. The generator combines a given name and a family name at random from separate pools, so any resemblance to a real person is coincidence. With common names in any country, coincidence is close to certain. Do not treat a generated name as fictional-and-therefore-safe if you are publishing something: search it first.

Can I get the same list again?

Not exactly. Results are randomly drawn each time, so pressing generate again gives a fresh set. Use the shortlist to keep the ones you want as you go, then copy the whole shortlist when you are done.