Skip to content

Loading the editor only when it is ready

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
  • Copy, download, regenerate: One-click actions for your workflow

Use Cases

  • API development: Seed your API with realistic test data matching your schema
  • UI prototyping: Populate tables, lists, and forms with lifelike data
  • Database seeding: Generate large JSON files for database seed scripts
  • Load testing: Create bulk test data with deterministic repeatability
  • Demo environments: Build convincing demo data for presentations

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
  • null or "" values are inferred from the property key name (e.g., cityfaker.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 Trigger generation (or press Ctrl+Enter / Cmd+Enter)

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 (zh_CN), Italian (it), Portuguese (pt_BR), 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), Hindi (hi), Hungarian (hu), Romanian (ro), Slovak (sk), Danish (da), Norwegian (no).

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.