Generate mock records, lorem ipsum, fake emails, test card numbers, random integers and strong passwords or passphrases - free and in your browser.

Mock Data Generator

Build custom test data sets with names, emails, dates, numbers and addresses, then export as CSV, JSON or SQL for development and QA. Free tool.

Lorem Ipsum Generator

Generate lorem ipsum placeholder text by paragraph, sentence or word count for mockups, wireframes and typographic layout tests. Free and instant.

Real Content Generator

Generate realistic dummy paragraphs in English, German or French when lorem ipsum looks wrong in a design review. Free placeholder content tool.

Email Address Generator

Generate random or company-domain email addresses in bulk for form testing, seed data and QA. Nothing is registered and no real inbox is created.

Test Card Number Generator

Generate Luhn-valid test card numbers for Visa, Mastercard, Amex and Discover to exercise payment forms. No real accounts, no funds, testing only.

Password Generator

Generate strong random passwords with your own length and character rules. Everything is produced in your browser and never sent to our servers.

Passphrase Generator

Create diceware-style passphrases from random words that are easy to remember and hard to crack, with a live entropy estimate for every phrase.

Random Number Generator

Generate cryptographically secure random integers in any range, in bulk, with optional uniqueness. Uses the browser crypto API, not Math.random.

Two different jobs: filling a database, and protecting an account

This category holds two kinds of tool that happen to share a verb. Six of them (mock data, lorem ipsum, real content, emails, test card numbers, random integers) produce disposable data for development, QA and design. Two of them (passwords, passphrases) produce secret data you are meant to keep. The security requirements are opposite, and so is the implementation.

Why the randomness source matters for passwords

JavaScript's Math.random() is a pseudo-random number generator optimised for speed. It is perfectly adequate for shuffling a test dataset and completely unsuitable for generating a secret, because its output is predictable to anyone who can observe enough of it.

The password and passphrase generators use crypto.getRandomValues(), the browser's cryptographically secure RNG, seeded by the operating system's entropy pool. So does the random number generator, which is why it is safe to use for things like draws and sampling as well as test data.

Both secret generators run entirely in your browser. The password is never transmitted, never logged and never leaves the tab. You can verify that by opening the network panel and watching nothing happen when you click generate.

Password or passphrase?

Strength is measured in entropy — bits of unpredictability — and both approaches can reach the same number by different routes. A 16-character random string from a 94-character set carries about 105 bits. A six-word diceware passphrase from a 7,776-word list carries about 77 bits, and seven words about 90.

The practical difference is human. A random string has to live in a password manager, because nobody types x7$Kq2!vB9#mR4pL from memory. A passphrase like correct-battery-staple-mountain-glass-river can be memorised, which makes it the right choice for the handful of secrets you must be able to type without a manager: your device login, your disk encryption key, and the master password protecting everything else.

Lorem ipsum, real content, or neither

Lorem ipsum has one great advantage: it is obviously fake, so nobody in a design review mistakes it for copy and starts editing it. It has one real disadvantage: its word and letter distribution is not English, so text set in it does not look quite like text set in the real thing, and it hides layout problems that real content would expose.

Use lorem ipsum for early wireframes where the point is shape, not reading. Use the real content generator — which produces plausible sentences in English, German or French — when you are testing how a layout copes with realistic word lengths. German is a particularly useful stress test: its compound nouns are long, and they break narrow columns that looked fine in English.

Test card numbers are not credit cards

This needs saying explicitly. The card number generator produces strings that satisfy the Luhn checksum and match the issuer identification number ranges for Visa, Mastercard, Amex and Discover. That is all. There is no account behind them, no funds, no cardholder, and no issuer has ever issued them. They exist so you can exercise a payment form's validation without touching a real card.

They will pass client-side format validation and fail at authorisation, which is exactly the behaviour you want in a test suite. Attempting to use one for a real transaction is fraud, and it does not work. If you need numbers that complete a full sandbox transaction, use the test cards your payment processor publishes — Stripe, Adyen and PayPal all provide them.

Mock data for seeding and QA

The mock data generator is the tool to reach for when you need a few hundred rows that look like production: names, addresses, dates, phone numbers, prices. Export as CSV, JSON or SQL and load it straight into a development database.

A word of advice from experience: generate data that is awkward, not just plentiful. Names with apostrophes and accents, addresses with no postcode, dates at the end of February, prices with three decimal places. A seed dataset made entirely of clean records tests nothing except the happy path.