Skip to content
MoneyDeck

Test Data Generator

Mock names, emails, phones and addresses as CSV, JSON or SQL

Updated · US rules · Free, no signup

Generated data

id,first_name,last_name,email,phone
1,Emily,Moore,[email protected],(800) 555-0145
2,Melissa,Roberts,[email protected],(756) 555-0195
3,Michelle,Tanaka,[email protected],(764) 555-0164
4,Mia,Lee,[email protected],(901) 555-0151
5,Arjun,Cohen,[email protected],(577) 555-0138
6,Linda,Campbell,[email protected],(682) 555-0185
7,Ashley,Ramirez,[email protected],(251) 555-0149
8,Anthony,Miller,[email protected],(903) 555-0188
9,Laura,Murphy,[email protected],(470) 555-0145
10,Karen,Lee,[email protected],(937) 555-0195

Rows generated

10

Columns per row

5

Total values

50

Output size

0.5 KB

  • 10 rows × 5 columns = 50 values (0.5 KB).
  • Emails use reserved example domains and phones use 555-01XX numbers, so nothing reaches a real person.

Preview (first 15 rows)

idfirst_namelast_nameemailphone
1EmilyMoore[email protected](800) 555-0145
2MelissaRoberts[email protected](756) 555-0195
3MichelleTanaka[email protected](764) 555-0164
4MiaLee[email protected](901) 555-0151
5ArjunCohen[email protected](577) 555-0138
6LindaCampbell[email protected](682) 555-0185
7AshleyRamirez[email protected](251) 555-0149
8AnthonyMiller[email protected](903) 555-0188
9LauraMurphy[email protected](470) 555-0145
10KarenLee[email protected](937) 555-0195

About the Test Data Generator

This fake data generator creates realistic-looking but entirely fictional records for testing software, filling spreadsheets, building demos and teaching databases. Choose which fields you want — names, email addresses, phone numbers, US-style postal addresses, dates of birth, companies and job titles — set the number of rows, and copy the result as CSV, JSON or SQL INSERT statements.

Developers use it to seed a local database, populate UI mock-ups, test import routines and check how forms handle long names or quotes. Analysts and teachers use it to build practice datasets without touching personal information, which keeps you clear of privacy rules that apply to real customer data.

The data is safe by design: every email uses the domains example.com, example.org or example.net, which are reserved for documentation by RFC 2606 and can never reach a real inbox, and phone numbers use the 555-01XX range traditionally set aside for fictional use. Names and addresses are random combinations, so any resemblance to a real person is coincidental. Type a seed to regenerate the identical dataset for repeatable tests.

How to use the test data generator

  1. 1Set the number of rows you need.
  2. 2Turn on the fields you want in each record.
  3. 3Choose CSV, JSON or SQL output (and a table name for SQL).
  4. 4Copy the data with the copy button and paste it into your app, database or spreadsheet.
  5. 5Add a seed if your tests need exactly the same data every run.

Formula and method

Columns = 1 (id) + 2 (name) + 1 (email) + 1 (phone) + 4 (address) + 1 (birth date) + 2 (company) Values = rows × columns

Each record gets a sequential id, then every selected field is generated independently: first and last names are drawn uniformly from lists of 64 first names and 60 surnames, emails are built from the name in one of three common patterns, phone numbers combine a random NANP-style area code (no N11 or N9X codes) with a 555-01XX line, and addresses pair a random street with a real city, its state and a ZIP code that starts with that city's prefix. Birth dates are uniform between 1950-01-01 and 2007-12-31.

The column count is the id plus the columns contributed by each toggle, and the number of values is rows × columns. CSV output quotes cells that contain commas or quotes (RFC 4180 style), JSON outputs an array of objects with numeric ids, and SQL outputs one INSERT per row with single quotes escaped.

rows
Number of records requested
columns
Fields per record including id

Worked examples

Ten contacts as CSV

The default fields are id, first name, last name, email and phone — 5 columns. Ten rows therefore hold 10 × 5 = 50 values, plus one header line in the CSV.

100 full customer records as JSON

All fields together give 1 + 2 + 1 + 1 + 4 + 1 + 2 = 12 columns. One hundred records contain 1,200 values, output as an array of 100 JSON objects.

SQL inserts with just ids and emails

With only id and email selected each INSERT has 2 columns, so 25 statements for the subscribers table carry 50 values.

Frequently asked questions

Is the fake data real personal information?+

No. Names, streets and companies are random combinations from built-in lists, emails use domains reserved for examples, and phones use the 555-01XX fictional range. Any match with a real person is pure coincidence.

Why do the emails use example.com?+

RFC 2606 reserves example.com, example.net and example.org for documentation and testing. Mail to these domains never reaches a real inbox, so seeding a system that sends emails cannot spam anyone.

Can I import the CSV into Excel or Google Sheets?+

Yes. Copy the CSV, save it as a .csv file and open it, or paste it into a sheet and use "Split text to columns". Cells with commas are quoted so columns stay aligned.

How do I get the same test data every time?+

Enter any text in the seed field. The same seed with the same settings always produces identical rows, which makes automated tests and screenshots reproducible.

Are the addresses valid US addresses?+

They look realistic — real cities with the correct state and a matching ZIP prefix — but street numbers and names are random, so they will not pass address verification services. Use them only for testing.

Related tools