Chartbeat
Client-only vendor. Chartbeat documents no server-side ingestion API. Its data comes from chartbeat.js (or its mobile SDKs), which pings ping.chartbeat.net every 15 seconds: the first ping of a page session registers the page view and the later pings carry engaged time. Signal’s server preset reproduces only that first ping, so it records page views without engaged time, recirculation or concurrents. Use it only where the browser script cannot run.
Prerequisites
Two values from your chartbeat.js snippet: config.domain (the Site ID, where traffic appears in Chartbeat) and config.uid (the numeric Account ID). There is no API key.
Configuration fields
| Field | Required | Description |
|---|---|---|
site_id | Yes | Chartbeat site ID (config.domain), sent as h. |
uid | Yes | Chartbeat account ID (config.uid), sent as g. |
domain | Yes | The domain of your pages, sent as d (e.g. www.example.com). |
API endpoint
GET https://ping.chartbeat.net/ping?h={site_id}&g={uid}&d={domain}
&p=/shop/shoes&i=Shoes&r=https://www.google.com/
&u={anonymous ID}&t={page-session token}&g0=Shop,Shoes&g1=JoThe keys are the ones Chartbeat documents in its integration QA guides (h, g, d, p, i, r, t, g0, g1), plus u, the visitor token chartbeat.js sends. t is one token per page view. The visitor’s IP address and user agent travel as X-Forwarded-For and User-Agent headers.
Event mapping
| Datafly event | Chartbeat |
|---|---|
page | Page-view ping (p path, i title, r referrer, g0 sections, g1 authors from properties.sections / properties.authors) |
| anything else | Not sent |
Consent
Default consent category: analytics.
Blueprint
Blueprint version 0.4.0, status client-only. One Default preset.