Two ways to describe your data
- From a sample: paste one real-looking record (or an array of them). Every field keeps its type and shape: nested objects stay nested, arrays get a few items, dates stay dates and codes like
ORD-10231keep their pattern. - From a JSON Schema: the generator follows
type,enum,minimum/maximum,minLength/maxLength,format(email, uri, date, date-time, uuid, ipv4…),required,minItems/maxItems,$refandoneOf/anyOf/allOf. Optional fields are sometimes left out, as in real data. No schema yet? Create one from a sample with the JSON Schema generator.
Realistic, consistent records
Each record is built around one made-up person and company, so firstName, lastName, email and username agree, and city matches country and the phone number's format. Names come from many cultures. Values that must never be real are drawn from reserved ranges: example.com email domains, fictional 555-01xx phone numbers in North America, and card numbers from payment providers' published test lists.
Output formats
- JSON array for mock APIs, fixtures and front-end prototypes.
- NDJSON (one JSON object per line) for log pipelines, BigQuery and Elasticsearch bulk loads.
- CSV for spreadsheets and BI tools. Nested fields become columns such as
address.city. - SQL INSERT statements to seed a development database, using the table name you enter.
Repeatable test data
Enter any seed, such as demo, and you get exactly the same records every time, on any computer. That makes screenshots, demos and snapshot tests stable. Leave it empty for fresh data on every click.
Frequently asked questions
Is the generated data real?
No. Every value is invented. Names are combined at random from lists of common first and last names, and emails, phone numbers and card numbers use ranges reserved for examples and testing.
How many records can I generate?
Up to 1,000 at a time. Generate again with a different seed for more batches.
How does it choose values for my fields?
First from the value's own format in your sample (a date stays a date, a UUID stays a UUID), then from the field name (price, email, city, status, createdAt and about 60 others), and finally from the type. Unknown text fields get short placeholder words.
Can I use it with Postman, json-server or Mockoon?
Yes. Download the JSON array and load it as the response body or data file. For json-server, set the root name to the resource name, for example users.
Is my schema or sample uploaded?
No. Everything is generated in your browser.