Fake Data Generator

Build realistic mock test data from your own custom fields and export it instantly as a JSON array, CSV, or SQL INSERT statements right in your browser.

Loading tool…

Fake Data GeneratorDefine the columns you need — names, emails, phone numbers, UUIDs, dates and more — choose how many rows to create, and instantly get realistic fake data as JSON, CSV, or SQL. Click Regenerate for a fresh batch any time. Everything is generated locally in your browser, so your schema and the data never leave your device.

What is Fake Data Generator?

A free fake data generator that produces realistic mock (dummy / sample / test) records entirely in your browser. Developers, QA engineers, and database designers use it to seed databases, populate UI prototypes, stress-test forms, and build API fixtures without writing a seed script. Add fields, give each a column name and a data type — UUID, full name, first name, email, phone, city, country, date, integer, boolean, sentence, or company — set the row count, pick an output format, and copy the result. Click Regenerate for a brand-new batch with the same shape. The output updates automatically as you edit the fields, count, or format.

How to use Fake Data Generator

  1. Add a field for each column you need with the Add field button, then give it a name and pick a data type (UUID, full name, email, phone, date, integer, boolean and more).
  2. Set the Rows count for how many records to generate (1 to 1000).
  3. Choose the output format with the segmented control: JSON array, CSV, or SQL INSERT statements.
  4. Click Regenerate to roll a fresh batch of values with the same fields and count whenever you want different data.
  5. Click Copy to put the generated data on your clipboard, ready to paste into a seed file, spreadsheet, or query.

Examples

JSON fixtures for an API mock

Fields = id (UUID), name (full name), email (email), age (integer); Rows = 3; Format = JSON. The output is a pretty-printed JSON array of three objects, each with id, name, email, and age keys. Click Regenerate for a different set with the same shape.

CSV to import into a spreadsheet

Fields = first (first name), city (city), country (country); Rows = 50; Format = CSV. You get a header row followed by 50 comma-separated rows; values containing commas or quotes are quoted and escaped automatically.

SQL seed for a users table

Fields = name (full name), email (email), active (boolean); Rows = 10; Format = SQL. The output is ten INSERT INTO `data` (...) VALUES (...); statements with strings quoted, booleans as TRUE/FALSE, and numbers left bare.

Frequently asked questions

Which data types can each field generate?
Each field can be a UUID, full name, first name, email, phone number, city, country, date (YYYY-MM-DD), integer (1-1000), boolean, sentence, or company name. Mix and match as many fields as you need.
What output formats are supported?
Three: a pretty-printed JSON array of objects, CSV with a header row (commas and quotes escaped), and SQL INSERT statements with strings quoted and booleans as TRUE/FALSE. Switch formats from the same generated rows with the segmented control.
Why does the data change every time I click Regenerate?
Regenerate produces a fresh random batch from the same fields, row count, and format. The data also updates automatically whenever you add or remove a field, rename a column, change a type, or adjust the row count or format.
How many rows can I generate at once?
Any whole number from 1 to 1000; values outside that range are clamped to the nearest limit. The cap keeps generation instant — generate one batch and copy it, then generate another if you need more.
Is my data sent to a server?
No. The fields, row count, and generated records are all produced entirely client-side in your browser — there is no upload, no file transfer, and no API call to any server. Nothing ever leaves your device.

Related tools