Tracking
First-party page views, clicks, and product events — captured, attributed, and fed back into the CRM.
Tracking captures first-party behavioral events — page views, clicks, form submissions, and product events — from your website and app. Those events tie back to contacts and accounts, so your CRM reflects what people actually do, not just what you've typed in.
Event types
Pact recognizes a set of built-in event types and accepts any custom type you send:
page_viewclickform_submitvideo_playdownload_pdf- any custom
event_typestring you define
The Tracking page surfaces your highest-volume event types as KPIs, with a live feed of recent events.
What an event carries
Each event records its type, when it happened, the visitor's distinct_id, an optional session_id, the url and referrer, a free-form properties object, and the source it came from. When an event is linked to a contact_id or account_id, it shows up on that record's timeline and engagement view.
{
"event_type": "page_view",
"distinct_id": "anon-7f3a",
"url": "https://acme.com/pricing",
"referrer": "https://google.com",
"properties": { "plan_viewed": "growth" },
"dedupe_key": "pageview-pricing-page"
}
Ingest and idempotency
Events arrive through the Pact SDK on your site or via a server-side POST /v1/tracking/events. Include a dedupe_key and Pact will ignore a repeat with the same key — so a retried request never double-counts.
Sources and health
Events are grouped by source — web, server, mobile, and api. Each source shows a health status based on how recently it last sent: healthy within five minutes, degraded within an hour, down beyond that. It's an at-a-glance way to catch a broken tag.
Attribution and feeding the CRM
Tracked events are stitched to people through the distinct_id and, once known, contact_id / account_id. From there they power buying signals on accounts and feed the segments you push through activation.
Tracking respects consent
The tracking channel is part of the consent model. Visitors who haven't granted
tracking consent in regulated jurisdictions are handled according to your
compliance rules.