Back to All Tools

Mock Data Generator

Generate fake names, emails, addresses, dates, JSON, CSV, or SQL INSERTs — perfect for seeding databases and tests.

Runs entirely in your browser — nothing is uploaded

About the Mock Data Generator

The Mock Data Generator builds rows of fake but realistic records so you can fill an empty database, a test suite, or a UI mockup without typing sample data by hand. You pick which fields each record should carry, from a UUID and full name to an email, city, price, boolean, or a lorem paragraph, and set how many rows you want. It solves the tedious problem of inventing plausible test data that actually looks like production data.

Behind the button the tool loads the faker library in your browser and, for each row, calls the matching generator for every field you selected. Ask for age and it returns an integer between 18 and 80; ask for a date and it returns an ISO string. It loops until it has the row count you set, then serializes the result into your chosen format. Nothing is fetched from a server.

It is free, needs no account, and runs entirely on your machine, so the generated records never leave the browser tab. That matters when you are seeding a schema that mirrors real customer fields and would rather not paste anything into a remote service. Output arrives as one block you can copy in a click and drop into a seed script, a fixtures file, or a spreadsheet.

How to use the Mock Data Generator

  1. 1Click the field buttons to toggle which columns each record includes; the highlighted ones (ID, Full name, Email, City, and Age start selected) are the ones that get generated.
  2. 2Set the Rows number input to how many records you want, anywhere from 1 to 1000.
  3. 3Choose an output format by clicking JSON, CSV, or SQL.
  4. 4If you picked SQL, type the target table into the Table name box (it defaults to users).
  5. 5Press Generate to build the rows and see them in the Result area.
  6. 6Click Copy to put the whole output on your clipboard.

What you can use it for

Seed a new database

You just created a users table and need it populated to test queries. Select ID, Full name, Email, City, and Age, choose SQL, set the table name, generate 500 rows, and paste the INSERT statement straight into your database client.

Fill a frontend list

You are building a table or card grid and need it to look full while the API is not ready. Generate 20 JSON records with the exact fields your component reads, then hardcode them as a fixture until the real endpoint lands.

Import into a spreadsheet

You need sample contacts to demo a mail-merge or an import flow. Pick First name, Last name, Email, Company, and Phone, switch to CSV, generate the rows, and paste the result into Google Sheets or Excel.

Load-test a form

You want varied inputs for edge-case checks. Generate a batch with lorem paragraphs, long emails, and boundary ages, then feed the values through your validation to see how fields react.

Frequently asked questions

Does my data get sent anywhere?

No. The faker library loads into your browser the first time you press Generate, and every record is built locally in that tab. There is no upload step and no server call, so the values you generate stay on your machine. You can confirm this by disconnecting from the network and generating rows anyway.

How many rows can I make at once?

The Rows input is capped at 1000 and has a floor of 1. If you type a larger number it is clamped down to 1000, and anything below 1 or non-numeric becomes 1. For a bigger dataset, generate several batches and concatenate them.

What fields can I include?

There are 25 to choose from: UUID, first and last and full name, email, username, password, phone, company, job title, city, country, street, ZIP, latitude, longitude, age, price, boolean, ISO date, lorem sentence, lorem paragraph, URL, hex color, and image URL. Toggle any combination on or off.

Is the data the same every time?

No. Each press of Generate produces a fresh random batch, so two runs with identical settings give different values. There is no seed control, which means you cannot reproduce an exact set later. Copy and save any batch you need to keep before regenerating.

What do the JSON, CSV, and SQL formats give me?

JSON returns a pretty-printed array of objects. CSV returns a header row of field names followed by quoted values. SQL returns a single INSERT INTO statement using your table name, with the selected fields as columns and one tuple per row. Single quotes in text are escaped for SQL.

Can I generate a specific email or a value in a set range?

Not directly. The generators produce their own random output, so you cannot force a particular email or company name. The one range fixed in the tool is age, which always falls between 18 and 80.