Data

Random JSON Generator

Details

How to use Random JSON Generator

What the tool does, how to run it, and what to expect from the result.

How to generate random JSON test data

Define the shape you want as a list of field names and types, set how many objects you need, and the generator builds an array of flat objects with pretty-printed 2-space indentation.

Everything runs in your browser with Math.random(), so it is instant, private, and unsuitable as a source of real identifiers.

  • Edit the default schema (id, name, email, age, active) or add fields with the add button.
  • Give each field a name and pick one of the 19 types from the dropdown.
  • Set the record count, up to a maximum of 1,000.
  • Press Generate; the output is a pretty-printed JSON array with native numbers and booleans.
  • Copy the result, and de-duplicate afterwards if the target table has a unique constraint.
Tips

Getting a better result out of Random JSON Generator

Specific settings and thresholds, not general advice.

  • There are 19 field types (uuid, first or last or full name, email, username, integer, float, boolean, ISO date, city, country, company, phone, URL, IPv4, hex color, word, sentence), and the default schema of id, name, email, age, and active is what most people want for a quick API stub.
  • Types are preserved in the JSON, not stringified: an integer field emits 42, a boolean emits true, and only the text types are quoted. That means you can drop the output straight into a typed fixture without a cleanup pass.
  • The row count is clamped to 1,000. If you need a 100,000-row fixture, generate 1,000 and multiply it in code, because building a bigger array as one pretty-printed string in a textarea is the wrong tool for the job.
  • Randomness comes from Math.random(), which is not cryptographically secure and is not seeded. You cannot reproduce a previous batch, and you must not use these UUIDs or values as real identifiers or secrets.
  • There is no uniqueness guarantee. With a small name pool, duplicate emails and duplicate names will appear in a 50-row batch, so if you are seeding a table with a unique constraint on email, expect a collision and de-duplicate first.
Limits

What Random JSON Generator does not do

The honest boundary, so you do not lose time finding it yourself.

  • Flat objects only; no nested objects, no arrays inside a record, and no relations between fields.
  • Maximum 1,000 records per generation.
  • No seed, so a batch cannot be reproduced.
  • No uniqueness constraint on any field, and no locale or country-specific data.
Reference

Terms used on this page

Short, plain-language definitions for the formats and settings above.

At a glance

Who Random JSON Generator is for

A quick way to understand who this helps, what it solves, and where it connects next.

Best fit

Developers generating mock JSON test data.

Ideal for

Using the random json generator without installing anything or signing up.

FAQ

Common questions

Short answers for the questions people usually have before trying a utility like this.

Can I generate nested JSON?

No. The schema is a flat list of field names and types, so every record is a flat object of primitives. If you need nesting, generate the flat rows here and reshape them in a few lines of code, or hand-write the structure and use this only for the leaf values.

Are the generated UUIDs safe to use as real IDs?

For test data, yes. For anything real, no. They are built from Math.random(), which is not a cryptographically secure source and carries no collision guarantee across batches. Use crypto.randomUUID() in your application code for identifiers that matter.

Why do I keep getting the same names?

Because the values are drawn from fixed word banks: 20 first names, 16 last names, and a similar-sized pool of cities and companies. Over 50 rows you will see repeats, and over 200 you will see plenty. That is fine for a UI stub and wrong for load-testing a unique index.

Does the JSON keep numbers as numbers?

Yes. The integer, float, and boolean types are emitted as native JSON values, not as quoted strings, so parsing the output gives you real numbers and booleans. Only the text types (names, emails, sentences, colors) are quoted.

Can I get the same data set twice?

No, there is no seed input. Every press of Generate produces a fresh batch. If you need a stable fixture, generate once and save the output to a file rather than regenerating it in a test that expects consistent values.

Recommendations

You Might Also Like

Nearby tools from the catalog that fit the same job or workflow.

Cleanor app

Do it all on your device

Cleanor puts these tools in one app: compress and convert images, video, and audio, work with PDFs, and scan text right on your device. Plus free up storage and clear inbox clutter with Email Cleaner. Start with a free trial.

  • iPhone
  • Android
  • Macsoon
  • Windowssoon