# Bullet vs gauge

> Two ways to show a value against a target.

**Short answer.** Use a bullet chart to show several measures against their targets in one compact card, with ranges behind. Use a gauge for one headline reading and how close it is to a limit.

Updated Nov 2, 2026 · Logistics sample data

## 008 · Bullet

Three KPIs, each with its target and ranges.

Fleet KPIs against target, bullet. Fleet KPIs today against target: fleet utilisation 76% of 85%, on-time deliveries 93% of 95%, stops per van 41 of 45.

| KPI | Actual | Target | Poor up to | OK up to | Good up to |
| --- | --- | --- | --- | --- | --- |
| Fleet utilisation | 76% | 85% | 60% | 80% | 100% |
| On-time deliveries | 93% | 95% | 90% | 95% | 100% |
| Stops per van | 41 | 45 | 35 | 42 | 50 |

## 021 · Gauge

Only the first one, fleet utilisation, on a dial: 76% against the 85% limit.

Fleet utilisation, gauge. Fleet utilisation is at 76%; the overload mark is at 85%.

| Measure | Value |
| --- | --- |
| Fleet utilisation | 76% |
| Overload mark | 85% |

**Same KPIs.** The bullet chart fits all three measures and shows that every one is short of its target. The gauge gives one reading the full card: utilisation at 76%, below the 85% overload line.

## If you ask

| Question | Use a |
| --- | --- |
| How do several measures stand against plan? | Bullet |
| How close is one reading to its limit? | Gauge |
| Is the card small? | Bullet |
| Is there one number that matters most? | Gauge |

## Bullet and Gauge compared

|  | Bullet | Gauge |
| --- | --- | --- |
| Answers | Several measures against their targets | One reading against a limit |
| Shows | A bar, a target tick and ranges | A needle on a half dial |
| Best when | Scorecards, KPI rows | One headline reading |
| Avoid when | There is no target | There are several values |
| Data shape | Actual, target and ranges per measure | One value from 0 to 100%, a threshold and a label |

## Common mistakes

### Bullet

- **No target tick.** Without a target it is just a bar.
- **Ranges in loud colours.** Keep the ranges in greys behind the bar.

### Gauge

- **Several gauges in a row.** Dials compare badly; use bullets.
- **No threshold.** A gauge without a limit says little.

## Other ways to show it

- [020 · Progress ring](https://usechartory.com/charts/progress-ring): Part of a whole · AI data
- [128 · Limit tracks](https://usechartory.com/charts/limit-tracks): Compare items · AI data
- [065 · Ring grid](https://usechartory.com/charts/ring-grid): Compare items · E-commerce data

## Bullet, gauge and the other 130 types.

In Figma and React, in four sizes, light and dark. Pay once, every update. [See plans](https://usechartory.com/pricing). [Bullet type page](https://usechartory.com/charts/bullet) · [Gauge type page](https://usechartory.com/charts/gauge)

## Questions

### Why are bullets more compact?

They are bars, so several stack in the space of one dial.

### Can a gauge show a target?

Yes, as the threshold mark on the dial.

### Do both come in every size?

Yes. Bullet and Gauge come in XS, S, M and L, each laid out again for its size, in light and dark.

### Do they install the same way?

Yes, one command each: npx shadcn add @chartory/bullet and npx shadcn add @chartory/gauge.

## More comparisons

- [Radar vs parallel coordinates](https://usechartory.com/compare/radar-vs-parallel-coordinates)
- [Funnel vs sankey](https://usechartory.com/compare/funnel-vs-sankey)
- [Line vs area](https://usechartory.com/compare/line-vs-area)
- [Bars vs horizontal bars](https://usechartory.com/compare/bars-vs-horizontal-bars)

Still not sure? Start from what the chart has to show. [Open the Chart Chooser](https://usechartory.com/chooser)
