What Crazy Egg traffic looks like
Crazy Egg is heatmap-first rather than replay-first, and that changes what "working" means. Data is collected against snapshots, so a correctly installed script on a page with no active snapshot produces traffic and no report.
- Endpoint pattern
- The script loads from
script.crazyegg.com, with the account number in the path;ce.crazyegg.comserves supporting assets and configuration; behaviour data is collected attracking.crazyegg.comandtrack.crazyegg.com - Transport
- Script load, then collection requests carrying click coordinates, scroll depth, and page context. Recordings, where enabled, add a continuous stream
- Client API
- The
CE2global and theCE_SNAPSHOT_NAMEvariable, used to name a snapshot explicitly on sites where one URL serves several page states - Key parameters
- The account number in the script path, plus the page identity the collection call reports against. That page identity is what a snapshot is keyed on
The hosts, and what each one means when it appears:
script.crazyegg.com/pages/scripts/<account>/… script loaded, account identified
ce.crazyegg.com supporting assets and configuration
tracking.crazyegg.com / track.crazyegg.com clicks, scrolling, page context
Debugging Crazy Egg with Event Watcher
- No dedicated parser. Requests are matched by hostname, named Crazy Egg, badged with the Session Replay category, and shown with parsed query and body parameters plus cookies set and sent.
- The account number in the script URL confirms which Crazy Egg account a page reports to, without opening the dashboard.
- The distinction that saves the most time: script loading and data collecting are two separate observations. Collection traffic on
tracking.crazyegg.comproves the page is being measured. Its absence, with the script present, points at the snapshot rather than the installation. - Grouping by Page shows what page identity Crazy Egg is reporting against, which is the root of most "the heatmap covers the wrong thing" reports on templated or parameterized URLs.
- Script Tree attributes the script to the site's template, a tag manager, or another script.
Crazy Egg and consent
Analytics consentEvent Watcher checks Crazy Egg against the analytics consent category.
Heatmaps feel less invasive than session replay, and for click and scroll data that is fair. It stops being fair where recordings are enabled, which is a per-account feature rather than a separate product, so the consent posture should be set for what the account has switched on rather than for what the tool is generally assumed to do. The verifiable part is the same either way: no collection traffic before analytics consent resolves.
Common debugging scenarios
- The heatmap is empty. Confirm collection traffic exists for the page. If it does, the snapshot is the problem: not started, expired, or keyed to a different page identity.
- One snapshot mixes several page states. Check the page identity being reported and consider setting
CE_SNAPSHOT_NAMEso the states separate. - Data stops after a URL parameter changes. Parameterized URLs can split or merge snapshots unexpectedly. Group by Page to see how Crazy Egg is bucketing them.
- Which account is installed? Read the account number from the
script.crazyegg.compath. - Crazy Egg fires before consent. Filter to Crazy Egg and read the consent verdict on the first collection request.