Skip to content
MagicWebBox
Sign in

Fake data

Realistic test data

Settings

Same seed and same settings: same data.

Fields

Result

10 row(s) generated

[
  {
    "id": "3357699d-64c6-4a87-be11-4da42c1ed128",
    "first_name": "Gabriel",
    "last_name": "François",
    "email": "gabriel.francois@yahoo.fr",
    "city": "Paris",
    "age": 74,
    "created_at": "2024-11-07"
  },
  {
    "id": "c8c3504c-dfa5-4ef7-a5ed-628c041709b7",
    "first_name": "Lucas",
    "last_name": "Blanc",
    "email": "lucas.blanc48@free.fr",
    "city": "Rouen",
    "age": 22,
    "created_at": "2023-06-27"
  },
  {
    "id": "5aebfd1d-b321-4f97-9ef2-f069c313bc1f",
    "first_name": "Léa",
    "last_name": "Roux",
    "email": "lea.roux1@yahoo.fr",
    "city": "Toulouse",
    "age": 69,
    "created_at": "2023-12-07"
  },
  {
    "id": "01d7da20-716c-47b0-a735-384ff97774cb",
    "first_name": "Julien",
    "last_name": "Vincent",
    "email": "julien.vincent54@orange.fr",
    "city": "Lyon",
    "age": 63,
    "created_at": "2022-08-11"
  },
  {
    "id": "f0773f21-dc08-4a15-9685-bad772eede8e",
    "first_name": "Zoé",
    "last_name": "Blanc",
    "email": "zoe.blanc@gmail.com",
    "city": "Grenoble",
    "age": 84,
    "created_at": "2022-09-22"
  },
  {
    "id": "a6fde674-4cd8-4a7f-890c-815da6c7314b",
    "first_name": "Maxime",
    "last_name": "Dubois",
    "email": "maxime.dubois37@laposte.net",
    "city": "Tours",
    "age": 36,
    "created_at": "2020-05-22"
  },
  {
    "id": "8e5ebc39-4ffa-4f47-8665-7da573c9d38f",
    "first_name": "Arthur",
    "last_name": "Lambert",
    "email": "arthur.lambert@yahoo.fr",
    "city": "Lille",
    "age": 28,
    "created_at": "2023-12-28"
  },
  {
    "id": "2a3df211-f956-4ca9-be5e-b00f6583bf1d",
    "first_name": "Lucas",
    "last_name": "Moreau",
    "email": "lucas.moreau@outlook.fr",
    "city": "Montpellier",
    "age": 53,
    "created_at": "2025-12-02"
  },
  {
    "id": "0d264c1c-735b-4781-96c6-593a94ece6b5",
    "first_name": "Jules",
    "last_name": "Fournier",
    "email": "jules.fournier@orange.fr",
    "city": "Lille",
    "age": 47,
    "created_at": "2023-11-23"
  },
  {
    "id": "1eef8511-4932-4cd7-b849-b17a7d3ee769",
    "first_name": "François",
    "last_name": "Morel",
    "email": "francois.morel@gmail.com",
    "city": "Limoges",
    "age": 25,
    "created_at": "2024-12-07"
  }
]

About this tool

This generator builds fake datasets to seed a development database, test a CSV import, fill a mockup or write tests. You define the fields and pick each type from 23 options: first name, last name, email, phone, company, street, postcode, city, country, date, number, UUID, sentence, URL, IP address, color, list of values and more. Names and addresses come in French, English (United States) or Spanish.

Each row stays consistent: the email matches the first and last name, and the postcode matches the city. Numbers accept a minimum, maximum and decimals, and dates accept a range. Generation is driven by a seed, so the same settings and seed always produce the same data. The output is JSON, CSV or INSERT statements for the table of your choice.

How to use it

  1. Under "Settings", choose the "Language of names and addresses", the "Number of rows (1 to 1000)" and a "Seed" (or click "New seed").
  2. Choose the "Format": JSON, CSV or SQL (INSERT); for SQL, enter the "Table name".
  3. Under "Fields", rename, reorder or remove fields, change their type, and click "Add a field" if needed.
  4. Check the "Result", then click "Copy" or "Download".

Frequently asked questions

What is the seed for?

The randomness is reproducible: with the same seed, fields and row count, the tool produces exactly the same data. That makes it easy to share a test dataset with a teammate or regenerate identical fixtures. "New seed" gives you a different draw.

How many rows and fields can I generate?

From 1 to 1,000 rows per run, with up to 50 fields. Every field needs a unique name; a list of values needs at least one value, and an integer field needs at least one whole number between its minimum and maximum.

How is the SQL export built?

One INSERT INTO statement per row, with the table name and columns in double quotes ("schema.table" is split into two parts). Text values are wrapped in single quotes, numbers are written as is and booleans as TRUE or FALSE.

Is the data generated on a server?

No, everything is computed in your browser from word lists built into the page, with no network call. Your settings, fields and seed are stored locally, so you get the same data back when you return.