JSON & CSV test data generator

Choose fields, preview typed test records, and export JSON or CSV. Generate locally with a repeatable seed.

TempGeneratorGetting things ready…

Generated in this browser. No account, uploads or saved history.

Your schema

Leave blank for a new seed. Reuse the displayed seed and schema to repeat the same records.

1–5000 rows · 1–16 fields · preview up to 20 rows

Your schema

Use unique names: letters, numbers and underscores; start with a letter or underscore. Up to 40 characters.

Loading editor…

Record preview

Choose your fields, then generate a dataset.

CSV quotes every cell. Unsafe text prefixes receive an apostrophe; JSON keeps the original values. Check spreadsheet import settings; saving and reopening may change protection.

Build a repeatable fixture

  1. Name each field and choose its type. Add or remove fields to match your import.
  2. Choose a row count. Enter a seed if you need a reproducible test.
  3. Generate, inspect the first 20 records, then copy or download every row.

Fixtures for forms, tables and imports

Use explicit fixture records to develop a table, exercise an import parser or prepare an API payload. A label and email share the same row number. The example below shows the shape of the default schema, not a live customer record.

[{"id":1,"label":"Fixture 0001","email":"fixture.1@example.test","active":true}]

IDs start at 1. Integers range from 0 to 10000, decimals from 0 to 1000 with at most two decimal places, and dates cover 2026 in YYYY-MM-DD format. Status codes are draft, active and archived. Unicode notes cycle through accents, Arabic, Japanese, quotes and line breaks.

Choose the right export

JSON preserves numbers and booleans in an array of objects. CSV is a flat table with headers, commas, doubled quotes and CRLF record endings. CSV downloads include a UTF-8 BOM for spreadsheet import; copied CSV has no BOM. Spreadsheet software decides how to interpret types.

Keep the seed, field names, types and generator version fixture-v1 with your test. Reordering fields preserves their values; changing a field name or type changes that field’s sequence. Dates never depend on the current clock. The seed is for repeatability, not security.

Scope and limits

Up to 5000 rows and 16 flat fields. Generation uses a worker where available, otherwise small yielding batches. Cancel stops unfinished work. There are no nested schemas, custom distributions, database writes or load-test guarantees. Output stays in memory and disappears on refresh. No postal addresses, real identities, bank accounts or payment identifiers are generated.

Frequently asked questions

Can these emails receive messages?

No. fixture.1@example.test uses the reserved .test domain for fixtures. Use the temporary email tool separately when a test needs real mail reception, subject to that tool’s availability.

Will the same seed always produce the same file?

The same seed, row count, field order, names, types and fixture-v1 generator produce the same content across page languages. Save the file for long-lived regression tests; a future generator version may change it.

Is CSV identical to JSON?

No. JSON preserves scalar types; CSV contains text cells. CSV protection can add an apostrophe to unsafe text prefixes. Spreadsheet save and reopen behavior varies, so use JSON when exact values and types matter.