CSV and Excel data profiler: column types, missing values, statistics, histograms and correlation heatmap

Open a CSV or Excel file and see every column at a glance: its type, missing values, unique values, mean, median, SD, quartiles, outliers, histogram or most common values, plus a correlation heatmap. Download the report as a web page, PDF or Word file. Nothing is uploaded.

Keep it one tap away for everyday use.

Bookmark CSV and Excel data profiler?

Press Ctrl + D now. Your browser opens its own bookmark box, where you choose the name and folder.

  1. Open file
  2. Columns
  3. Charts
  4. Report
Nothing is uploadedWorks offline once open

Your data

Empty cells and NA, N/A, NaN, null, None, #N/A, ?, - and . count as missing. Dates must be written year first (2026-03-01). The example is made up.

Overview

Columns

One column in detail

Most common values

Correlation heatmap

Report

The whole profile: overview, every column with its chart, and the correlations.

Download

What it does

Before you analyse a data set, you need to know what is in it: which columns are numbers, how many cells are empty, whether a typing slip has crept in, which columns move together. This profiler answers those questions for a CSV or Excel file in a few seconds, in your browser. The file is never uploaded.

For the whole table it shows the number of rows and columns, missing cells, rows with a gap and exact duplicate rows, plus a list of things to check. For every column it finds the type (number, date, yes/no or text) and gives:

  • Present, missing and unique counts.
  • For numbers: mean, standard deviation, minimum, quartiles, median, maximum, skewness, excess kurtosis, how many zeros and negative values, and possible outliers (values more than 1.5 times the interquartile range beyond the quartiles), with a histogram.
  • For text, dates and yes/no: the most common values with their counts and shares, and the first and last value.

A correlation heatmap shows how every pair of number columns moves together, with the strongest pairs listed.

How to use it

  1. Open a CSV, TSV, text or Excel (.xlsx) file, or paste a table. The first row should hold the column names; if it is all numbers, the columns are called Column 1, Column 2 and so on.
  2. Read the overview and the Things to check list first.
  3. Pick a column under One column in detail to see its histogram or its most common values.
  4. Choose Pearson correlation for straight-line relationships, or Spearman for any steadily rising or falling trend. Spearman works on ranks, so one wild value cannot dominate it.
  5. Download the column statistics as CSV, or the whole report as a web page (HTML), image, PDF or Word file.

Histogram bins are set automatically with the same rule as numpy (the narrower of the Sturges and Freedman-Diaconis widths), or you can fix 10, 20 or 30.

Worked example

The example is a made-up table of 41 plants. The page shows 41 rows × 8 columns, 5 missing cells and 1 duplicate row (plant P11 appears twice). The column sown is found to be a date, fertilised a yes/no column, and region text with 1 gap and East as its most common value (12 of 40).

height_cm has 2 missing values (one empty, one written NA). Its mean is 43.67 cm with an SD of 13.49, but the median is 42 cm: the list flags 2 possible outliers, and the histogram shows one bar far out at 118 cm, a likely slip for 11.8 or 48.0. That one value also pulls the Pearson correlation between height and mass down to 0.540; switch to Spearman and it is 0.845. Fixing or removing the slip is the first job before any analysis.

Good to know

  • Statistics follow pandas: the standard deviation divides by n − 1, quartiles interpolate linearly, and correlations use the rows where both values are present.
  • A column with numbers and a few words (such as “n/d”) is treated as text, and the list says how many cells to fix.
  • Dates are recognised when written year first, such as 2026-03-01 or 2026/3/1 14:30. Other date styles are treated as text, because 03/04 could be March or April.
  • Files up to 15 MB, 60 columns and 50,000 rows. The heatmap shows up to 25 number columns.

What it does not do

It does not change your data, guess at mixed date formats, or test whether a correlation is significant. Clean the data in your spreadsheet or with SQL, then run the profile again.

Frequently asked questions

Is my file uploaded? No. It is read by your browser and nothing is stored or sent anywhere.

Why is a number column called text? At least one cell is not a number. The Things to check list shows an example cell.

What do skewness and kurtosis mean? Skewness above 0 means a long tail to the right; excess kurtosis above 0 means heavier tails than a normal distribution.

Where the numbers come from

  • Statistics as defined in pandas (describe, skew, kurt, value_counts, duplicated, DataFrame.corr) and numpy's automatic histogram bins; checked against pandas 3.1 and numpy 2.5 on the example and a random table.
  • The example table of 41 plants is made up for this tool.

Standard scientific values, such as constants, atomic weights and melting points, are facts found in every textbook; we name where ours were checked. If you are an author or publisher and want a value, a credit or a table changed or removed, tell us and we will act quickly.

Last updated 2026-11-09.

Related tools

Trend and anomaly analyser #138 Paste or open a time series (yearly, monthly or any steps) and test for a trend with Mann-Kendall, the Hamed-Rao autocorrelation correction or the seasonal test, get Sen's slope with its confidence interval, a Pettitt change point and anomalies from a baseline period. CSV profiler and SQL playground #38 Open CSV, TSV or Excel files and get a profile of every column: type, missing values, distinct values, range and most common values. Then query them with SQL (SQLite), join files, and download the result. Nothing is uploaded. Publication plot maker #27 Paste columns or open a CSV or Excel file and get a clean scientific figure with error bars, sized for a journal column. Download vector SVG or PDF, or PNG at 300 or 600 dpi. Your data stays in your browser. Small model trainer #569 Train a small machine-learning model on a CSV or Excel table: a decision tree (drawn for you), logistic regression, k-nearest neighbours or k-means clustering with an elbow plot. See train and test accuracy, a confusion matrix and per-class scores. Matches scikit-learn. Nothing is uploaded. Confusion matrix and metrics calculator #570 Type four counts, paste a confusion matrix, or open a file of actual and predicted classes. Get accuracy, precision, recall, F1 (macro, micro and weighted), specificity, balanced accuracy, MCC and Cohen's kappa, with 95 % confidence intervals. Matches scikit-learn. Nothing is uploaded. Dataset train/test splitter and stratifier #571 Split a CSV or Excel table into training, test and validation sets: random, stratified by class, grouped (whole patients or sites together) or by time, or give every row a k-fold number. Set a seed, check the class balance and download each part as CSV. Nothing is uploaded. Embedding visualiser (PCA and t-SNE) #572 Turn a table of numbers (up to 2,000 rows) into a two-dimensional map with PCA and exact t-SNE, coloured by a label column. See the explained variance, loadings, scree plot, KL divergence and how well neighbours are kept. Matches scikit-learn. Nothing is uploaded.