Mock Data Generator — Fake Test Data as JSON, CSV & SQL

Create up to 10,000 rows of realistic test data — users, products, orders, addresses, companies or nested API records — or build your own schema. Export as JSON, JSON Lines, CSV, SQL INSERT or TypeScript. Everything is synthetic and generated in your browser.

Runs in your browser

Schema

Synthetic data — not real people. Emails use reserved example domains (example.com, example.org, example.net) and phone numbers come from ranges reserved for fiction, so nothing here can reach a real person.

Preview

Output

Your data never leaves your computer. All processing happens 100% locally in your browser.

How to use the Mock Data Generator

  1. Pick a preset — Users, Products, Orders, Addresses, Companies, Blog posts, API records or Events — or start from scratch.
  2. Edit the schema: rename fields, change types, set ranges (e.g. 18-80 for an integer, a date range or an enum list), or add nested objects and arrays.
  3. Choose the number of rows (up to 10,000), a locale for names and addresses, and a seed — the same seed always produces the same data.
  4. Pick JSON, JSON Lines, CSV, SQL INSERT or TypeScript, then copy or download the file.

Why use generated test data?

Real customer data doesn’t belong in development, staging, demos or screenshots — it’s a privacy risk and, in the EU, often a GDPR problem. Generated data looks realistic enough to test layouts, sorting, pagination, CMS imports and API clients, and you can create exactly the edge cases you need: long names, accented characters, empty values, thousands of rows.

Field types

GroupTypesArgument
Peoplefirst, last & full name, email, username, phone, job title, avatar—
Placesstreet, city, postcode, countryLocale decides the format
Commercecompany, product, price, currency, SKU, categoryPrice: 5-500
Numbersinteger, float, boolean, incrementing id1-100, 0-1 · boolean: % true
Timedate, ISO timestamp, Unix timestamp2024-01-01..2026-12-31
IDs & webUUID v4, nanoid, hex color, URL, IPv4nanoid: length
Textwords, sentence, paragraphNumber of words
Structureenum, nested object, array of objectsEnum: draft,published · array: 1-3 items

Privacy by design

All values are synthetic. Email addresses always use the domains example.com, example.org and example.net, which RFC 2606 reserves for documentation, so a test that accidentally sends mail can’t reach anyone. Phone numbers use ranges set aside for TV and film — 555-01xx in North America and Ofcom’s 07700 900xxx drama range in the UK — or are clearly marked fictional patterns elsewhere. Avatars are inline SVG initials, so nothing is loaded from third-party services.

Using the output

  • JSON — seed a mock API, a JSON server or a Webflow CMS import after converting with the JSON to CSV converter.
  • CSV — import into spreadsheets, Airtable or the Webflow CMS (nested values are flattened to JSON strings).
  • SQL INSERT — fill a local PostgreSQL, MySQL, SQLite or SQL Server table; values are escaped and quoted for the dialect.
  • TypeScript — a typed fixture array for unit tests and Storybook. Generate the matching types with JSON to Types.

Need IDs only? Use the UUID Generator. For placeholder copy, try the Lorem Ipsum Generator.

Tools that pair well with the Mock Data Generator

  • JSON to YAML — Paste JSON and get clean YAML for Kubernetes manifests, Docker Compose, GitHub Actions or any config file.
  • YAML to JSON — Paste YAML — a Compose file, Kubernetes manifest or CI config — and get formatted JSON.
  • JSON to Markdown Table — Turn API responses or LLM-generated JSON arrays into a clean, aligned Markdown table for READMEs, docs and pull requests.

Frequently asked questions

Is the generated data real?
No. Every name, address, email and phone number is generated from built-in word lists and random numbers. Emails use reserved example domains and phone numbers use fictional ranges, so they can’t belong to real people.
Can I get the same data again?
Yes. The generator uses a seeded random number generator: the same seed, schema, locale and row count always produce identical output — handy for snapshot tests.
How do nested objects work in CSV and SQL?
JSON and TypeScript keep the nesting. CSV and SQL can’t store nested structures in one cell, so nested objects and arrays are written as JSON strings.
How many rows can I generate?
Up to 10,000 rows per run. The preview shows the first 50; copy or download for the full set.
Is my schema sent to a server?
No. Generation runs entirely in your browser. Your last schema is saved in local storage so it’s there when you come back.

Related tools