Overview
Introduction
Before cleaning, joining, or sharing a CSV, it helps to know more about it than just its column names, how many values are actually missing, whether a column that looks numeric has stray text hiding in it, and what its typical range or dominant value looks like.
This tool profiles every column of a pasted CSV at once, surfacing exactly that: type, emptiness, uniqueness, and type-appropriate summary statistics, without writing a single formula.
What Is Data Profiler?
A per-column CSV profiler that infers each column's type (number, string, boolean, or mixed/empty) from its actual values, then reports how many cells are empty, how many distinct values exist, and additional stats suited to that type.
For numeric columns it reports the minimum, maximum, and mean; for string columns it reports the single most common value and how many times it occurs.
How Data Profiler Works
The CSV is parsed with the shared RFC 4180 grid parser and padded to a uniform rectangle so ragged rows don't throw off column alignment. The first row is treated as the header.
Each column's non-empty values are scanned to infer its type, then min/max/mean is computed for numeric columns (via Math.min/Math.max/an average) or the most frequent value is tallied for string columns.
When To Use Data Profiler
When you've just received a CSV from somewhere else and want a fast sense of its shape and data quality before doing anything else with it.
When a downstream tool or import is failing and you suspect a column has more missing values, or a wider mix of types, than expected.
Often used alongside CSV Analyzer and CSV Size Analyzer.
Features
Advantages
- Profiles every column in one pass, no need to write a formula or open a spreadsheet.
- Reports type-appropriate statistics, numeric range and mean for numbers, dominant value and frequency for text, rather than one generic stat for every column.
- Runs entirely client-side, so the CSV never leaves your browser.
Limitations
- Type inference is based purely on scanning the column's own values; it doesn't know a column's intended schema (e.g. a zip-code column of all-digit values will be typed as number).
- Only the single most common value is reported for string columns, not a full frequency distribution of every distinct value.
Examples
Best Practices & Notes
Best Practices
- Run this before joining two CSVs on a shared column, a surprising "mixed" type on what should be a clean numeric key often points to stray whitespace or a stray text row.
- Use the empty count to spot columns with unexpectedly high missing-data rates before relying on that column for analysis.
- Re-profile after cleaning a CSV to confirm a fix actually resolved the issue, a column that was previously 'mixed' should read as a clean 'number' or 'string' afterward.
Developer Notes
A column with zero non-empty values is reported as 'mixed' rather than a separate 'empty' type, since the type union only distinguishes number/string/boolean/mixed and there's genuinely nothing to type-check in an all-blank column.
Data Profiler Use Cases
- Getting a fast data-quality snapshot of a CSV before further processing
- Spotting a numeric column that unexpectedly contains stray text values (reported as 'mixed')
- Finding the dominant category in a text column without writing a pivot table
Common Mistakes
- Assuming a 'mixed' type means the column is broken; it just means some but not all non-empty values parsed as numbers, worth a look but not automatically an error.
- Expecting min/max/mean on a string column, those are only computed for columns typed as number.
Tips
- Once you know which columns are clean, feed the same CSV into Dataset README Generator to turn this profile into a shareable schema doc.
- A column reported as 'mixed' is worth a closer look with CSV Editor, it usually means a stray non-numeric value snuck into an otherwise numeric column.