Mock JSON Data Generator

Generate an array of realistic mock user records as JSON, for testing and prototyping.

Mock JSONGenerated
[
  {
    "id": 1,
    "name": "Priya Larsen",
    "email": "priya.larsen@example.com",
    "age": 64,
    "city": "Cusco",
    "active": true,
    "balance": 4030.92,
    "createdAt": "2026-04-29T06:44:31.979Z"
  },
  {
    "id": 2,
    "name": "Kwame Delacroix",
    "email": "kwame.delacroix@example.com",
    "age": 50,
    "city": "Gdańsk",
    "active": true,
    "balance": 4256.18,
    "createdAt": "2025-05-09T06:44:31.980Z"
  },
  {
    "id": 3,
    "name": "Aarav Mensah",
    "email": "aarav.mensah@example.com",
    "age": 54,
    "city": "Gdańsk",
    "active": true,
    "balance": 1638.02,
    "createdAt": "2024-08-04T06:44:31.980Z"
  },
  {
    "id": 4,
    "name": "Emeka Castellanos",
    "email": "emeka.castellanos@example.com",
    "age": 61,
    "city": "Bergen",
    "active": false,
    "balance": 9364.01,
    "createdAt": "2026-07-29T06:44:31.980Z"
  },
  {
    "id": 5,
    "name": "Kwame Delacroix",
    "email": "kwame.delacroix@example.com",
    "age": 33,
    "city": "Pune",
    "active": false,
    "balance": 6406.18,
    "createdAt": "2026-01-22T06:44:31.980Z"
  }
]
Runs locally in your browser

About the Mock JSON Data Generator

Building a UI or an API needs test data that looks real. This generator produces an array of user records as formatted JSON, each with an id, a plausible name drawn from a diverse international set, a matching email, an age, a city, an active flag, a balance and an ISO creation date. The names avoid the tired "John Doe" and "Acme" placeholders, so screenshots and demos look credible.

Fields are internally consistent rather than independently random. The email is derived from the generated name at example.com, ages run from 18 to 67, balances carry two decimal places, and every createdAt is a genuine ISO 8601 instant within the last three years, so date parsing and currency formatting get a real workout. Cities include Valparaiso and Gdansk with their proper accents, which is a quick way to find out whether your pipeline mangles non-ASCII text. The gotcha to know about: names are drawn with replacement, so in a large batch two records can share a name and therefore an identical email address. Only the sequential id is guaranteed unique, so do not build a uniqueness test on the email column without checking first.

Generate anywhere from one record to a thousand. The output is standard JSON ready to paste into a fixture, a mock server or a frontend. Save the generated batch to a file rather than regenerating it on every test run, or an assertion on a specific value will drift out from under you. For placeholder prose use the Lorem Ipsum Generator; for spreadsheet-shaped sample data, Random CSV; for values matching a pattern of your own, the Regex Data Generator.

How to use

  1. Set how many records to generate.
  2. Copy or download the JSON array.
  3. Drop it into your fixtures or mock API.

Common questions

Is the data realistic?
Yes. Names are drawn from a diverse set and fields are internally consistent (email matches name), avoiding obvious placeholders.
Can I customise the fields?
Not in this tool; it produces a fixed user-like schema. Edit the JSON afterwards to add or remove fields.
How many records can I generate?
Up to 1000 at a time.