I often have to generate random names so I created this simple online utility that does it for me. It lets you generate however many random male and female names you need starting with any letter. It works in the browser and is powered by alien technology from the future.

Random Name Generator Options

Random Names
Which gender names to generate?
Name Format
Print first name and last name.
Print first name, middle name, and last name.
Print first name only.
Print last name only.
Print last name with a honorific.
Initials and Extra Format
Ex: J. Walker.
Ex: James E. Walker.
Ex: James W.
Print names without spaces.
Print initials without dots.
Print all names in lowercase.

Random Name Generator Examples (click to try!)

Male and Female Names
This example generates a comma-separated list of 30 random names, which includes both female and male names. The gender is generated randomly before choosing a random name, so the probability of getting a male or a female name is the same (50/50).
Sonja, Barbara, Bradly, Ashli, Belinda, Jakob, Marcella, Deshaun, Tahj, Daren, Karlie, Ricardo, Nyla, Elsa, Eric, Kalista, Leandra, Esteban, Joan, Camryn, Destinee, Miguelangel, Lauryn, Lucas, Shanice, Jessica, Randolph, Mina, Harold, Layne
How many random names to generate?
Separate random names with this character.
Name starts with. (Set the initial letters for names, middle names, and surnames. For example, "R/E/B" might give "Ryan Evan Brown".
Name and Surname
Full Name
Just a Name
Just a Surname
Mr./Ms. Surname
Use Name Initials
Use Middlename Initials
Use Surname Initials
Skip Spaces
Skip Dots
Lowercase
Full Female Names
In this example, we generate full female names that consist of the given name, middle name, and surname. We create 10 random names and separate them with a newline character "\n". As a result, they are printed in a vertical column.
Sheridan Laney Spalding
Gabriella Emery Morrison
Cheyanne Ariana Hodges
Taniya Miah Barajas
Nikita Jaqueline Masterson
Cinthia Rachelle Trapp
Mariam Alisha Dias
Kortney Betsy Reedy
Lexie Stevie Viera
Ana Bobbi Arellano
How many random names to generate?
Separate random names with this character.
Name starts with. (Set the initial letters for names, middle names, and surnames. For example, "R/E/B" might give "Ryan Evan Brown".
Name and Surname
Full Name
Just a Name
Just a Surname
Mr./Ms. Surname
Use Name Initials
Use Middlename Initials
Use Surname Initials
Skip Spaces
Skip Dots
Lowercase
Male Names with Initials
In this example, we create a list of male names with initials. We generate two types of names – full names (that are name+middlename+lastname) and names+surnames. The initials are generated by selecting just the the first letter of the primary and secondary names.
J. D. Ojeda
K. Applegate
J. S. Worthington
P. G. Pham
B. Malcolm
L. Holcomb
S. Tubbs
A. D. McArthur
M. R. Berman
M. Florence
A. T. McMillan
B. Isom
How many random names to generate?
Separate random names with this character.
Name starts with. (Set the initial letters for names, middle names, and surnames. For example, "R/E/B" might give "Ryan Evan Brown".
Name and Surname
Full Name
Just a Name
Just a Surname
Mr./Ms. Surname
Use Name Initials
Use Middlename Initials
Use Surname Initials
Skip Spaces
Skip Dots
Lowercase
Random Mr./Ms. Names
In this example, we generate a list of surnames with the honorific prefix for women and men. If the generated name is feminine, the program adds the prefix "Ms." and if it's masculine, the program adds the prefix "Mr.".
Ms.Hawthorne | Mr.Hansen | Ms.Herman | Ms.Ngo | Mr.Ruff | Mr.Kent | Ms.Eller | Mr.Doyle | Ms.Truitt | Mr.Benner | Mr.Kelleher | Mr.Clinton | Ms.Luther | Mr.Marquez | Ms.Britt | Ms.Dugger | Mr.Dumas | Mr.Lim | Mr.Vitale | Ms.Weis | Ms.Rader | Ms.Pickering | Ms.Stevens | Ms.Quarles | Ms.Nunn
How many random names to generate?
Separate random names with this character.
Name starts with. (Set the initial letters for names, middle names, and surnames. For example, "R/E/B" might give "Ryan Evan Brown".
Name and Surname
Full Name
Just a Name
Just a Surname
Mr./Ms. Surname
Use Name Initials
Use Middlename Initials
Use Surname Initials
Skip Spaces
Skip Dots
Lowercase
Names Starting with Specific Letters
In this example, we generate names with very specific initials. We allow the first names to begin only with the letter "A", the middle names to begin only with "B", and the surnames to begin with "C".
Angelo Brennon Crews
Alvaro Brodie Cadena
Aman Barry Crouch
Angelo Britton Clayton
Aditya Brennan Couch
Arturo Brent Crain
Anton Brendan Currier
Avery Briar Cash
Abdul Bradford Campbell
Armani Brayden Castaneda
Arnold Bowen Clayton
Austyn Brenton Colon
How many random names to generate?
Separate random names with this character.
Name starts with. (Set the initial letters for names, middle names, and surnames. For example, "R/E/B" might give "Ryan Evan Brown".
Name and Surname
Full Name
Just a Name
Just a Surname
Mr./Ms. Surname
Use Name Initials
Use Middlename Initials
Use Surname Initials
Skip Spaces
Skip Dots
Lowercase
Baby Name Choices
In this example, we needed to choose a name for a baby girl. The child's last name is "Wilson" and to find a beautiful combination for the first and middle names, we generate random baby names with a defined surname "Wilson".
Brittani Terra Wilson
Sally Madison Wilson
Michaela Felicity Wilson
Kayleen Amari Wilson
Briza Eva Wilson
Hailey Johnna Wilson
Elle Gabrielle Wilson
Giana Devyn Wilson
Leyla Harmony Wilson
Autumn Yesenia Wilson
How many random names to generate?
Separate random names with this character.
Name starts with. (Set the initial letters for names, middle names, and surnames. For example, "R/E/B" might give "Ryan Evan Brown".
Name and Surname
Full Name
Just a Name
Just a Surname
Mr./Ms. Surname
Use Name Initials
Use Middlename Initials
Use Surname Initials
Skip Spaces
Skip Dots
Lowercase

How Does This Random Name Generator Work?

This random name generator works entirely in your browser and is written in JavaScript. It generates random male and female names using three huge pre-generated arrays containing the most popular maleNames, femaleNames, and lastNames. There's also an option that lets you generate just the names you're interested in. For example, if the letter "G" is specified as the starting name letter, then the program filters the array of all names and returns a smaller array with only the matching names, such as ["Gary", "Gregorio", "Grayson"]. The generation of names happens in a for loop that stops when the array randomNames gets filled with the required number of names (this number is the count value in the options). To pick a random male name from the maleNames array, it uses the expression maleNames[Math.floor(Math.random() * maleNames.length)]}, the same code is used for femaleNames and lastNames. If you want to display just the name initials, the program additionally calls the function maleNames.slice(0, 1), which prints out only the first letter of the name and optionally adds a dot after it. Also, if necessary, the program can convert the names to lowercase and removes spaces from the names. All randomly generated names are pushed into the randomNames array, and when it is filled, the program joins all the names into one string and outputs it with the desired separator character. The code that does it looks like this: randomNames.join(separator).

Created by Browserling

This random name generator was created by me and my team at Browserling. Behind the scenes, it's actually powered by our web developer tools that are used by millions of people every month. Browserling itself is an online cross-browser testing service powered by alien technology. Check it out!

Secret message: If you love my tools, then I love you, too! Use coupon code TOOLLING to get a discount at my company.