How to make a bar chart

tl;drA bar chart is the simplest way to compare numbers across a small set of categories. Pick orientation based on label length, sort descending unless the categories have a natural order, start the axis at zero, use one color, and write a title that states the question the chart answers.

Decide what you actually want to show

Before opening any tool, write the question your chart answers. "How did revenue change from Q1 to Q4?" "Which countries have the largest population?" "What share of users picked each pricing tier?" The question dictates the chart variant. Comparison across categories with one number per category? Vertical or horizontal bar chart. Comparison of composition? Stacked or 100% stacked. Comparison across two series? Grouped. If your question has the word "trend" in it, you may actually want a line chart, not a bar chart.

Prepare your data

A bar chart wants two columns: a label and a number. The label is categorical (a name, a region, a month); the number is the value. If your data is in a spreadsheet, copy two columns and paste them into the tool — comma, tab, or pipe separators all work. Decimals, negatives, and thousands separators all parse correctly.

Bar chartApples28Bananas41Cherries17Dates33Figs2201020304050
Example chart

Pick orientation

Use vertical bars (columns) when categories have a natural order — usually time. Months along the x-axis, bars rising for each. Use horizontal bars when category names are long, when there are more than about eight categories, or when the data is ranked (top-N lists). Horizontal almost always wins for survey results, leaderboards, and country-by-country comparisons.

Make this chart on makebarchart.com.

Open the maker

Sort thoughtfully

Sorting is the single biggest design choice in a bar chart. Default to descending unless categories have a natural order. With ranked data, descending makes the dominant pattern instantly visible. With time-series data, never sort — chronological order carries information. With Likert-scale survey data, keep the original scale order.

Start the axis at zero

Bar length encodes value. If your axis doesn't start at zero, the lengths lie. This is true even when "starting at zero" makes the differences look small — the alternative is misleading the reader. If the differences really are small and you want to highlight them, switch to a line chart or annotate the chart with the exact deltas.

Color, sparingly

One color is usually right. Two if you're highlighting one bar against the rest. A full rainbow palette implies that the colors mean something, and most of the time they don't. For diverging data (positive vs negative), use two contrasting hues — blue and orange are the safest pair for color-blind readers.

Write a title that earns its keep

"Quarterly revenue" is a label, not a title. "Q4 revenue dropped 12% year over year" is a title. The chart title should make the chart's headline explicit so a reader who only sees the title still walks away with the message. If you can't write that title, your chart probably doesn't have a clear story yet.

Export

Export as PNG for slides and reports — the file is self-contained and renders identically anywhere. Export as SVG when you need to edit the chart in a design tool (Figma, Illustrator, Sketch) or embed it in a webpage where it should scale crisply at any size. Both are free and watermark-free.