Mock Data Generator

Generate realistic fake test data - names, emails, addresses, Luhn-valid cards, UUIDs - and export as JSON, CSV or SQL. Seeded, in-browser, free.

Advertisement

Free Online Mock Data Generator with JSON, CSV and SQL Export

This mock data generator builds realistic but entirely fake records — names, email addresses, phone numbers, postal addresses, companies, job titles, financial values, network identifiers and Lorem ipsum text — and exports them as JSON, CSV or ready-to-run SQL INSERT statements. Pick the fields you want, choose how many rows to generate, optionally set a seed for reproducible output, and download the result. Everything runs in your browser: no signup, no upload, and no real personal data anywhere in the process.

Realistic test data is what makes a staging environment behave like production. Empty tables hide pagination bugs, off-by-one errors, layout breakage from long names, and sort issues. Copying real customer records into a test database is a privacy and compliance risk. Generated fake data solves both problems: it looks and sorts like the real thing without exposing anyone, and it is safe to commit to a fixtures file or share with a teammate.

What This Generator Produces

Fields are grouped into categories so you can toggle a whole set at once. Available fields include:

  • Personal: first name, last name, full name, email address, phone number, street address, city, state or province, ZIP or postal code, a clearly fake SSN, and date of birth.
  • Professional: company name, job title and department.
  • Financial: Luhn-valid (but fake) credit-card numbers, fake bank routing and account numbers, and currency amounts.
  • Network and identifiers: URL, IPv4 address, IPv6 address, MAC address, browser user agent and UUID.
  • Text: Lorem ipsum words, sentences and paragraphs.
  • Dates: random dates, Unix timestamps and ISO date-time values.

A locale selector (US, UK, Australia, Canada) changes the shape of names, cities, states, street suffixes and phone-number formats so the output matches the region you are testing for.

How to Use the Mock Data Generator

  1. Enable the fields you need. Toggle individual fields or whole categories. Each enabled field becomes a column in the output.
  2. Set the row count. Generate anywhere from 1 to 1,000 rows in a single pass.
  3. Choose a locale. Switch between en-US, en-GB, en-AU and en-CA to localise names, addresses and phone formats.
  4. Optionally set a seed. Enter any seed string to get the same data every time — essential for repeatable test fixtures and for reviewers who need to reproduce a bug.
  5. Pick an export format. JSON for API mocks and fixtures, CSV for spreadsheets and bulk import, or SQL INSERT statements (with a table name you specify) for seeding a database directly.
  6. Generate, then copy or download. Review the preview, then copy the output or download the file.

Why Seeded Generation Matters

The generator uses a seeded pseudo-random number generator. Given the same seed, the same fields and the same row count, it produces byte-for-byte identical output. That is the difference between throwaway data and a test fixture. If a test fails on row 47, a colleague can regenerate the exact same 47th row from the same seed and see the same failure. Leave the seed blank and you get fresh random data each time, which is better for smoke-testing input handling.

How the Fake Cards and SSNs Are Safe

The credit-card numbers pass the Luhn checksum — the same mod-10 algorithm real card networks use — so they will satisfy client-side validation in a checkout form. They use standard issuer prefixes (Visa, Mastercard, Amex) but are otherwise random and are not connected to any real account. The SSNs and bank details are formatted to look plausible but are explicitly fake. Use this data for testing validation logic and UI, never as though it were real: a Luhn-valid number is not an authorised payment instrument.

A Worked Example

Suppose you need to seed a users table. Enable Full Name, Email Address, City, Job Title and UUID; set 200 rows; set a seed of demo-2026; choose SQL export and a table name of users. The tool emits 200 INSERT INTO users (...) VALUES (...); statements you can paste straight into a migration or a psql session. Switch the export to JSON and the same 200 records become an array of objects suitable for an API mock or a Jest fixture — identical data, different serialisation.

Frequently Asked Questions

Is the generated data real?

No. Every value is fabricated. Names come from curated lists, and cards, SSNs and bank numbers are formatted to look valid but correspond to no real person or account.

Are the credit-card numbers usable for payments?

No. They pass the Luhn checksum so they satisfy format validation, but they are random and unlinked to any account. They exist to test validation and UI, not to make transactions.

How do I get reproducible data?

Enter a seed. The same seed with the same fields and row count always produces the same output, which makes it ideal for committed test fixtures.

What export formats are supported?

JSON, CSV and SQL INSERT statements. For SQL you can set the target table name.

How many rows can I generate at once?

Between 1 and 1,000 rows per generation. Run it again for more.

Can I match a specific country's formats?

Yes. The locale selector supports the United States, United Kingdom, Australia and Canada, which changes names, cities, states, street suffixes and phone formats.

