Skip to content
Marvin's Toolbox.

Search tools

Type to filter all tools

Fake Data Generator

Generate realistic fake data for testing: names, emails, addresses, phone numbers, companies, internet data, dates and more. Tick the fields you need, set how many rows you want and a locale, then copy or download the result as JSON, CSV or plain text.

Everything runs locally in your browser. Your data never leaves your device.

Fields

Tick the fields each row should contain. Columns follow this order.

Person
Contact
Address
Company
Internet
Finance
Date and time
Text
IDs
6 of 34 fields selected

Columns

Rename the JSON keys and CSV headers if the defaults don't fit.

Options

Locale
Current seed: 806430377.
Output format

Result

Loading locale data…

Next steps

Send this tool's output straight into another tool.

Paste JSON to explore it as a collapsible, searchable tree, hide the fields you don't need, and see the structure it implies as a badge-annotated schema and a copyable TypeScript interface.

Convert config and data between JSON, YAML, TOML, JSON5, INI, XML, CSV and .env. Type or paste on the left, pick the output format on the right, and copy the result. Includes a format button and a minify toggle.

Compare two JSON documents by structure and see every added, removed and changed key and value with its exact path. Browse the result as a tree, a filterable change list or a line diff, ignore array order, catch type changes and export the changes as a JSON report.

Convert text into every case at once: title case in the APA, AP, Chicago, MLA, Bluebook, AMA and NYT styles, sentence case, upper, lower, camelCase, snake_case, kebab-case and more, each with its own copy button.

Count words, characters, sentences, paragraphs, lines and more as you type, with estimated reading and speaking time.

Remove duplicate lines from a list or text, keeping the first occurrence. Optionally ignore case and whitespace, or drop blank lines too.

Replace text in two modes: plain find and replace all, or regular expressions with flag controls and capture group references like $1.

Compare two texts and see every added, removed and changed line highlighted, side by side or inline, with the changed words marked within each line. Ignore case, whitespace or blank lines, read a summary of how much changed, and export the result as a unified diff.

Paste a UUID to see what it carries: version, variant, and for time-based versions the exact timestamp, clock sequence and node. Also shows the raw bytes, the 128-bit integer and the URN form.

Decode Base64 to text or encode text to Base64. Paste into the top box, read the result below, and flip the direction with one click. Handles Unicode correctly, reads URL-safe Base64, and shows binary payloads as a hex dump you can download.

Convert between scientific notation and full numbers as you type. Reads 1.23e5, 1.23 × 10^5 and plain numbers, shows the value written out, in normalized scientific notation and in engineering notation, and can round to any number of significant digits.

Sort the lines of a text alphabetically, naturally, by length, by numeric value or shuffled. Reverse the order with a switch, and optionally trim lines, drop blank lines and remove duplicates in the same pass.

Convert a color between HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH and OKLAB. Type into any field and the others update as you go, or pick the color visually. Reads CSS color syntax and keeps alpha where the format supports it.

Check two colors against the WCAG contrast rules. Type or pick a text and a background color, read the contrast ratio, see which AA and AAA checks pass, preview real text at the sizes WCAG distinguishes, and get suggested fixes when a check fails.

Create a QR code for text, a link, an email, a phone number, an SMS, Wi-Fi access or a contact card. Set the error correction level, size, margin and colors, then download it as PNG or SVG or copy it straight to the clipboard.

Paste a cron expression and get a plain English explanation, a field by field breakdown and the next times it would run, in your local timezone or UTC. Reads five field crontab syntax, six fields with seconds, names like MON and macros like @daily.

Work out an IPv4 or IPv6 network from an address with a prefix or netmask: network and broadcast addresses, usable host range, subnet mask, wildcard mask and address type. Adjust the prefix with a slider, read the binary breakdown, and split the network into smaller subnets.

