Skip to content
Development/Free tool

Realistic Demo Data Generator

Generate seeded users, products, orders, and transactions with consistent references. Export JSON or table-specific CSV, free without AI or external APIs.

Dataset settings

The same seed and count reproduce the same dataset.

Connected by design

Total records

40

Related tables

4

Users → orders ← products. Each order has a matching transaction. Prices and totals are integer cents in USD; records are fictional and emails use example.com.

Data preview

First five users records
idnameemailcity
user_1Robin Patelperson1@example.comLondon
user_2Taylor Kimperson2@example.comToronto
user_3Sam Okaforperson3@example.comLondon
user_4Taylor Patelperson4@example.comNairobi
user_5Avery Ellisperson5@example.comLisbon

Showing 5 of 10 users.

Export dataset

demo-data.json
{
  "users": [
    {
      "id": "user_1",
      "name": "Robin Patel",
      "email": "person1@example.com",
      "city": "London"
    },
    {
      "id": "user_2",
      "name": "Taylor Kim",
      "email": "person2@example.com",
      "city": "Toronto"
    },
    {
      "id": "user_3",
      "name": "Sam Okafor",
      "email": "person3@example.com",
      "city": "London"
    },
    {
      "id": "user_4",
      "name": "Taylor Patel",
      "email": "person4@example.com",
      "city": "Nairobi"
    },
    {
      "id": "user_5",
      "name": "Avery Ellis",
      "email": "person5@example.com",
      "city": "Lisbon"
    },
    {
      "id": "user_6",
      "name": "Alex Chen",
      "email": "person6@example.com",
      "city": "London"
    },
    {
      "id": "user_7",
      "name": "Sam Okafor",
      "email": "person7@example.com",
      "city": "Lagos"
    },
    {
      "id": "user_8",
      "name": "Maya Kim",
      "email": "person8@example.com",
      "city": "Lagos"
    },
    {
      "id": "user_9",
      "name": "Sam Patel",
      "email": "person9@example.com",
      "city": "Nairobi"
    },
    {
      "id": "user_10",
      "name": "Maya Patel",
      "email": "person10@example.com",
      "city": "Lisbon"
    }
  ],
  "products": [
    {
      "id": "product_1",
      "name": "Linen cover 1",
      "priceCents": 7600,
      "currency": "USD",
      "stock": 60
    },
    {
      "id": "product_2",
      "name": "Reading light 2",
      "priceCents": 6300,
      "currency": "USD",
      "stock": 7
    },
    {
      "id": "product_3",
      "name": "Sketch pencil set 3",
      "priceCents": 9400,
      "currency": "USD",
      "stock": 38
    },
    {
      "id": "product_4",
      "name": "Glass carafe 4",
      "priceCents": 3700,
      "currency": "USD",
      "stock": 64
    },
    {
      "id": "product_5",
      "name": "Linen cover 5",
      "priceCents": 8300,
      "currency": "USD",
      "stock": 9
    },
    {
      "id": "product_6",
      "name": "Sketch pencil set 6",
      "priceCents": 4800,
      "currency": "USD",
      "stock": 54
    },
    {
      "id": "product_7",
      "name": "Glass carafe 7",
      "priceCents": 2900,
      "currency": "USD",
      "stock": 65
    },
    {
      "id": "product_8",
      "name": "Desk organizer 8",
      "priceCents": 5900,
      "currency": "USD",
      "stock": 55
    },
    {
      "id": "product_9",
      "name": "Canvas tote 9",
      "priceCents": 8600,
      "currency": "USD",
      "stock": 58
    },
    {
      "id": "product_10",
      "name": "Desk organizer 10",
      "priceCents": 4300,
      "currency": "USD",
      "stock": 51
    }
  ],
  "orders": [
    {
      "id": "order_1",
      "userId": "user_2",
      "productId": "product_10",
      "quantity": 3,
      "totalCents": 12900,
      "currency": "USD",
      "status": "pending",
      "createdAt": "2026-01-03T00:00:00.000Z"
    },
    {
      "id": "order_2",
      "userId": "user_1",
      "productId": "product_3",
      "quantity": 1,
      "totalCents": 9400,
      "currency": "USD",
      "status": "canceled",
      "createdAt": "2026-02-21T00:00:00.000Z"
    },
    {
      "id": "order_3",
      "userId": "user_7",
      "productId": "product_3",
      "quantity": 4,
      "totalCents": 37600,
      "currency": "USD",
      "status": "pending",
      "createdAt": "2026-01-02T00:00:00.000Z"
    },
    {
      "id": "order_4",
      "userId": "user_1",
      "productId": "product_1",
      "quantity": 2,
      "totalCents": 15200,
      "currency": "USD",
      "status": "canceled",
      "createdAt": "2026-03-13T00:00:00.000Z"
    },
    {
      "id": "order_5",
      "userId": "user_10",
      "productId": "product_1",
      "quantity": 1,
      "totalCents": 7600,
      "currency": "USD",
      "status": "canceled",
      "createdAt": "2026-01-27T00:00:00.000Z"
    },
    {
      "id": "order_6",
      "userId": "user_10",
      "productId": "product_4",
      "quantity": 4,
      "totalCents": 14800,
      "currency": "USD",
      "status": "paid",
      "createdAt": "2026-03-04T00:00:00.000Z"
    },
    {
      "id": "order_7",
      "userId": "user_4",
      "productId": "product_6",
      "quantity": 4,
      "totalCents": 19200,
      "currency": "USD",
      "status": "canceled",
      "createdAt": "2026-02-01T00:00:00.000Z"
    },
    {
      "id": "order_8",
      "userId": "user_5",
      "productId": "product_6",
      "quantity": 2,
      "totalCents": 9600,
      "currency": "USD",
      "status": "canceled",
      "createdAt": "2026-01-08T00:00:00.000Z"
    },
    {
      "id": "order_9",
      "userId": "user_4",
      "productId": "product_1",
      "quantity": 4,
      "totalCents": 30400,
      "currency": "USD",
      "status": "paid",
      "createdAt": "2026-03-06T00:00:00.000Z"
    },
    {
      "id": "order_10",
      "userId": "user_5",
      "productId": "product_5",
      "quantity": 1,
      "totalCents": 8300,
      "currency": "USD",
      "status": "paid",
      "createdAt": "2026-03-24T00:00:00.000Z"
    }
  ],
  "transactions": [
    {
      "id": "transaction_1",
      "orderId": "order_1",
      "amountCents": 12900,
      "currency": "USD",
      "status": "pending"
    },
    {
      "id": "transaction_2",
      "orderId": "order_2",
      "amountCents": 9400,
      "currency": "USD",
      "status": "canceled"
    },
    {
      "id": "transaction_3",
      "orderId": "order_3",
      "amountCents": 37600,
      "currency": "USD",
      "status": "pending"
    },
    {
      "id": "transaction_4",
      "orderId": "order_4",
      "amountCents": 15200,
      "currency": "USD",
      "status": "canceled"
    },
    {
      "id": "transaction_5",
      "orderId": "order_5",
      "amountCents": 7600,
      "currency": "USD",
      "status": "canceled"
    },
    {
      "id": "transaction_6",
      "orderId": "order_6",
      "amountCents": 14800,
      "currency": "USD",
      "status": "succeeded"
    },
    {
      "id": "transaction_7",
      "orderId": "order_7",
      "amountCents": 19200,
      "currency": "USD",
      "status": "canceled"
    },
    {
      "id": "transaction_8",
      "orderId": "order_8",
      "amountCents": 9600,
      "currency": "USD",
      "status": "canceled"
    },
    {
      "id": "transaction_9",
      "orderId": "order_9",
      "amountCents": 30400,
      "currency": "USD",
      "status": "succeeded"
    },
    {
      "id": "transaction_10",
      "orderId": "order_10",
      "amountCents": 8300,
      "currency": "USD",
      "status": "succeeded"
    }
  ]
}
Word count: 566Back to details ↑

Export text stays in English; your input is kept as entered.

No signup. No AI credits. This tool assembles your output in your browser.

From an idea to something useful.

  1. 01

    Choose the number of records and a repeatable seed.

  2. 02

    Inspect users, products, orders, and transactions.

  3. 03

    Export the complete JSON dataset or CSV for a selected table.

A little context.

This generator uses curated fictional names and deterministic pseudorandom values. Orders reference generated users and products; transactions reference generated orders. Amounts are integer cents and all currency values are USD sample data. Every order has one line item and one matching transaction. Identical seeds and counts produce identical exports.

Good questions.

Are these real people or transactions?

No. All records are synthetic fixtures. Email addresses use the reserved example.com domain.

Why does CSV download one table at a time?

CSV describes one rectangular table. Choose the table to download, or use JSON to retain the complete related dataset.

All tools