Realistic test data generator — CSV, JSON & SQL

Build a schema from 93 field types and export up to 100,000 rows. Private, reproducible and free — no signup required.

CSVJSONSQL XMLNDJSON seeded & reproducible100k rows client-side only

Generated rows stay on this device. Aggregate visit analytics are separate and never include generated data. Privacy details

Start generating data

1 · Design your schema

Define each column, choose how its values are generated, then fine-tune the options.

Users template

0 fields
Saved schemas
Named schemas

Current schema changes are saved automatically in this browser.

Quick start templates Load a ready-made schema

Choose a starting point, then adjust any field.

2 · Generate & export

More export actions

← scroll sideways for more columns →

← scroll sideways for more columns →

Why Fun Data Playground?

Fun Data Playground is a free synthetic test data generator that runs entirely in the browser. You describe a table as a list of fields — each one drawn from 93 field types such as names, emails, addresses, dates, UUIDs and prices — and it produces up to 100,000 rows of fictional but realistic data, downloadable as CSV, TSV, JSON, NDJSON, SQL or XML. There is no account and no upload step: the rows are computed on your own machine and never sent anywhere. Give it a seed and the same schema returns byte-identical data every time, which is what makes the output usable as a committed test fixture rather than a one-off sample.

93 realistic field types

Names, emails, phone numbers, street addresses, companies, products, prices, IPs, UUIDs, dates and more — organized into groups. See the full field type reference.

Seven export formats

CSV, TSV and Excel (.xlsx) for spreadsheets, JSON and NDJSON for APIs and pipelines, SQL inserts (with CREATE TABLE) for databases, and XML for legacy systems.

Reproducible with a seed

Type any seed string and every run produces byte-identical data. Share the seed with your team or pin it in CI for stable, repeatable test fixtures.

Private by construction

Generation is 100% client-side JavaScript — generated rows never touch a server. Your schema lives in your browser's localStorage, or optionally syncs to your account if you sign in.

Nullable columns & patterns

Give any field a blank percentage to simulate missing data, or build custom formats with pattern fields (# digit, ? A–Z, ~ a–z) and custom value lists.

Templates to start fast

One click loads ready-made schemas: users, e-commerce orders, employees, IoT sensor readings or bank transactions — then tweak from there.

Built for real test workflows

Use practical patterns for database seeding, mock APIs, QA automation and spreadsheet samples.

Documented and test-safe

Reserved domains and network ranges keep synthetic values away from real recipients. Read the generation, privacy and safety methodology.

How it works

  1. Design a schema. Add fields, name them, pick a type and fine-tune options like min/max, date ranges or custom value lists.
  2. Choose rows, format and seed. Anything from 1 to 100,000 rows; leave the seed empty for fresh random data or set one for reproducible output.
  3. Download or copy. Preview updates live as you edit. Export the full dataset as a file or copy it straight to the clipboard — or share your whole schema as a link.

Need a mock backend to serve this data? That's what our sibling Fun API Playground is for. Practicing UI automation instead? Head to Fun UI Playground. Or choose a complete workflow from our synthetic test-data use cases.

Every field lives in the builder above, but some come with a page of their own explaining what they produce, where the output is safe to use and what it deliberately does not do.

FAQ

Where does my data go?

The generator is 100% client-side, so generated rows never leave your machine. Your schema is saved to your own browser's localStorage by default; signing in (optional) syncs your schemas, datasets, history and settings to your account instead.

Can I reproduce the exact same dataset twice?

Yes. Keep the same engine and reference-data version, schema, options and seed, with explicit date bounds. Export templates with fixed dates first. Save the downloaded file when exact bytes must survive future engine changes.

Which export formats are supported?

CSV, TSV, JSON (array), NDJSON (one object per line), SQL INSERT statements with optional CREATE TABLE, XML, and a real .xlsx workbook via its own download button.

How many rows can I generate?

Up to 100,000 rows per download. Because everything runs locally, large exports depend only on your machine — there is no server-side cap below that.

Are the credit card numbers and IBANs real?

No. Card numbers are official payment-gateway test PANs, and IBANs are country-length-shaped but fake — they're for form validation and UI testing only.

Last updated

Practical workflows and next steps

Sign in

Optional — an account syncs your schemas, datasets, history and settings across devices.