How to Generate Fake Test Data (JSON, CSV, SQL)

Build realistic mock data for testing and demos, then export it as JSON, CSV or a SQL insert script. A practical walkthrough with repeatable seeds.

Updated 4 min read By CodingEagles
Free tool Fake Data Generator Build mock datasets and export them as JSON, CSV or SQL. Open tool

Good test data looks real without being real. You want names, emails, dates and IDs that behave like production values so your UI, queries and validation get a proper workout, but you don’t want to type a hundred rows by hand or wire up a script for a one-off task.

The fake data generator builds a dataset to your schema and exports it as JSON, CSV or SQL, all in your browser.

TL;DR: Add a field per column, pick a type for each, set how many rows you need, then export. Keep the seed fixed for repeatable fixtures.

Design the schema first

Start by listing the columns your table or object actually has. For each one, add a field, give it the real column name (an email field should be called email, not field_3), and pick the type that matches: full name, email, integer, date, UUID, and so on. Reorder fields with the arrows so the output matches your column order.

A common starter set for a user table is an id, a full name, an email, and a signup date. From there you add whatever your schema needs.

Pick the right field types

Matching the type to the column is what makes the data useful:

  • Email and username are derived from a name, so they read naturally.
  • Date and Datetime stay inside a sensible range, which avoids the year-1970 noise you get from raw random numbers.
  • Integer and Decimal suit prices, quantities and scores.
  • UUID gives you valid v4 identifiers for primary keys.
  • Sentence and Paragraph fill in description and bio columns.

Keep it repeatable with the seed

The seed is the difference between throwaway data and a stable fixture. Because generation is deterministic, the same seed and schema reproduce the same rows on every run. That matters for tests: a snapshot test or a screenshot comparison breaks if the data shifts underneath it. Lock the seed for fixtures, and hit reseed only when you want a different batch.

Export in the format you need

  • JSON drops straight into a mock API, a fixture file or a seed script for most frameworks.
  • CSV opens in a spreadsheet and imports into nearly every database tool.
  • SQL gives you a ready-to-run INSERT for the table name you set.

Everything is generated locally, so even a thousand rows come back instantly and nothing is uploaded.

Build a dataset now

Open the fake data generator, sketch your schema, set the row count, and export. When you want to inspect a nested JSON result, the JSON visualizer shows its shape at a glance.

Frequently asked questions

Is generated mock data safe to use in a public demo?
Yes. The names, emails and addresses are assembled from generic word lists, so they don't belong to real people. Avoid using them where a value must be globally unique across systems you don't control, such as a payment reference.
How do I get the same data every time?
Keep the seed the same. The generator is deterministic, so the same seed plus the same schema always produces identical rows. Change the seed when you want a fresh set.
Can I import the result straight into a database?
Yes. Choose the SQL format, set your table name, and you get an INSERT statement you can run directly. For ORMs and fixtures, the JSON output is usually the easier fit.

Ready to try it?

Build mock datasets and export them as JSON, CSV or SQL. Free, in-browser, and 100% private — your data never leaves your device.

Open the Fake Data Generator