JSON
Mock JSON Generator
Generate fake JSON data from a template: placeholder values like {{name}} or {{email}}, and arrays repeated via "key|N".
Placeholders: {{uuid}} {{name}} {{firstName}} {{lastName}} {{email}} {{phone}} {{number(1,100)}} {{float(0,1)}} {{boolean}} {{date(2020,2024)}} {{datetime}} {{word}} {{sentence}} {{paragraph}} {{city}} {{country}} {{company}} {{color}} {{index}} · array: "key|N": [template] — repeat N times.
Instead of writing test data by hand, this tool generates realistic fake JSON from a template with placeholders like {{name}}, {{email}}, or {{uuid}}. An array with a given number of items is built with the "key|N" syntax.
How to use it
- Describe the shape you want, dropping placeholders in where real values would go.
- For an array of several identically-shaped items, use "key|N", where N is how many you need.
- Each generation produces fresh random values — run it again to get a different data set from the same template.
Common uses
- Filling a local database or UI mockup with realistic test data without hand-writing fixtures.
- Creating a sample API response for documentation or frontend work before the backend is ready.
- Quickly checking how a component or table looks with a large number of data rows.
Things to keep in mind
Each generation is random by design — save the generated JSON separately if you need to see the exact same result again, rather than relying on regenerating it.
The generated data is realistic in form (an email looks like an email) but has no connection whatsoever to real people or records.
Article about this tool: Mock JSON Generator: why fake data is useful
Frequently asked questions
What is a mock data generator useful for?
Quickly building test fixtures or sample API responses without manually inventing values — handy for frontend development, tests, or demos when real data is not yet available.
How do I generate an array with multiple records?
Use the "key|N": [template] syntax — the template inside the array is repeated N times, and each repetition generates fresh random values for the placeholders.
Can placeholders take parameters?
Yes, placeholders like {{number(1,100)}} or {{date(2020,2024)}} accept a range in parentheses — generation happens entirely in your browser via JavaScript, with no server involved.
Does the mock data include "awkward" edge-case values?
The generator deliberately mixes in edge-case values alongside ordinary ones — long strings, empty fields, numbers near the limits of their range. Those are exactly the values most likely to expose UI or logic bugs that stay hidden with "nice" sample data like "test123".
Can I reproduce the same set of mock data again?
Each generation is random by design, so you see fresh variations every time. If you need the exact same result again, save the generated JSON separately instead of regenerating it.