Hotjar
Hotjar provides session recordings, heatmaps, and
on-page feedback for web products. This destination forwards walkerOS events to
Hotjar via the official
@hotjar/browser SDK,
translating events into Hotjar.event(...) calls and handling identity and
SPA state changes.
Hotjar is a web destination in the walkerOS flow:
Installation
- Integrated
- Bundled
Configuration
This destination uses the standard destination config wrapper (consent, data, env, id, ...). For the shared fields see destination configuration. Package-specific fields live under config.settings and are listed below.
Settings
| Property | Type | Description | More |
|---|---|---|---|
siteId | integer | Your Hotjar site ID (e.g. 1234567). Find it in your Hotjar dashboard under Settings. | |
hotjarVersion | integer | Hotjar snippet version. Defaults to 6 (current). Override only if Hotjar releases a new version. | |
debug | boolean | Enable Hotjar debug mode for development troubleshooting. | |
nonce | string | CSP nonce for the injected Hotjar script tag. Required when using strict Content-Security-Policy. | |
identify | any | walkerOS mapping value resolving to { userId, ...attributes } for Hotjar.identify(). userId is extracted as the first argument; remaining keys become user attributes. |
Mapping
Per-event rules under config.mapping. For the standard rule fields (consent, condition, data, batch, name, policy) see mapping.
| Property | Type | Description | More |
|---|---|---|---|
identify | any | Per-event identity mapping. Resolves to { userId, ...attributes } -> Hotjar.identify(userId, attributes). | |
stateChange | any | SPA route change notification. Resolves to a relative path string -> Hotjar.stateChange(path). Used for accurate heatmaps on virtual page views. |
Examples
Combined features
A purchase fires Hotjar.identify then the renamed custom event in the canonical execution order.
Default event
A walker event becomes a Hotjar.event call with the event name as the custom Hotjar event.
Destination identify
Destination-level identify calls Hotjar.identify with the user id on every push as Hotjar recommends.
State change
An SPA navigation fires Hotjar.stateChange with the new path instead of a Hotjar custom event.
Renamed event
A mapping renames the event so the Hotjar custom event uses a canonical name like completed_purchase.
User login identify
A user login fires Hotjar.identify with userId and attributes before firing the event.
Consent
Hotjar has no runtime consent API. Consent is gated at the walkerOS level via
config.consent:
Unconsented events are blocked by the collector before reaching the destination.