Plans & Limits
Feature comparison, render limits, and what each plan includes.
No sign-up needed to get started. GET requests work without authentication – up to 200 renders per month per IP. Sign up for free to unlock API keys and 1,337 renders per month.
Feature comparison
| Feature | Free$0 | Pro$29/mo |
|---|---|---|
| Renders | 1,337 / mo | 100,000 included |
| Overage Opt in to keep rendering beyond your included quota. | – | $1 / 5,000 |
| Output | PNG, SVG | PNG, SVG |
| MCP server Connect AI agents via Model Context Protocol for tool-based chart generation. | ||
| Global CDN Identical GET requests are served from the edge instantly and don't count against your render limit. | ||
| Saved charts Save chart configs server-side and embed the short URLs anywhere <img> tags work. | ||
| Custom themes and fonts Create fully custom themes with your own typography, spacing, and palette. Use any Google Font via `themeOverrides.fontFamily`. |
Feature details
API keys – Unauthenticated GET requests are limited to 200 renders per month per IP. Sign up for a free account to get API keys and 1,337 renders per month. See Authentication.
Saved charts – Pro users can POST /api/charts to save a config server-side and get back a short, embeddable URL. Drop the URL in emails, Markdown, Slack – anywhere <img> tags work. Each fetch counts as one render. Configs are capped at 50 KB. Charts persist while you're on Pro; downgrading pauses them for a 30-day grace period before deletion. Revocable per-id via DELETE /api/charts/\{id\} or all at once from the dashboard. See Saved charts.
Custom themes – Create fully custom themes with your own typography, spacing, and palette. Available on Pro. See all theme properties.
Overage billing – Pro users can opt in to overage billing from the dashboard. Once enabled, renders beyond your included 100,000 continue at $1 per 5,000 additional renders, billed at the end of the billing period. You'll receive email notifications at $1, $5, $10, $25, $50, $100, $250, $500, $1000, then every $1,000.
Rate limits
When you exceed your monthly render limit (and overage billing is not enabled), the API returns 429 Too Many Requests:
{ "error": "Monthly render limit exceeded. Enable overage billing at szum.io/dashboard/billing." }Limits reset on the 1st of each month (UTC).
Need more?
Need a custom SLA or volume pricing? Let's talk.