Data Validator

One workspace for structured payloads and line-based lists. Pick a mode, paste text, and read a ledger of passes and failures before you paste the same blob into production, a ticket, or a teammate's chat.

Validation workspace

Each non-empty line in the workspace is tested against this pattern. Invalid regex strings surface as a single failure with the engine error.

0Pass
0Fail
0Checked

Honest warning

Broken rows rarely arrive with a siren

Most bad data looks fine until something downstream chokes.

A CSV export from finance drops a comma inside a product name. Your JSON from a mobile client includes a trailing comma. A signup list mixes full names into the email column. None of these problems care how confident you felt when you hit paste.

We built this page so you spot the issue while the payload is still in front of you, not after a deploy or a furious message from analytics. In most cases you should still run your own automated tests. This tool is the fast human pass before the slow machine pass.

What actually runs when you tap Run check

JSON mode sends your entire workspace through the same JSON.parse your browser already ships. If the engine throws, you see the error text. If you need pretty structure after it parses, open our JSON beautifier in another tab and keep this page for the red-or-green verdict.

XML mode uses DOMParser with text/xml. Parser errors from the browser surface as failures. We do not validate against XSD or Relax NG, so a document might be well-formed yet wrong for your schema.

CSV mode splits the first row into fields, counts columns, then compares every following row. Quoted commas count as part of a field, not a separator. Ragged rows fail fast with the row index in the message.

Email lines and URL lines iterate non-empty rows. URLs must parse with http: or https: schemes so internal schemes or typos show up early. Strict email mode tightens the character class slightly compared with the looser default.

Custom regex mode compiles your pattern once per run, then tests each line. Dangerous patterns slow your tab, not our servers, because nothing leaves the browser.

ModeWhat counts as a passWhat we refuse to promise
JSONSingle valid JSON value in the boxSchema, duplicate keys, or number precision rules
XMLWell-formed treeExternal entities, XSD rules, namespaces policy
CSVStable column count across rowsLocale-specific decimals, file encoding guesses
Email / URLPer-line syntax checksDeliverability, DNS, TLS, or shortened links
Custom regexLine matches your patternCatastrophic backtracking guard rails

Where a five-second check saves an hour

Support engineers paste webhook bodies before forwarding them to engineering. Marketing pastes partner lead files before uploading to a CRM. Developers paste config fragments before merging environment files. Each scenario shares the same habit, catch the ugly line before it becomes someone else's fire drill.

When your task is opening many links instead of validating syntax, the multiple URL opener gives you a different layout with the same privacy posture.

Privacy: Text you paste stays inside your browser session. We do not store payloads, run checks on a remote worker, or attach analytics to field contents. Export writes a file locally through a blob URL.

Import JSON sessions without trusting the clipboard twice

Sometimes the payload lives in a ticket attachment, not your paste buffer.

The Import JSON session button expects a tiny JSON object with three optional keys. dataType should be one of json, xml, csv, email, url, or custom. payload holds the main string. pattern only matters when dataType is custom.

We recommend you build those files yourself from a text editor you trust, not from random download links. The page reads the file with FileReader, applies the fields, and never sends the file anywhere.

If the JSON is malformed, you get a single alert and nothing changes. Keep backups of originals before you rewrite data for production imports.

What this page will not do for you

We do not prove an email inbox exists, only whether the string resembles a mailbox. We do not follow redirects for URLs. We do not compare JSON documents semantically, so key order changes still count as valid.

Regex mode is only as safe as the pattern you type. If you paste a pathological expression, expect a frozen tab. We recommend testing patterns on small samples first.

CSV validation assumes comma separators and newline row breaks. TSV, European decimals with commas, or Excel semicolon exports need a different tool chain.

For file hashes and corruption checks, use the file integrity checker instead. It answers a different question than syntax.