Six chart types — bar, horizontal bar, line, area, pie and donut — rendered as crisp SVG with scroll animation, hover tooltips and gradient fills. Type your data straight into HubSpot, pick a palette, and style every detail from the editor.
No spreadsheets, no embeds, no scripts to paste. Pure SVG, drawn in the browser, styled in the editor.
Two datasets as smooth curved areas with gradient fills fading from top to bottom. Default blue palette, Inter, curved cubic-bezier lines. Hover any point for a tooltip.
Six bars with an 8px corner radius on the sunset palette, warm cream background and Poppins. Bars grow upward on scroll.
Two smooth curved lines on a dark card with the forest palette and DM Sans — proof every color, grid and surface is a field. Hover dots appear at the nearest point.
Five segments with percentage tooltips on the violet palette, Georgia serif and a lavender card. Slices sweep in clockwise on scroll.
Five segments with a 55% center hole showing the total, high-contrast bold palette, Poppins and a warm card. Data labels on each slice.
Five items ranked by usage with a value label on each bar, corporate palette on a slate card with Source Sans 3. Bars grow left to right on scroll.
Charts Pro is an interactive data-visualisation module for HubSpot CMS. It renders six chart types — bar, horizontal bar, line, area, pie and donut — as pure SVG, drawn in the browser with dependency-free vanilla JavaScript. You enter data right in the HubSpot editor through repeater fields; charts animate on scroll, show tooltips on hover, and every visual property is a Style-tab field. No code, no spreadsheets, no external APIs.
Simple mode (single series): a repeater of 1–20 rows, each a label and a value. Default rows ship in, so a chart renders the moment you drop it on the page.
Multi-series mode (bar, horizontal bar, line, area): a categories repeater for the X-axis labels plus a datasets repeater (1–5 series), each with a name and comma-separated values. Values are trimmed, stripped of non-numerics, and padded or truncated to match the category count.
Value formatting adds a prefix (e.g. $), a suffix (e.g. %), a thousands separator and an optional percentage in tooltips. An accessible data table can be hidden, shown beneath the chart, or rendered screen-reader-only.
Nothing is hardcoded — 48 Style fields across nine groups:
Nine palettes are built in — Default (blue), Ocean, Sunset, Forest, Violet, Monochrome, Corporate, Pastel and Bold. Pick one and colors auto-assign to your data, cycling if you have more than eight items. Choose Custom for eight manual color pickers. Every demo above uses a different palette and font from the same module.
IntersectionObserver, and fully disabled when the visitor has prefers-reduced-motion set.createElementNS.