Overview
Whenauto-events is enabled, Cryptique automatically captures user interactions without requiring any additional code. This provides comprehensive behavioral data out of the box.
Automatic Events
Declared but not yet firing:
element_hover, media_ended, session_start, session_end are in the config map but have no active tracking calls in the current SDK version.Event Details
page_view
Fires on every page load (DOM ready). In SPAs, also fires on History API navigation (pushState, replaceState) and hash changes.
element_click
Fires on any click. Captures rich coordinates and element context.rage_click
Fires when 3 or more clicks occur on the same element within 1 second — a strong signal of user frustration.dead_click
Fires when a user clicks an element that is not interactive and no navigation occurs within 1 second. Useful for finding broken or confusing UI elements.page_scroll
Fires whenever the user reaches a new maximum scroll depth on the page. Tracks the highest point scrolled — does not re-fire for upward scrolling.Fires with a 250ms debounce. Only fires when a new maximum depth is reached, so each percentage is recorded at most once per page load.
text_selection
Fires when the user selects ≥3 characters of text, as long as the selection differs from the previous one. Useful for understanding what content users find important.element_view
Fires when a tracked element becomes at least 50% visible in the viewport for at least 1 second. Requires the element to have anid attribute or data-cq-track attribute.
To track an element, it must have an
id attribute or a data-cq-track attribute. Elements without these are not observed.form_submit
Fires when an HTML form is submitted.form_validation_error
Fires on the HTML5invalid event when a field fails browser-native validation (e.g., required field empty, email format invalid).
form_abandoned
Fires viasendBeacon on beforeunload when the user leaves a page with a form they interacted with but did not submit.
form_focus, form_blur, and form_change events are intentionally suppressed — form_abandoned captures the meaningful signal without per-keystroke noise.media_play
Fires when a<video> or <audio> element starts playing. Throttled to once per 2 seconds per element.
media_pause
Fires when a<video> or <audio> element is paused. Throttled to once per 2 seconds per element.
media_play. media_current_time reflects the playhead position at the moment of pause.
js_error
Fires on uncaught JavaScript errors and unhandled promise rejections. Runtime error (window error event):
network_error
Fires when an XHR request returns HTTP status ≥400 or fails entirely. Only SDK-internal requests tosdkapi.cryptique.io are monitored — application XHR is not tracked.
HTTP error (status ≥400):
page_performance
Fires approximately 1500ms afterwindow load, once per page load, with Core Web Vitals and key timing metrics.
Standard Element Data Object
Most interaction events include anelement_data sub-object describing the element that was interacted with:
For video element clicks, additional fields:
For image element clicks, additional fields:
Event Envelope
Every auto-event automatically includes these context fields. No additional code is required.
See Default Properties for the complete list with descriptions.
Configuration
HTML Attribute
Enable auto-events and optionally suppress specific events directly on the script tag:auto-events-disabled-events.
JS Runtime API
You can also configure auto-events at runtime after the SDK has loaded:Exclude Paths
Prevent tracking on specific pages:/adminmatches/admin,/admin/users,/admin/settings(prefix match)- Case-sensitive
- Multiple paths separated by commas
Disable All Auto-Events
For complete manual control:Storage
Best Practices
Recommended Starting Configuration
For most Web3 apps, disable the noisiest low-signal events:When to Disable Specific Events
Supplement with Custom Events
Auto-events capture generic interactions. Add custom events for business-specific actions:Next Steps
Track Custom Events
Add business-specific events
Default Properties
See all auto-captured properties