What is This?

Random Name Generator is what it says on the tin: it generates random last and first (female and male) names.

Why Another Name Generator?

At the time I wrote this (circa 2010 or earlier), there were a couple of name generators out there, but they were all dissatisfying.

One approach I saw was to randomly pick from a preselected list of names. But this means no new names are actually generated. It’s more of a random name chooser than a random name generator.

Another approach I saw was to take random syllables and string them together to form a name. This is certainly a more generative approach, but it has a couple of issues. First, the syllables still have to be hard-coded, which means the tool won’t ever generate a syllable that you didn’t specifically program it to. Second, randomly strung together syllables don’t actually make good sounding names. In real names, certain sounds are more likely to flow together than others. I wanted to generate names that actually sounded like names.

How is This Different?

Random Name Generator uses an approach based on natural language processing (NLP). These are techniques normally used to generate artificial text from a corpus of representative documents. In the same way, Random Name Generator observes the occurrences of letters in actual, real-world names in order to produce what it thinks are plausible lookalikes. I used the U.S. Census data from 1990 and 2000 to produce my datasets.

As you can see if you look at the results, some of the names are unpronounceable. Some are just real-world names being spit back out. But usually after looking through a page or two of results, I can find examples of novel names (i.e., that do not occur anywhere in the U.S. census data) that are strikingly pleasing.


  • New Domain

    Random Name Generator now lives at random-name.org. Long live Random Name Generator!

  • Name Generator Returns

    Way back when, I rewrote the name generator in Common Lisp. See the (very brief) post about it here. I do not seem to have kept the previous version, so I don’t know what language I had used for it previously.

subscribe via RSS