Free Histogram Maker

Paste a column of raw numbers and see how they are distributed. The tool groups the values into equal-width bins automatically, or you can set the bin width and starting point yourself.

Distribution of Exam ScoresHistogram of 40 observations in 9 bins from 50 to 95. Mean 75.68.Distribution of Exam Scores40 students50556065707580859095Score0123456789Number of students33489544
View chart data as a table

Histogram of 40 observations in 9 bins from 50 to 95. Mean 75.68.

Frequency table (9 bins of width 5; each bin includes its lower edge, the last bin also includes its upper edge)
BinCountPercent
50 – 5500.0%
55 – 6037.5%
60 – 6537.5%
65 – 70410.0%
70 – 75820.0%
75 – 80922.5%
80 – 85512.5%
85 – 90410.0%
90 – 95410.0%

Download your chart

PNG, JPEG, SVG and PDF downloads are created in your browser once the editor loads.

How to make a histogram

  1. Paste or type your raw observations into the Value column, one number per row, such as each student’s score or each order’s delivery time.
  2. The tool chooses bins automatically using the Freedman–Diaconis rule, falling back to Sturges’ rule.
  3. To control the bins, open Customize → Chart options and choose “Number of bins” or “Bin width”, optionally setting where the first bin starts.
  4. Choose whether bar heights show counts or percentages, and optionally mark the mean.
  5. Open View chart data as a table under the preview to see the exact frequency table, then download.

Data format

ColumnTypeNotes
ValueNumberRequired

Up to 20,000 rows. Enter raw observations — one number per row (for example, each student’s score). The histogram groups them into equal-width bins and counts how many fall in each. Paste a whole column from a spreadsheet to fill it quickly.

Customization options

  • Binning: automatic, a target number of bins, or an exact bin width and start value.
  • Counts or percentages on the y-axis.
  • Mean marker: a dashed line at the average.
  • Bar labels showing each bin’s count.
  • Bar color, borders, axis titles and gridlines.

Downloading and exporting

  • PNG: best for slides, documents and the web. It supports transparent backgrounds, and you can choose standard, 2×, 4× or slide-sized (1920 × 1080) output.
  • JPEG: a smaller file with a solid background.
  • SVG: a true vector file. It stays sharp at any size and can be edited in Illustrator, Inkscape or Figma.
  • PDF: vector PDF sized to the chart, A4 or US Letter. If your labels use characters outside the standard PDF fonts (for example Chinese, Arabic or emoji), the PDF uses a high-resolution image instead and tells you.
  • CSV and .json: your data, or the whole chart with its settings, to re-open later.

When to use a histogram

  • Seeing the shape of a dataset: symmetric, skewed, bimodal, or with outliers.
  • Checking process measurements against specification limits.
  • Summarising large samples such as response times, test scores or ages.

When to choose a different chart

  • Your data is already in categories (product names, colors). Use a bar graph.
  • You want to compare distributions across several groups. Side-by-side box plots are clearer.
  • You have fewer than about 20 observations. With so few points, the shape depends heavily on the bin choice.

Common mistakes to avoid

Choosing bins that tell a story

Very wide bins hide detail, while very narrow bins create noise. Try a few bin widths. If the overall shape changes dramatically, say so in your caption.

Entering pre-counted data

This tool expects raw values. If you already have counts per range, use the bar graph maker with the ranges as categories.

Gaps between bars

Histogram bars should touch because the scale is continuous. Gaps would suggest categories with missing values in between.

Practical examples

Exam scores

40 students’ scores with a bin width of 5 starting at 50. The distribution peaks at 75–80 and is roughly symmetric.

Delivery times

Hours from order to delivery for 500 orders. A long right tail reveals a handful of very late deliveries worth investigating.

Customer ages

Ages with bin width 10 starting at 0. Show percentages so the chart is comparable with another region of a different size.

How values on bin edges are counted

Bins are equal-width intervals. Each bin includes its lower edge but not its upper edge, written [lower, upper). A score of exactly 80 with a width of 5 falls in the 80–85 bin, not 75–80. The only exception is the final bin, which also includes its upper edge so that the maximum value is always counted.

Automatic binning uses the Freedman–Diaconis width (2 × IQR ÷ ∛n), which resists outliers. It falls back to Sturges’ rule (⌈log₂ n⌉ + 1 bins) when the interquartile range is zero. The width is then rounded to a tidy 1, 2, 2.5 or 5 × 10ⁿ so the axis labels are easy to read.

Frequently asked questions

What is the difference between a histogram and a bar graph?

A histogram groups continuous numeric data into ranges and its bars touch. A bar graph compares separate categories and its bars are spaced apart.

How many bins should I use?

There is no single right answer. The automatic setting is a sensible start. A common rule of thumb is between 5 and 20 bins, with more bins for larger datasets.

Can I paste thousands of values?

Yes, up to 20,000 observations. Only the first few hundred rows are shown in the editor table, but every value is included in the chart.

Can I show percentages instead of counts?

Yes. In Chart options set “Bar height shows” to Percent of observations.

Does it draw a normal curve?

Not currently. You can mark the mean, and the frequency table under the chart gives exact counts and percentages per bin.

Your data stays private

Charts are drawn by your browser. Your data isn’t uploaded to our servers; it is kept only in this browser’s storage, for autosave and saved charts, until you clear it. See our privacy policy.

Related guides