TXT · Text & Data tools

Random Data Generator

Locale
Seed (optional)
Columns5 selected
First NameLast NameEmailPhoneCity
|Export

Add at least one column

Pick the columns you need, set a row count, and generate a table of realistic fake records. Each selected field becomes a column: choose First Name, Email, and City for a contact list, or Product, Price, and SKU for a catalog. Values come from the @faker-js/faker dataset, so names, addresses, and companies read like plausible records rather than random characters.

The table renders live and rerolls whenever you change the columns, row count, or locale.

Columns

Fields are grouped by type: Person, Internet, Location, Company, Finance, Commerce, Phone, Dates, Vehicle, and IDs. Toggle any combination. The column order in the table and exports follows the group order, so the layout stays stable as you add or remove fields.

For a fixed, single-purpose set, use one of the presets such as the user data generator or address data generator.

Seed and repeatability

A seed turns the generator deterministic. Enter any text or number, and the same seed plus the same columns reproduces the exact same rows on any machine. This matters when a test needs stable fixtures or when two people need the identical dataset from a shared URL. Clear the seed to return to random output, and press Regenerate for a fresh roll.

Locale

The Locale selector changes the underlying data source. German produces German street names and cities, Japanese produces Japanese names, and Brazilian Portuguese adjusts phone formats. Fields without regional variants, such as card numbers and UUIDs, stay the same across locales.

CSV and JSON export

CSV output quotes every value and escapes embedded quotes, following RFC 4180, so records containing commas or quotation marks import cleanly into spreadsheets and databases. JSON output is an array of objects keyed by column label, which drops straight into API mocks, seed scripts, and test fixtures. Both exports include every generated row, not only the 100 shown in the preview.

Card numbers and other limits

Generated card numbers follow the standard length and checksum rules but are not real or usable. Emails and usernames are synthetic and may collide at high row counts. For guaranteed-unique keys, add a UUID or Nano ID column.

Frequently Asked Questions

Names, usernames, emails, passwords, addresses, phone numbers, company data, finance fields like IBAN and card numbers, product data, dates, and vehicle details. Pick any combination of columns, and each becomes a column in the table.

Set Rows from 1 to 1000. The table shows the first 100 rows for speed, but CSV and JSON exports include the full set.

A seed makes the output repeatable. The same seed with the same columns produces the same rows every time, which is useful for fixtures and shareable test data. Leave it blank and press Regenerate for a new random set.

Yes. The Locale selector switches names, addresses, and phone numbers to match a region, such as German, Japanese, or Brazilian Portuguese.

CSV gives one row per record with quoted values, ready for spreadsheets or database import. JSON gives an array of objects keyed by column name, ready for API mocks and code fixtures.

No. Every value is randomly generated and does not belong to a real person, account, or card. Card numbers pass format checks but are not issued or usable.

Looking for a faster, single-purpose workflow?

Jump to a ready-made dataset

Explore Our Tools

Browse all tools