What is the JSON Mock Data Generator?
The JSON Mock Data Generator is a browser-based developer tool that generates realistic fake JSON data from a JSON Schema or a template object with type hints. Powered by Faker.js, it creates production-quality test data in milliseconds — no backend, no API keys, no uploads.
Features
- Two input modes: JSON Schema (Draft 07+) or Template / Hint mode with
{{faker.*}}directives - Smart type inference: Empty or null values are automatically filled based on property key names
- Deterministic seeding: Same input + seed = identical output, perfect for reproducible test suites
- Multi-locale support: Generate localized data in 20+ locales (English, German, Spanish, French, Japanese, Chinese, and more)
- Bulk generation: Generate hundreds or thousands of records with chunked processing to keep the UI responsive
- Interactive tree view: Collapsible JSON tree explorer alongside a raw JSON view with line numbers
- Seven rule types: Mix and match Faker, Constant, Sequence (IDs/counters), Weighted (e.g. 80% active / 20% paused), Reference (cross-field values), Expression, and Function rules to shape exactly the data you need
- Live split-view preview: Editing your input regenerates the output in real time — no manual generate loop, just instant feedback as you type
- Copy, download, and export: One-click copy, plus export to JSON, CSV, XML, TypeScript, or SQL
Use Cases
- API development: Seed your API with realistic test data matching your schema — pair with our REST API Client for end-to-end testing
- UI prototyping: Populate tables, lists, and forms with lifelike data — then format the output for readability
- Database seeding: Generate large JSON files for database seed scripts — export as CSV or YAML for your database tools
- Load testing: Create bulk test data with deterministic repeatability for consistent benchmarks
- Demo environments: Build convincing demo data for presentations — then transform or sort your data as needed
How to Use the JSON Mock Data Generator
Schema Mode
Paste a standard JSON Schema (Draft 07+). The tool maps each type and format to the appropriate Faker.js generator:
{
"type": "object",
"properties": {
"email": { "type": "string", "format": "email" },
"age": { "type": "integer", "minimum": 18, "maximum": 99 }
},
"required": ["email", "age"]
}The engine respects minimum / maximum for numbers, minLength / maxLength for strings, enum for fixed sets, and required for optional field handling.
Template / Hint Mode
Use a plain JSON object with optional Faker.js hints:
{
"name": "{{faker.person.fullName}}",
"email": null,
"age": "{{faker.number.int 80}}"
}- Values wrapped in
{{...}}are evaluated as Faker.js method calls nullor""values are inferred from the property key name (e.g.,city→faker.location.city())- All other literal values are preserved as-is
Generation Controls
| Control | Description |
|---|---|
| Count | Number of items to generate (1 = single object, >1 = array) |
| Locale | Regional locale for localized data |
| Seed | Optional deterministic seed for reproducible output |
| Generate | Output updates live as you edit; press Ctrl+Enter / Cmd+Enter to refresh on demand |
Rule Types
Beyond basic Faker hints, the generator supports seven composable rule types so you can build precise test data:
- Faker — realistic values via Faker.js (names, emails, addresses, and more)
- Constant — fixed values that never change between records
- Sequence — auto-incrementing IDs and counters for primary keys and ordering
- Weighted — probability distributions, e.g. 80%
active/ 20%paused - Reference — pull values from other generated fields to keep records consistent
- Expression — computed values using JSONata expressions
- Function — custom generator logic for anything else
Choose a rule per field in the visual editor, or express it in your schema/template, and the live preview reflects the result immediately.
Frequently Asked Questions
Is my data sent to a server?
No. All generation happens entirely in your browser using Faker.js. Your data never leaves your computer.
Can I reproduce the same output?
Yes. Set a seed value and the same input + seed + locale will always produce identical output.
What locales are supported?
English (en), German (de), Spanish (es), French (fr), Japanese (ja), Chinese Simplified (zh_CN), Chinese Traditional (zh_TW), Italian (it), Portuguese (pt_BR), Portuguese Portugal (pt_PT), Russian (ru), Korean (ko), Dutch (nl), Polish (pl), Swedish (sv), Ukrainian (uk), Arabic (ar), Turkish (tr), Thai (th), Vietnamese (vi), Czech (cs), Finnish (fi), Hebrew (he), Hungarian (hu), Romanian (ro), Slovak (sk), Danish (da), Norwegian (no), Greek (el), Indonesian (id), Malay (ms), Nepali (ne), Persian/Farsi (fa), Serbian (sr), Zulu (zu).
How many items can I generate?
You can generate up to 10,000 items. For large counts >500, the tool uses chunked processing to prevent UI freezing.
What JSON Schema features are supported?
Draft 07 features including: object, array, string, integer, number, boolean, enum, const, format (email, uuid, date-time, uri, ipv4, ipv6), minimum / maximum, minLength / maxLength, required, anyOf, oneOf.
Related Tools
- JSON Schema GUI Builder — Build schemas visually with a drag-and-drop interface
- JSON Formatter — Pretty-print and validate your generated mock data
- JSON to CSV — Convert your mock JSON arrays to CSV format
- JSON to YAML — Convert mock data to YAML for configuration files
- JSON Transform — Apply transformations to your generated data
- JSON Sorter — Sort JSON keys and arrays alphabetically
- REST API Client — Test your APIs with generated mock payloads
- JSON Schema to TypeScript — Generate TypeScript types from your schemas