Skip to content
PithLab

↑↓ to move · Enter to open · Esc to close

Fake Data Generator (Test Data)

Make realistic fake rows for testing and export them as JSON, CSV, SQL or NDJSON.

Fields
Use via API

Generate realistic fake test data (names, emails on example.com, phones, addresses, UUIDs, IPs from documentation ranges…) as JSON, CSV, SQL INSERTs or NDJSON. A seed makes the output reproducible. Send JSON, get JSON back.

POST https://pithlab.com/api/v1/tools/fake-data-generator

curl https://pithlab.com/api/v1/tools/fake-data-generator \
  -H "Authorization: Bearer $PITHLAB_KEY" \
  -H "Content-Type: application/json" \
  -d '{"fields":"full_name,email,city,country","rows":3,"format":"json","seed":"demo"}'

Fields and responseOpenAPI documentGet an API key

About the Fake Data Generator

Generate up to 10,000 rows of fake test data: names, emails, phones, addresses, UUIDs and more. Export as JSON, CSV, SQL INSERT or NDJSON, with an optional seed.

How to use the Fake Data Generator

  1. Tick the fields you want, such as full name, email, city and UUID. Columns always appear in the order listed.
  2. Choose how many rows (up to 10,000) and an output format. For SQL, set the table name; for Integer, set the min and max.
  3. Optionally enter a seed to get the same data every time, then press Generate and copy or download the result.

Examples

Names and emails as NDJSON

Input

Seed: demo; Rows: 2; Fields: full_name, email; Format: ndjson

Output

{"full_name":"Maya Nguyen","email":"[email protected]"}
{"full_name":"Arjun Thomas","email":"[email protected]"}
SQL INSERT statements

Input

Seed: demo; Rows: 2; Fields: city, username; Format: sql; Table: users

Output

INSERT INTO users (city, username) VALUES ('Singapore', 'lwilson04');
INSERT INTO users (city, username) VALUES ('Porto', 'rcohen37');
Random CSV row

Input

Rows: 1; Fields: first_name, phone, ipv4; Format: csv

Output

e.g. first_name,phone,ipv4
Nora,(415) 555-0142,198.51.100.23

Frequently asked questions

Could the data match a real person?

Contact details are designed not to. Emails only use example.com, example.org and example.net, which are reserved for documentation. Phone numbers use 555-0100 to 555-0199, which are set aside for fiction, and IP addresses come from the RFC 5737 documentation ranges. Names and cities are mixed at random, so any match is coincidence.

What does the seed do?

With a seed, the tool uses a small repeatable generator (sfc32), so the same seed, fields and row count always give identical output. That is handy for tests and demos, but it is predictable, so never use seeded output for passwords or tokens. Leave the seed empty for secure random data.

Is the CSV and SQL output safe to import?

CSV follows RFC 4180: values with commas, quotes or line breaks are quoted and quotes are doubled. SQL strings are wrapped in single quotes with embedded quotes doubled, and the table name must be a plain identifier, so the statements cannot break out of their values.

Is my data sent anywhere?

No. Everything is generated in your browser, and nothing is uploaded or stored on a server.