Hash text or a file with MD5, SHA-1, SHA-256, SHA-512, SHA-3, BLAKE2, BLAKE3, CRC32 and more, all computed live as you type. Compare against an expected checksum and copy any digest.

Verify a checksum online: drop a file, paste the expected checksum and see instantly whether they match. The hash type is detected from the checksum itself, covering MD5, SHA-1, SHA-256, SHA-512, BLAKE3, CRC-32 and more, and sha256sum lines or whole checksum files can be pasted as-is.

Encode text for use in URLs or decode percent-escaped strings back to readable text. Choose component, full-URL or form encoding, unwrap double-encoded strings, and break a URL into its parts with every query parameter decoded.

Convert Unix timestamps in seconds, milliseconds, microseconds or nanoseconds to readable dates in your local time, UTC or any timezone, and turn any date back into a timestamp. Shows the live current timestamp and relative time.

Escape text into HTML entities or decode entities back to plain text. Choose named or numeric entities, escape only the unsafe characters or everything outside ASCII, and read the result live.

Paste a JSON Web Token to see its header and payload as formatted JSON, with the token color coded so each part maps to its output. Explains the registered claims, shows expiry as readable dates, flags expired tokens and can verify the signature with a secret or public key.

Compress text or a file with gzip, deflate, brotli or Zstandard and see the size before and after, the compression ratio and how long it took. One click tries every method and recommends the smallest result.

Decompress gzip, deflate, brotli or Zstandard data from a file or pasted Base64 and read the result as text or download it. Detects the format from the magic bytes where possible, with a manual override.

Paste anything that looks encoded and this tool works out what was used and undoes it, layer by layer. The whole BaseXX family from Base16 to Base85, binary, URL escapes, HTML entities, ROT13 and gzip, Brotli or Zstandard compression are detected in any combination, and every step of the chain is reported.

Escape or unescape a string for JSON, JavaScript, regex, shell, SQL, CSV, XML and more. Paste text, pick the target format and copy the result, in either direction.

Paste a PEM certificate to see its subject, issuer, validity dates, subject alternative names, key details, fingerprints and extensions in plain view.

Paste a 2FA secret or an otpauth:// link and watch the one-time codes tick live, with a countdown to the next code. Supports the digit counts, periods and algorithms real authenticators use.

Format code in JavaScript, TypeScript, JSON, JSON5, HTML, Vue, CSS, SCSS, LESS, Markdown, YAML, GraphQL, XML and SQL. Pick tabs or spaces, set the indent width, and format the input in place with one click.

Reveal the characters you can't see in a text: zero-width spaces, non-breaking spaces, bidi marks, control characters and CRLF versus LF line endings. Inspect every occurrence and clean them out with a click.

Test a regular expression against your own text and see every match highlighted as you type. Capture groups are color coded in the pattern, the matched text and the match list, so you always see which parentheses captured what. Toggle any JavaScript regex flag, read the exact error when a pattern is invalid, and copy all matches as a list.

Split a long text into numbered posts that fit a character limit. Pick a preset for X, Threads, Mastodon or Bluesky or set your own limit, choose the numbering style, and keep words or paragraphs intact. Copy each post on its own or all at once.

Build a Markdown table in a spreadsheet-like editor and copy the aligned result. Add, move and delete rows and columns, set per-column alignment, and paste cells straight from Excel, Google Sheets or CSV. The output stays neatly padded so it reads well as plain text.

Turn any text into a clean URL slug. Transliterates accents and non-Latin scripts to ASCII, with options for the separator, letter case and a length limit. Handles many titles at once, one line per slug.

Break a URL into scheme, host, port, path, query and fragment, and edit every part on its own. Query parameters become an editable table where you can change, add, remove and reorder values, with everything decoded for reading and the rebuilt URL ready to copy.

Inspect any file or text as a hex dump with offsets, byte values and an ASCII column. Jump to an offset, search for bytes or text, select a range to see it decoded as integers and strings, and copy or download the dump.

