Designers

All 141 tools / Charts and data

Check a chart spec for misleading design, with the lie factor worked out when the baseline is truncated

Chart honesty checkFreeFor designers, researchers and product teams

10 min

saved on a typical run. Our estimate, against computing the lie factor and drawn size ratios by hand.

Before: what you give it

The example input, as typed in. You give it structured JSON.

spec: {"type":"bar","title":"Revenue","threeD":false,"labels":["2023","2024"],"series":[{"name":"Revenue","values":[50,52]}],"axis":{"min":48,"max":54},"decoration":["gradient","shadow","heavyGridlines"]}

After: what comes back

The first lines of a real run on that input. Nothing here is edited by hand.

Chart lint: bar chart, 1 series, 2 points
1 error, 3 warnings, 1 note.

[ERROR] truncated-baseline: The bars start at 48 instead of zero. Lengths are read as proportions, so the largest value (52) is drawn 100% taller than the smallest (50) while the data differs by 4%. Lie factor 25 (graphic effect divided by data effect; 1.00 is honest). Start at zero, or switch to a dot plot or line where a non-zero baseline is accepted.
[WARN] no-source: No source. Add who collected the data and the date, so the numbers can be checked.
[WARN] no-units: No units or value-axis label. A bare number leaves the reader guessing between counts, percent and currency.
[WARN] chartjunk: 3 decorative elements reported (gradient, shadow, heavyGridlines). Each one uses ink that carries no data, which lowers the data-ink ratio (share of the ink that shows data). Remove or lighten ones that do not help reading.
[INFO] thin-title: The title "Revenue" is one or two words. Say what is measured, where and when.

What you get

Findings with severity, a plain explanation and the numbers, covering baselines, 3D, dual axes and pies

What it cannot do

Reads a JSON spec, not an image of a chart; the lie factor comes from your first series only.

Who it is for

  • Designers
  • Researchers
  • Product teams

Free and Pro

Free25 runs a day per IP address, up to 50,000 characters a run.
ProNo daily limit, 300 requests a minute, up to 200,000 characters a run.

What each plan includes

Use it from your assistant

The tool is called chart_lint. Connect the server once, then ask for it by name or just describe the job. Install steps for each app.

claude mcp add --transport http designers https://designers.allthepossibles.com/mcp
curl -X POST https://designers.allthepossibles.com/api/chart-lint -H 'content-type: application/json' -d '{"spec":{"type":"bar","title":"Revenue","threeD":false,"labels":["2023","2024"],"series":[{"name":"Revenue","values":[50,52]}],"axis":{"min":48,"max":54},"decoration":["gradient","shadow","heavyGridlines"]}}'

Try it here

The form starts with the same example input, so you can run it first and then swap in your own.

More in charts and data

All charts and data tools