Fake Data Generator

Generate rows of realistic but synthetic test records — names, emails, phones, addresses and more — as CSV or JSON. Choose columns, row count, and a seed to reproduce results. Runs entirely in your browser, no server, no sign-up.

Generated data

About this tool

The fake data generator produces rows of realistic-looking but entirely synthetic test records — perfect for seeding a database, populating a UI mockup, load-testing an import pipeline, or building a demo without exposing real people's information. None of the output describes a real person; the names, emails, and addresses are randomly assembled from placeholder pools.

What you can generate

Pick any combination of these columns (or choose all):

Leave the columns box blank for a sensible default set (full_name, email, phone, street, city, state, zip).

CSV, JSON, SQL, or XML

Reproducible with a seed

Set the seed to any non-zero number and you'll get the exact same dataset every time — handy for deterministic tests and code review. Leave it at 0 to get fresh data on each run.

Everything runs locally in your browser via WebAssembly — your inputs never leave your device.

FAQ

How many rows can I generate at once?

Between 1 and 1000 rows per run (the default is 10). Asking for more than 1000 returns an error rather than a partial dataset — for bigger fixtures, run the tool a few times with different seeds, or script it via the gizza CLI.

Could the generated emails or credit-card numbers belong to real people?

No. Emails are only ever placed on reserved fake domains like example.com and test.org, phone numbers are formatted placeholders, and the credit_card column produces a 16-digit number that passes the Luhn check but is assembled from random digits — it validates in forms without being a real account.

How do I regenerate the exact same dataset?

Set the seed to any non-zero number: the same seed + columns + row count always produces byte-identical output, which makes test fixtures reviewable and diffs stable. Seed 0 (the default) draws fresh random data every run.

What happens if I leave the columns box blank or misspell a column?

Blank gives you a sensible default set (full_name, email, phone, street, city, state, zip). A column name that isn't in the supported list produces an error listing what went wrong, instead of silently skipping the field — use all to get every available column.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool fake-data-generator 'count=10'

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/fake-data-generator/?count=10&format=csv&fields=full_name%2C%20email%2C%20phone%2C%20city&seed=0&header=true&table=people

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.