Look up any HTTP status code in a searchable, filterable table. Search by number or name, filter by class from 1xx to 5xx, and expand any code for a plain explanation and a link to the spec. Includes the common non-standard codes from nginx, Cloudflare and others.

About the Fake Data Generator

This tool generates rows of realistic fake data for testing and demos: names, emails, phone numbers, addresses, companies, internet fields like IPs and user agents, finance fields like IBANs and credit card numbers, dates, sample text and IDs. Tick the fields you need, set the row count and locale, and copy or download the result as JSON, CSV or a plain text table.

Generation is powered by Faker, the library most developers already use for seeding databases and mocking APIs. An optional seed makes the output reproducible, so the same seed and settings always give you the exact same rows.

What you can do

  • Generate fake user data with names, emails, phone numbers and addresses.
  • Create up to 1000 rows of sample data as JSON or CSV.
  • Pick a locale so names, cities and phone numbers look right for English, German, French, Spanish, Italian, Japanese or Chinese data.
  • Set a seed to get reproducible test data for fixtures and repeatable bug reports.
  • Generate fake IBANs, credit card numbers, UUIDs, IPs, MAC addresses and user agents.
  • Rename columns to match your database or API schema before exporting.

How to use the Fake Data Generator

  1. 1Tick the fields each row should contain. The defaults give you a basic person record.
  2. 2Set how many rows you want, pick a locale and choose JSON, CSV or a text table.
  3. 3Rename any column whose default key does not fit your schema.
  4. 4Press Regenerate until you like the data, or enter a seed to pin it.
  5. 5Copy the result or download it with the right file extension.

Reproducible data with a seed

Leave the seed empty and every press of Regenerate draws fresh random data. Enter a seed, a number or any word, and the same seed with the same fields, count and locale reproduces the identical rows. The current seed is always shown, so when a random batch turns out useful you can keep it with one click. Date fields are anchored to the current day, so a seeded batch stays identical for the rest of the day.

All of it is fake but plausible. IBANs and credit card numbers follow the right format for test fixtures, but they are generated values, not real accounts.

Output formats

JSON gives you an array of objects, ready to paste into fixtures or feed to the JSON Inspector. CSV quotes commas, quotes and line breaks correctly, so it imports cleanly into spreadsheets and databases. The text table pads columns with spaces for readable logs, docs and bug reports. Column keys are derived from the field names and can be renamed, and renaming a column updates the JSON keys and CSV header alike.

If you only need identifiers rather than whole records, the UUID Generator generates and formats UUIDs in bulk. For passwords worth using, the Password Generator draws from a cryptographically secure source instead.

Decode Base64 to text or encode text to Base64. Paste into the top box, read the result below, and flip the direction with one click. Handles Unicode correctly, reads URL-safe Base64, and shows binary payloads as a hex dump you can download.

Verify a checksum online: drop a file, paste the expected checksum and see instantly whether they match. The hash type is detected from the checksum itself, covering MD5, SHA-1, SHA-256, SHA-512, BLAKE3, CRC-32 and more, and sha256sum lines or whole checksum files can be pasted as-is.

Convert Unix file permissions between checkboxes, octal like 755 and symbolic notation like rwxr-xr-x, all kept in sync as you edit any of them. Covers setuid, setgid and the sticky bit, and shows the matching chmod command ready to copy.

See what your clipboard really holds. One press lists every format on it, from plain text and HTML to Excel tables and images, each with its type, size and a preview. Pasting works too, and can reveal even more formats.

Format code in JavaScript, TypeScript, JSON, JSON5, HTML, Vue, CSS, SCSS, LESS, Markdown, YAML, GraphQL, XML and SQL. Pick tabs or spaces, set the indent width, and format the input in place with one click.

Check two colors against the WCAG contrast rules. Type or pick a text and a background color, read the contrast ratio, see which AA and AAA checks pass, preview real text at the sizes WCAG distinguishes, and get suggested fixes when a check fails.