Fake Data Generator
Updated Free mock REST & WebSocket APIs
Create realistic test data — users, products and orders — in seconds, and export it as JSON, CSV or SQL INSERT statements. The same seed always produces the same rows, so fixtures stay reproducible.
🔒 Generated in your browser from built-in word lists. Emails use reserved example.com domains and phone numbers use the fictional 555-01xx range.
How to generate fake data
- Pick a dataset (users, products or orders) and an output format.
- Set the number of rows, up to 1,000. For SQL you can rename the table.
- Copy or download the output. Change the seed or press Shuffle for a different set.
What's in each dataset
| Dataset | Fields |
|---|---|
| Users | id, first_name, last_name, email, phone, street, city, state, zip, birthdate, is_active, created_at |
| Products | id, sku, name, category, price, currency, stock, rating, created_at |
| Orders | id, order_number, user_id, product_id, quantity, unit_price, total, status, payment_method, ordered_at, shipped_at |
Why seeded, obviously fake data is better
- Reproducible tests. The same seed gives byte-identical output, so snapshot tests and bug reports stay stable.
- Safe contact details. Emails use example.com, example.org and example.net, which are reserved by RFC 2606 and can never reach a real inbox. Phone numbers use 555-0100 to 555-0199, the range reserved for fiction.
- No production data in dev. Copying real customer records into test environments is a common privacy and compliance failure (GDPR, CCPA). Generated data avoids the risk entirely.
Need an endpoint that returns data like this? The mock API generator turns it into a live REST API.
Related tools
Frequently asked questions
Is my data sent to a server?
No. This tool runs entirely in your browser with JavaScript, so your data never leaves your device and isn't logged or stored. You can even use it offline once the page has loaded.
Can I import the SQL into PostgreSQL, MySQL or SQLite?
Yes. The output is standard multi-row INSERT statements in batches of 500 rows, with TRUE/FALSE booleans and NULL, which all three accept. Create the table first with matching columns.
How do I get more than 1,000 rows?
Generate several batches with different seeds. IDs restart at 1 in each batch, so offset them when you import.
Are these real people?
No. Common first and last names are combined at random with fictional addresses, reserved email domains and fictional phone numbers.
Your business here? Sponsor this tool from $16/week. See placements