Mock data generator
Generate fake JSON test data: names, emails, phone numbers, dates, IDs, prices and more. Pick the fields and the number of rows, then copy or download. Runs in your browser.
Worked example
Four fields, two rows, with the seed set to demo. Run it with the same fields and seed and you get exactly these rows.
id: ID (1, 2, 3…) name: Full name email: Email active: Boolean rows: 2, seed: demo
[
{
"id": 1,
"name": "Uma Dunn",
"email": "uma.dunn6@example.org",
"active": true
},
{
"id": 2,
"name": "Victor Brooks",
"email": "victor.brooks98@example.com",
"active": false
}
]
Common mistakes
Using real-looking contact details
Made-up emails on real domains can reach real inboxes if a test sends mail. Stick to the example.com family, as this tool does.
Two fields with the same key
Only the last one shows up in each object. The tool warns when a key is used twice.
Testing with tiny data only
Three rows hide paging, sorting and performance problems. Generate a few thousand rows as well.
Forgetting the seed
Without a seed, every run is different, so a failing test may not fail again. Set a seed when you need to reproduce something.
How it works
- 1
Choose your fields
Give each field a key name and a type. Add, remove and reorder fields; number fields take a range and "one of a list" takes your own choices. Your fields are remembered in this browser.
- 2
Set rows and a seed
Pick up to 10,000 rows. Leave the seed empty for new data each time, or type any text to get the same data again whenever you use that seed.
- 3
Copy or download
Get a pretty or minified JSON array, JSON Lines (one object per line) or CSV.
Questions
- Could the emails or phone numbers belong to real people?
- The emails only use example.com, example.org and example.net, domains reserved for examples and documentation. Phone numbers use 555-0100 to 555-0199, a range set aside for fiction in North America. IP addresses come from the ranges reserved for documentation: 192.0.2.x, 198.51.100.x and 203.0.113.x.
- What does the seed do?
- The same seed with the same fields and row count always gives the same data, so tests and screenshots can be repeated. Past dates count back from today, so they shift by a day each day.
- Do the name, email and username match?
- Yes. Within one row, the first name, last name, full name, email and username all come from the same made-up person.
- Is the data random enough for security testing?
- No. It uses a small, fast generator meant for test data, and the UUIDs are shaped like version 4 UUIDs but aren’t cryptographically random. Use the UUID or password generators when that matters.
- Is anything sent to a server?
- No. The data is made in this tab from small built-in word lists.