A simple tool to generate names for use in designs and mockups.
PHP CSS JavaScript ApacheConf
Latest commit acbc6b3 Oct 28, 2016 @thm committed on GitHub Updated docs with usage of 'ext' param
Failed to load latest commit information.
uinames.com Maintenance + Full Personas Oct 28, 2016
.gitignore Small improvements Nov 30, 2015
README.md Updated docs with usage of 'ext' param Oct 28, 2016
names.json changes Oct 28, 2016



This is the repo for uinames.com. Feel free to contribute to the project by adding names. Keep in mind that more isn't better. Quality over quantity. Quality being the most common/popular names in a region.

The Algorithm

When the option to pick a region at random is selected, a region will be picked based on the amount of possible name-combinations for that region. A region with more names is more likely to be picked, and regions with less names are less likely to be picked. I propose having a maximum of 100 male names, 100 female names and 300 last names per region. That's 60.000 possible combinations per region.

The Layout (JSON)

    "region": "Region",
    "male": ["Male", "First", "Names"],
    "female": ["Female", "First", "Names"],
    "surnames": ["Last", "Names"]


All responses are returned as JSON(P), with no request limit. Please keep the amount of calls to a minimum though, and cache responses whenever possible.

Basic usage

  "region":"United States"

Optional Parameters

Number of names to return, between 1 and 500:


Limit results to the male or female gender:


Region-specific results:


Require a minimum number of characters in a name:


Require a maximum number of characters in a name:


For JSONP, specify a callback function to wrap results in:


Extended Usage

Additional randomized personal data is served if the ext parameter is detected. Photos offered are from the authorized section on http://uifaces.com:

  "name": "John",
  "surname": "Doe",
  "gender": "male",
  "region": "United States",
  "age": 29,
  "title": "mr",
  "phone": "(123) 456 7890",
  "birthday": {
  "dmy": "19/06/1987", // day, month, year
  "mdy": "06/19/1987", // month, day, year
  "raw": 551062610 // UNIX timestamp
  "email": "john.doe@example.com",
  "password": "Doe87(!",
  "credit_card": {
    "expiration": "12/20",
    "number": "1234-5678-1234-5678",
    "pin": 1234,
    "security": 123
  "photo": "http://uinames.com/api/photos/male/1.jpg"

Exception handling

Error messages have the following format:

{"error":"Region or language not found"}


This project is initiated and maintained by @thomweerd.


This massive collection of names wouldn't have been as complete without the help of these wonderful people. Thanks for all the contributions and the continued support!

Special thanks to Claudio Albertin for his work on the API.