What does a fake name generator do?
A fake name generator produces invented full names — a given name, often a middle name, and a surname — for use as placeholder data. It is a fixture tool rather than a novelty: the names it produces are meant to be typed into a form, pasted into a database seed file or rendered into a screenshot, in a context where a real person's name would be inappropriate or unsafe.
Plausible names matter because test data has to be realistic enough to exercise real code. A form with a minimum-length rule, a surname field that rejects a full stop, or a display that truncates at twenty characters will behave differently for a genuine-looking name than for a string of nonsense — and only the realistic value tells you whether the rule is right. Invented names are combinations of common given names and surnames drawn from fixed lists, so every name reads naturally without belonging to anyone.
Two features make the output usable rather than merely decorative. A seed fixes the output, so a fixture generated today can be regenerated in a month when a test fails and someone needs to look at the same rows. And the export is structured — CSV with the parts in separate columns for a database, or plain text lines for pasting into a field — so the data lands in the shape the destination expects instead of needing to be reshaped by hand.
How to generate fake names
- Choose a name pool. Each is a hand-written list of common given names and surnames for one language.
- Decide whether the given names should be mixed, all female or all male.
- Pick a format: full name, first and last only, last name first, first name with a middle initial, or a username.
- Set how many names you need, up to five hundred at a time.
- Enter a seed, or press Surprise, so the list can be reproduced later exactly as it is now.
- Copy the list, or download it as CSV with separate columns or as plain text lines.
Fake Name Generator limits and rules
| Item | Limit |
|---|---|
| Name pools | English (US), English (UK), English (India), Spanish, German and Japanese |
| Per run | Up to 500 names |
| Gender | Mixed, female or male given names |
| Formats | Full name, first and last, last name first, first with a middle initial, or a username |
| Reproducibility | A seed makes a run repeatable; the same seed always gives the same list |
| Export | Copy to the clipboard, CSV with separate columns, or plain text |
| Realism | Every name has an equal chance, so the list does not match real population frequencies |
When to use it
- Filling a database seed file with rows that look like people rather than like lorem ipsum.
- Populating a design mock-up so a table does not show the same name ten times.
- Producing screenshot data that is obviously fictional and safe to publish.
- Testing a search, sort or pagination feature against a longer list of names.
- Building sample user records for a demo environment that must not contain real users.
Is it private?
Names are assembled in this page from lists that ship with it — nothing is fetched, computed on a server or logged. No seed, name or export leaves your browser, and closing the tab discards everything.
Frequently asked questions
No. Each name is a combination of a given name and a surname drawn from short fixed lists, so it is invented even when it happens to coincide with a real person's name — which it sometimes will, because common names belong to many people. That is exactly why the output is for development and testing only: never put a generated name into a contract, an invoice, a real user record or anything that could be mistaken for a genuine identity.
It makes the run repeatable. Random-looking output normally changes every time, which is fine when generating a fixture but unhelpful when a test fails and someone needs to inspect the exact rows that caused it. With a seed, the generator is a deterministic sequence: the same seed and settings always produce the same names in the same order, so a list can be regenerated months later and matched against whatever was committed earlier.
Yes — one of the formats builds a username from the parts, lowercasing them and removing accents, with a two-digit number appended to keep it plausible. Treat it the same way as the name itself: a false address should use a domain reserved for exactly this purpose, such as example.com, rather than a real domain that would send mail to somebody. Reserved names and domains exist for testing, and using them prevents accidental contact.
Because each pool is a short hand-written list, not a census sample, so every entry is equally likely. Real populations are very unevenly distributed — a handful of surnames cover a large share of people, and some given names are far more common than others. That makes this tool ideal for filling forms and useless for anything that depends on realistic distribution, such as testing a search index or a sorting rule against production-like data.
Four columns with the parts kept separate — first name, middle name, last name and gender — plus a fifth holding the formatted line exactly as it is displayed. The split columns are what a database seed usually wants, and the formatted column saves re-assembling the parts when the output is going into a single text field. The plain text export holds just the formatted lines, one per row.
Five hundred per run. That is enough to fill a visible table several times over and to populate a small seed file, while keeping the page responsive and the export small enough to paste. For a larger dataset, generate successive runs with different seeds and concatenate the files — the seeds make each block reproducible, so the combined fixture can still be rebuilt from scratch at any time.
Related tools
Written and maintained by Md. Nur Hossain Repon.