Home / Chart types / Bar Chart
Bar chart maker
Compare values across categories. Paste a table or describe your numbers, and get a bar chart with a zero baseline, sorted bars and labels that fit. Export as PNG, SVG or PDF on the free plan, no account needed.
Your bar chart will appear here
Paste a table or describe your numbers, then press Generate chart.
Switching type redraws the data you already have. Nothing you paste is stored — the chart lives in this browser tab until you export it.
What a bar chart does better than anything else
A bar chart encodes value as length, and length is the one visual channel people read accurately without training. Ask someone to compare two angles in a pie chart and they will be roughly right. Ask them to compare two areas in a bubble chart and they will be badly wrong — most people underestimate area differences by half. Ask them to compare two bar lengths and they will be almost exactly right.
That is the whole argument for bar charts, and it is why they remain the default for comparison after forty years of people trying to invent something more interesting.
The trade-off is that a bar chart says one thing. It answers "which is bigger, and by how much" and nothing else. It will not show you a trend, a relationship or a distribution. When you want one of those, the chart is wrong no matter how well it is drawn.
Bar chart or column chart?
Strictly, a column chart has vertical bars and a bar chart has horizontal ones. In practice almost nobody outside of Microsoft's menus maintains the distinction, and "bar chart" is used for both. This page uses vertical bars. If your category names are long, or you have more than about fifteen of them, the horizontal version is the one you want.
When to use a bar chart
It is the right chart for:
- Comparing categories that have no natural order — revenue by region, headcount by department, votes by party, spend by vendor
- Ranking — the top ten anything, where the point is the order as much as the values
- Survey results where each option has a count, and respondents could pick one answer
- A single measure across a small time series — quarterly revenue, monthly signups over eight months — where you want each period read as a discrete amount rather than a continuous flow
- Before-and-after pairs, where two bars sit next to each other and the gap is the finding
Reach for something else when:
| Your situation | Better chart | Why |
|---|---|---|
| Tracking a value over many time periods | Line chart | Twenty-four monthly bars become a picket fence; a line shows the shape |
| Parts that must sum to 100% | Pie or donut | A bar chart does not signal "these add to a whole" |
| More than about fifteen categories | Horizontal bar | Vertical labels start rotating and become unreadable |
| Comparing two or three measures per category | Grouped bar | One bar per category can only carry one number |
| Totals and their composition | Stacked bar | Shows the total and the mix in the same bar |
| Differences smaller than 2% of the total | A table, or a chart of the differences | Bars start at zero, so tiny differences vanish |
That last row is the one people fight hardest. If your values are 98.1, 98.4 and 98.2, a zero-baselined bar chart shows three identical bars — which is honest, because the differences genuinely are tiny relative to the values. If the difference matters anyway, the answer is a different chart, not a truncated axis.
The parts of a bar chart, and what each one is for
- Value axis — starts at zero, always. Runs vertically on a standard bar chart.
- Category axis — one slot per category. No zero, no scale, just labels.
- Bars — length is the value. Width carries no meaning and should be constant.
- Gap between bars — should be narrower than the bars themselves. Wider gaps make the chart feel sparse; no gap turns it into a histogram, which means something different.
- Title — states the finding, not the variables. "Q4 was the strongest quarter" beats "Revenue by quarter".
- Subtitle — carries the units and the period. "Revenue in $ thousand, FY 2025–26".
- Source line — small, at the foot of the chart. If it is going into a deck someone else will forward, this is what stops the "where is this from?" email.
Three worked examples
1. A simple ranking
Data:
Region Revenue North 42 South 51 East 47 West 68
Prompt: Bar chart of revenue by region, in $ thousand, sorted highest first
What you get: four bars in descending order, West first. Axis from zero. The subtitle carries "$ thousand" so the axis reads 0, 20, 40, 60 without you writing "thousand" four times.
Why sorted: these regions have no natural order, so alphabetical or spreadsheet order is arbitrary. Sorting by value makes the ranking readable in one glance.
2. A time series short enough for bars
Data:
Quarter Revenue Q1 42 Q2 51 Q3 47 Q4 68
Prompt: Bar chart of quarterly revenue in $ thousand. The point is that Q4 was the strongest quarter.
What you get: four bars in calendar order — not sorted, because time has a natural order and reordering it would be wrong. The title states the finding rather than naming the axes.
Why not sorted: the rule is that you sort categories and never sort time. Q1 must come before Q2 whatever the values do.
3. Survey results
Data:
Reason Count Price 312 Missing feature 244 Switched to competitor 198 Poor support 121 No longer needed 87
Prompt: Horizontal bar of the top reasons customers cancelled, sorted
What you get: horizontal bars, because "Switched to competitor" is too long to sit under a vertical bar without rotating. This is the most common reason to reach for the horizontal version instead.
Sorting: the rule that fixes most bar charts
Three cases, and the right answer for each:
- Categories with no inherent order (regions, products, vendors, reasons) → sort by value, descending. Almost always. The ranking is usually the point.
- Categories with an inherent order (time, age bands, Likert scales from "strongly disagree" to "strongly agree", small/medium/large) → keep the natural order. Sorting these by value destroys the information.
- Comparing against a previous chart (same categories, different period) → keep the order fixed across both charts, even if it means neither is sorted by value. Two charts with different bar orders cannot be compared visually.
Say sort descending or keep calendar order and ChartGPT will follow it.
Five things that ruin a bar chart
1. A truncated axis. Starting at 90 instead of 0 makes a 3% difference look like a 300% difference. This is the most common way charts mislead people, and it is usually accidental — Excel does it by default when values are clustered. Bars encode length, so if the axis does not start at zero, the length is lying. ChartGPT always starts at zero.
2. Too many bars. Past about fifteen, the labels rotate and the chart becomes a puzzle. Either switch to horizontal, group the tail into "Other", or accept that you have a table rather than a chart.
3. A colour per bar. Five bars in five colours implies five categories that differ in kind. If they differ only in value — which is the whole point of a bar chart — one colour is correct, and ChartGPT draws a single series in one colour.
4. 3D. A 3D bar chart adds a perspective distortion to the one channel you chose the chart for. There is no case where it helps. ChartGPT does not draw them.
5. A title that names the axes. "Revenue by quarter" tells the reader what they can already see. "Q4 was the strongest quarter of the year" tells them why the chart is on the slide. Tell ChartGPT what the chart is for and it writes the second kind.
Getting your data in
What pastes cleanly:
- A range copied from Excel or Google Sheets (tab-separated)
- CSV, pasted straight into the box
- A markdown table copied from a document or web page
- A plain sentence:
Q1 42, Q2 51, Q3 47, Q4 68
What it handles without you cleaning it first:
- Merged header cells
- A totals row at the bottom — read as a total rather than drawn as a giant bar
- Numbers stored as text, with commas, currency symbols or trailing spaces
- Blank rows in the middle
Limits: 500 rows per paste, on every plan. A bar chart with 500 rows is not a bar chart, so this is rarely the binding constraint here — it matters more for long time series.
Headers matter. Keep them. Your column headers become the axis label and the series name, which saves you retyping them.
How to make one
- Paste your data into the box above, or type the values into a sentence.
- Say
bar chartso it does not have to infer the type from the shape of your data. - Name your units — dollars, thousands, percent, headcount — so the value axis and subtitle read correctly.
- Say what the chart is for. "The point is that West doubled" produces a different, better title than no instruction at all.
- Adjust in plain words.
Sort descending.Keep calendar order.Shorten the title.Group anything under 3% into Other. - Export — SVG for anything that will be projected or resized, PNG for a quick paste into a doc or a message, PDF for print.
Bar charts in ChartGPT vs a spreadsheet
Excel and Sheets will both draw a bar chart, and for one chart with clean data they are fine. The difference shows up in the defaults and in the repetition.
| Spreadsheet | ChartGPT | |
|---|---|---|
| Axis baseline | Sometimes truncated automatically | Always zero |
| Sorting | Manual — you re-sort the source data | Ask for it in words |
| Title | Defaults to the column header | Written to state the finding |
| Messy paste | You clean it first | Totals rows and text-numbers handled |
| Consistency across charts | Depends on who made which | Same renderer every time |
| Colour | Full palette by default | One colour, so length does the comparing |
| Editing | Menus and dialog boxes | A sentence |
Where a spreadsheet wins: calculations, pivots, and anything you need to recompute. ChartGPT does not do arithmetic on your data — it starts once you have the numbers you want to show.
Bar chart variants
- Grouped bar — two or three series side by side within each category. For comparing this year against last year across regions.
- Stacked bar — segments stacked within each bar. For showing a total and its composition at once. Only the bottom segment shares a baseline, so middle segments are hard to compare precisely.
- Horizontal bar — bars run left to right. For long category names and for rankings with more than about fifteen entries.
Exporting
SVG — vector, stays sharp at any size. Use this for slides, especially anything that will be projected, and for print.
PNG — rendered at twice the display resolution so it survives being scaled up in a deck or screenshotted for LinkedIn.
PDF — one chart on one A4 landscape page, ready to print.
All three are on every plan, including free, and none of them needs an account. See pricing for what the paid plans add.
Bar chart FAQ
Should the bars be sorted?
Sort them when the categories have no natural order — regions, products, reasons. Keep the natural order for time periods, age bands and rating scales. If you are comparing against another chart, keep both in the same order even if neither is sorted by value.
Can I start the axis somewhere other than zero?
No. Bars encode value as length, so a non-zero baseline makes the lengths misleading, and ChartGPT always starts at zero. If your differences are small relative to the values, that is the chart telling you something true — a bar chart is not the way to show them.
How many bars is too many?
Around fifteen for vertical bars, mostly because labels stop fitting. Horizontal bars stretch to about thirty before the chart gets too tall. Past that, group the tail into "Other" or use a table.
What is the difference between a bar chart and a histogram?
A bar chart compares separate categories, and the bars have gaps. A histogram shows the distribution of one continuous variable across bins, and the bars touch because the bins are adjacent ranges. They look similar and mean different things.
Is the bar chart maker free?
Yes. Bar charts are on the free plan, with PNG, SVG and PDF export and no account needed to try it. The free plan covers 15 charts a calendar month and pastes of up to 500 rows. Charts you make are yours to use commercially, including in client work, with no credit required. See pricing.
Make your bar chart now.
Paste your numbers into the box and export in a few seconds. Nothing to install, nothing to sign up for.