Free browser tool
Validate a CSV file
Drop or paste a CSV, choose a rule for each column and see every problem with its record, CSV row and column before you import the file. Nothing is converted, trimmed or removed.
Runs on this device. No upload, account or tracking.
Your CSV and rules
The first row is the header. Header names must be non-empty and unique.
Rules for each column
Choose how to check each column. Keep identifiers such as 00123 as Text so the leading zeros count.
Advanced: the rules as JSON
A list of rules such as [{"column": "qty", "type": "integer", "required": true, "minimum": "1"}]. Keys: column, type (text, integer, decimal, date, boolean, email), required, unique, minimum and maximum (decimal text), date_format (YYYY-MM-DD, DD/MM/YYYY or MM/DD/YYYY) and allowed (a list of exact values). Editing the builder rewrites this JSON.
Up to 500 KB of UTF-8, 5,000 rows, 100 columns and 100 rules. The report lists the first 100 problems and counts all of them; it holds no cell values. Email addresses are checked for syntax only.
Result
Result
Technical output
The download contains the same JSON: record numbers, column names, rule codes and your rules, no cell values.
About this tool
What this tool does
Validate a CSV file in your browser against rules you set per column: text, whole numbers, decimals, real calendar dates, true/false and email syntax, with required, unique, minimum, maximum and allowed values, without changing or uploading the file.
Limits and safe use
Up to 500 KB of UTF-8, 5,000 rows, 100 columns and 100 rules. The report lists the first 100 problems and counts all of them; it holds no cell values. Email addresses are checked for syntax only. Use the problem list to fix the file at its source. The check never changes, trims or converts a value; email addresses are checked for syntax only, and nothing is sent to a server or a model.