ETL jobs that already output a small summary CSV for humans.
Data to chart
If you already have clean metrics - arrays, spreadsheet columns, API responses flattened to numbers - this page is the shortest path to a hosted chart image.
or drag and drop a .csv file here
Best for small exports (under 2MB / ~500 rows). Large files are trimmed automatically.
Preview
Column mapping
3 columns detected
Set each column's role, rename it for the legend, and edit values inline. Changes apply to the chart live.
Jan, Feb, Mar
12000, 18000, 15000
2000, 3500, 2800
Charting 2 series against Month.
Chart options
Advanced▾
Makes X and Y axis labels larger. Applies to bar, line, area, and horizontal bar charts.
Your data stays private
Heuristic parsing and the live preview run locally in your browser. We do not save or sell uploaded files.
PNG download and shareable chart URLs send chart values to our servers (routine request logs only — not stored).
What counts as “data” here
ChartKit needs ordered labels and at least one ordered numeric series. Everything else (title, currency, PNG vs SVG) decorates that spine.
Pipelines that produce JSON can map into query strings - see JSON to chart. Spreadsheet column exports map naturally to CSV to chart or the CSV box below.
Use cases
Notebook users who printed arrays and want a shareable graphic without matplotlib hosting.
PMs pasting Superset/Mode exports trimmed to a handful of rows.
Examples
Direct URL from known arrays
https://getchartkit.com/api/chart?type=line&labels=2019,2020,2021,2022,2023&s0=12,15,18,22,27&s0name=Headcount&title=Headcount+growth&valueFormat=number&format=svgCurrency-ready query
https://getchartkit.com/api/chart?type=bar&labels=P1,P2,P3&s0=125000.5,98000,140200&s0name=Bookings&valueFormat=currency¤cySymbol=%24&title=Pipeline&format=svgPNG for locked-down viewers
https://getchartkit.com/api/chart?type=area&labels=Sprint+1,Sprint+2,Sprint+3&s0=38,44,41&s0name=Points&title=Velocity&format=png&w=640&h=380How it works
Validate counts: every series must align with `labels` after trimming.
Pick `valueFormat` early so axes match how stakeholders talk (cash vs compact).
Store the final URL next to the dataset version in your changelog.
Use with ChatGPT or Claude
LLMs that emit structured rows can feed this page or the table to chart CSV flow.
Reference: URL parameters.
FAQ
- Do you upload my data to a server?
You request a chart image URL; data appears in the query string or request. Treat sensitive metrics accordingly.
- Can I embed in HTML?
Yes.
- Markdown?
Yes.
- JSON input?
JSON to chart explains mapping from objects to GET params.
- Free?
Public interactive use is supported within limits.