Plans and limits

Feature comparison, render limits, and what each plan includes.

No sign-up needed to get started. GET requests work without authentication – up to 100 renders per month per IP. Sign up for free to unlock API keys and 500 renders per month.

A render is one chart output Szum produces when a request reaches the origin: an API image, editor export, saved image, fresh embed response, MCP preview, or MCP image. CDN cache hits, local editor previews, Figma canvas renders, validation, saving, and client-side interactions do not count. Guest MCP previews are complimentary; opening their static image uses the separate anonymous MCP image allowance.

Feature comparison

FeatureFree$0Creator$9/ monthPro$29/ month
Capabilities
Visual chart builder

Design charts in your browser – pick a type, edit the data, switch themes, and export. No code, no signup.

Chart renders

Render as PNG or SVG from a stable URL. Drop into emails, PDFs, Markdown, Slack – anywhere `<img>` works.

PNG, SVGPNG, SVGPNG, SVG
Interactive embeds

Live HTML for any `<iframe>`. Hover tooltips, legend toggle, sized to its container.

MCP server

Connect agents via Model Context Protocol for tool-based chart generation.

Figma plugin

Insert publication-quality charts directly into your Figma designs.

Theme customization & fonts

Customize a curated theme's typography, spacing, and palette. Use any Google Font through theme overrides.

Remove Szum branding

Free and keyless renders carry a small “Made with Szum” credit. Creator and Pro renders ship without it. Figma plugin inserts are always credit-free.

Support–EmailPriority email
Usage
Chart renders5005,00025,000
Global CDN

Edge-cached globally so repeated requests can avoid an origin render.

Overage
Chart renders

Opt in to keep rendering past your monthly quota.

––$1 / 5,000

Feature details

API keys – Unauthenticated GET requests are limited to 100 renders per month per IP. Sign up for a free account to get API keys and 500 renders per month. See Authentication.

Saved charts – Any signed-up account can POST /api/charts to save a chart document server-side and get back two short URLs: szum.io/c/{id} for a rendered image (drop in emails, Markdown, Slack – anywhere <img> works) and szum.io/e/{id} for an interactive HTML embed (drop in any <iframe>). Only cache-miss loads cost a render against the creator's monthly quota; CDN cache hits are served from the edge for free. Stored documents are capped at 64 KB. Free and Creator storage is generous; Pro storage is effectively unlimited for normal use. Saved charts stay live on any plan – the storage budget only limits new saves and larger updates. Revoke one with DELETE /api/charts/\{id\} or all of them from Account → Settings. See Saved charts.

Theme customization – Creator and Pro can override a curated theme's typography, spacing, palette, and other exposed properties. See all theme properties.

Branding – Free and keyless renders carry a small "Made with Szum" credit – baked into static images (reserving a thin bottom band, see Sizing), and a clickable link on interactive embeds. Creator and Pro renders omit it. Attribution is resolved from the rendering account's plan rather than authored in the chart document. Charts inserted by the Figma plugin are never branded, on any plan.

Support – Creator includes email support. Pro includes priority email support.

Overage billing – Pro users can opt in to overage billing from the dashboard. Once enabled, renders beyond your included 25,000 continue at $1 per 5,000, 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": {
    "code": "limit_reached",
    "message": "Monthly render limit exceeded (25000/25000). Enable overage billing at https://szum.io/account/billing.",
    "retryable": true,
    "details": { "retryAfter": 86400 }
  }
}

This applies to cache-miss loads of /c/ or /e/ too – they return 429 when your render quota is exhausted and overage is off. CDN cache hits continue to serve while their entries are warm (~24h max), for free. Limits reset on the 1st of each month (UTC).

See Errors for the shared error envelope. For an exhausted monthly allowance, retryAfter gives the seconds until the allowance resets; the value above is illustrative. Wait for that reset or change the account's allowance before retrying. This is distinct from a temporary burst rate limit.

Need more?

Need a custom SLA or volume pricing? Let's talk.

On this page