Does anything get uploaded?

No. Generation and export happen entirely in your browser, so the data and your field choices never leave your device.

Related Developer Tools

Pair this with the UUID generator when you need standalone identifiers, the data format converter to reshape the output into YAML or XML, and the SQL formatter to tidy the generated INSERT statements before committing them.

What Is a Mock Data Generator

A mock data generator creates realistic but fictional data for software development, testing, and demonstrations. Instead of using real customer information—which raises privacy and compliance concerns—developers generate synthetic datasets that mimic production data patterns, including names, addresses, emails, phone numbers, dates, and domain-specific fields.

Mock data is essential throughout the software development lifecycle. During prototyping, it populates interfaces so designers can evaluate layouts with realistic content. During testing, it feeds automated test suites with diverse inputs to catch edge cases. During demos, it provides believable sample data without exposing actual business information.

How Mock Data Generation Works

Modern mock data generators use several techniques to produce realistic output:

Template-based generation uses predefined patterns with random substitution. For example, a phone number template like (###) ###-#### replaces each # with a random digit. This ensures correct formatting while producing unique values.

Locale-aware generation produces data appropriate for specific regions. A US address includes state abbreviations and ZIP codes, while a UK address uses postcodes and counties. Names follow cultural naming conventions for the selected locale.

Relational generation maintains consistency within a record. If a generated person lives in Texas, their phone area code, city, and ZIP code are all consistent with that state. This referential integrity makes the data useful for testing relational databases and APIs.

Data TypeExample OutputVariations
Full nameJane MartinezLocale, gender, format
Emailj.martinez@example.comDomain, format pattern
Address742 Oak St, Austin, TX 78701Country, urban/rural
Phone(512) 555-0147Country code, format
Date1988-03-15Range, format
UUID550e8400-e29b-41d4-a716-446655440000v4, v7
IP address192.168.42.107IPv4, IPv6, range

Common Use Cases

  • API development: Seed databases with thousands of records to test pagination, search, and filtering
  • UI/UX prototyping: Fill mockups with realistic content to evaluate visual design and layout
  • Load testing: Generate millions of records to stress-test database queries and API endpoints
  • Training environments: Provide realistic data for employee training without exposing real customer records
  • Compliance testing: Create synthetic datasets matching HIPAA, GDPR, or PCI-DSS field requirements to validate data handling workflows

Best Practices

  1. Never use production data for testing — Mock data eliminates privacy risk and regulatory liability
  2. Match production data distributions — If 60% of your users are in the US, generate data reflecting that ratio for realistic testing
  3. Include edge cases deliberately — Generate empty strings, Unicode characters, very long values, and null fields to catch boundary bugs
  4. Use deterministic seeds for reproducibility — Setting a fixed random seed ensures the same dataset is generated each time, making test failures reproducible
  5. Version your data schemas — As your application evolves, update mock data generators to match current field requirements

Frequently Asked Questions

What is the Mock Data Generator tool?+

The Mock Data Generator is a free tool that creates realistic fake data for testing and development purposes. It can generate personal information (names, emails, addresses), business data (companies, job titles), financial data (credit cards, bank accounts), internet data (IPs, URLs, UUIDs), and text content across multiple locales including US, UK, Australia, and Canada.

What export formats does the Mock Data Generator support?+

The tool supports three export formats: JSON for API testing and JavaScript applications, CSV for spreadsheets and database imports, and SQL INSERT statements for direct database population. You can copy the generated data to your clipboard or download it as a file.

Are the generated credit card numbers and SSNs real?+

No, all generated financial data is completely fake and cannot be used for real transactions. Credit card numbers follow the Luhn algorithm format to appear valid but are not connected to any real accounts. Social Security Numbers are generated with formats that avoid real SSN patterns. This data is safe to use in test environments.

What does the seed option do for reproducible results?+

The seed option allows you to generate the same data set every time by providing a specific number. This is useful when you need consistent test data across multiple runs or when sharing test scenarios with team members. Leave it empty for random data each time, or set a specific value for reproducible results.

How many records can I generate at once?+

You can generate between 1 and 1,000 rows of data in a single batch. For datasets up to 20 rows, the tool also displays a preview table so you can visually verify the generated data before exporting. All processing happens client-side in your browser.

Is my generated data stored or transmitted anywhere?+

No, all data generation happens entirely in your browser using JavaScript. No data is sent to any server. The generated data exists only in your browser session until you export or copy it. This makes the tool safe to use even when generating sensitive-looking test data.

This tool is provided for informational and educational purposes only. All processing happens in your browser — no data is sent to or stored on our servers. While we strive for accuracy, we make no warranties about the completeness or reliability of results.