Skip to content

Fake data generator

Runs on your device

Generate realistic test data from your own schema, as CSV, JSON or SQL inserts, repeatable from a seed.

Fields
Format

The same seed always gives the same data, so tests and demos are repeatable. Emails use example domains and phone numbers the fictional 555-01xx range, so no generated contact belongs to a real person.

How to use Fake data generator

  1. Define the fields: a name and a type for each, such as full name, email, whole number or one of a list.
  2. Set the number of rows and a seed, and pick CSV, JSON or SQL.
  3. Select Generate, then copy or download the data.

Test data shaped like yours

Developing, testing and demoing software all need data, and using real customer records for it is both risky and, under privacy law, often not allowed. This generator makes realistic data to your own schema instead: list the columns you need, choose a type for each, and get as many rows as you like as CSV for a spreadsheet, JSON for an API mock or fixtures, or SQL INSERT statements to load straight into a database.

Types cover the usual needs: row numbers, UUIDs, first, last and full names, emails, phone numbers, companies, job titles, cities and countries, whole and decimal numbers within a range, true or false, dates and date-times, a word or sentence, URLs, IP addresses, and one of a list you provide, such as plan names or order statuses. Each field can also leave a share of rows empty, to test how your code handles missing values.

Coherent and safe

Each row describes one consistent person: the email is made from the same first and last name as the name column, and the city matches the country. Names come from a deliberately international mix, which helps catch software that assumes every name is short, English and unaccented.

Generated contacts can never reach anyone. Emails use the example domains reserved for documentation, which never deliver mail, and phone numbers use the 555-0100 to 555-0199 range set aside for fiction. That makes the data safe to use in staging systems that really send messages.

Repeatable

Generation is driven by a seed: the same seed and schema always give exactly the same rows, so fixtures, screenshots and bug reproductions stay stable over time. Shuffle the seed for a fresh set. SQL output quotes identifiers and escapes values properly, writes NULL for empty values, and is split into statements of 500 rows so large inserts stay within common limits.

Private

Your schema and the generated data stay in your browser; nothing is uploaded, and there's no account or row limit beyond 100,000 per run.

Questions

Can generated emails or phone numbers reach real people?
No. Emails use example.com, example.org and example.net, which are reserved for documentation and never deliver mail, and phone numbers use the 555-0100 to 555-0199 range reserved for fiction in North America.
What is the seed for?
The same seed and schema always produce exactly the same rows, so a test fixture, a demo database or a bug report can be regenerated identically. Change the seed for a different set.
How much data can it make?
Up to 100,000 rows at a time, generated in your browser. SQL output is split into INSERT statements of 500 rows each, which most databases accept without raising their limits.