Overview
Events are the foundation of analytics in Trodo. Every user action you capture—from page views to custom product events—is stored as an event with associated properties.Event Structure
Every event has this structure:Event Types
Auto-Events
Captured automatically only whenauto-events="true" (or Trodo.enableAutoEvents()). Examples of implemented names:
| Event | Trigger (summary) |
|---|---|
page_view | Load / route |
element_click | Any click |
rage_click | Rapid repeated clicks on the same element |
dead_click | Click with no navigation or DOM change after a short window |
page_scroll | Increasing scroll depth |
form_submit | Form submit |
form_validation_error | Native invalid field |
form_abandoned | Started a form, left without submit |
media_play / media_pause | Video or audio |
text_selection | Text highlighted |
copy_action / context_menu | Copy / right-click |
js_error / network_error | Errors (when enabled) |
page_performance | Core vitals-style summary after load |
exit_intent / page_summary | Engagement / exit aggregates |
set_group / add_group.
Custom Events
Tracked via SDK:Properties
Properties provide context to events. They come in several categories:Default Properties
Auto-captured on every event:- Identifiers
- Location
- Device & Browser
- Screen & Page
- UTM & campaign
| Property | Description |
|---|---|
team_id | Your Trodo team |
session_id | Current session |
distinct_id | User identifier |
website_id | Site identifier |
event_type | auto or custom |
event_name | Name of the event |
event_category | Category grouping |
timestamp | Event time (ISO 8601) |
Custom Properties
Add your own properties to events:Event-Specific Properties
Auto event payloads vary byevent_name. Examples:
element_click (abbreviated):
page_scroll:
Property Data Types
| Type | Example | Notes |
|---|---|---|
| String | "enterprise" | Max 255 chars for indexed fields |
| Number | 1500.50 | Integer or decimal |
| Boolean | true / false | |
| Date | "2024-01-15" | ISO 8601 date |
| Datetime | "2024-01-15T10:30:00Z" | ISO 8601 with time |
| Array | ["slack", "email"] | Homogeneous type recommended |
| Object | {name: "...", value: 100} | Nested properties |
Best Practices
Event Naming
Usesnake_case with clear action verbs:
Property Naming
Property Values
High-Cardinality Properties
Avoid properties with unlimited unique values:Limits
| Limit | Value |
|---|---|
| Event name length | 255 characters |
| Property name length | 255 characters |
| String property value | 8,192 characters |
| Properties per event | 255 |
| Array items | 255 |
| Object nesting depth | 5 levels |
Next Steps
Track Events
Learn the track() method
Auto-Events
Automatic event names and configuration
Groups
Group keys, membership, and enrichment
Default Properties
Full property reference