Behavioral intelligence data events are real-time records of actions users take - such as clicking a button, completing a purchase, or reaching the end of a page. By tracking these activities, you can trigger automated campaigns and build dynamic segments based on exactly how people engage (or fail to engage).
While a Custom Field represents persistent information you know about a person (like their Last Purchase or First Visit Location), an Event represents point-in-time data about an action a person took.
In our APIs and SDKs, you use the sendEvent JavaScript API to record these actions or the track events REST API.
Events can trigger automations, set goals, or define segment criteria - ensuring you respond instantly to exactly what people are doing on your website or in your app.
Every event you send consists of two core components:
whitepaper_download) used to target specific behaviors in your automation workflows.DailyStory supports reserved events, such as conversions and page visits, but also allows customers to create custom tracked events that start automations.
Conversion tracking and page visit tracking are both dedicated event type that are natively integrated with conversions funnels.
A data event can reach an automation in three ways. Together they let an automation respond to what a contact did — and, just as importantly, to what they never did.
Most nurture sequences send on a timer regardless of whether the contact is making progress. The Wait for an event condition replaces that timer with a question: did this contact do the thing yet?
Select the event to wait for and how long to wait. The contact continues down the Yes branch as soon as the event is recorded — they do not sit at the step for the rest of the window. If the window closes without it, they continue down the No branch.
By default only events recorded after the contact reaches the step count. Use the Also count the event if it happened option to look back before the step — for example when a contact may have acted while an earlier step was still running.
Send your trial emails only to the people still worth emailing. Track an event such as verification_submitted when a trial completes a setup step, then gate the sequence on it:
verification_submitted with a 48 hour window.The same pattern works in reverse. If an event tells you a trial is succeeding — they configured email marketing, say — set that event as an exit goal so they leave the nurture sequence instead of being sold something they have already adopted.
ImportantEvent names are matched exactly, ignoring case. The name you select in the automation must be the same name your application sends to the track events API.
While event data is highly flexible and can take any structure, we recommend maintaining a consistent data schema for events sharing the same name. Consistency ensures that your automation logic remains reliable and your reporting stays clean.
Below are some recommended patterns.
new_user:sign_up_button. This let's us know that the sign_up_button was clicked on the new user page.new_user_sign_up_button. Similar to the event name above.You can leverage this data to display personalized information in your messages, or use it in segments to filter users who performed the same action but with different values (such as filtering by a specific product category or price point).
Depending on your integration - whether via JavaScript or the REST API - the method for sending data may vary slightly. However, you can always access nested event data within your campaigns and segments using standard JSON dot notation.
purchase event includes order_id as a string once, keep it as a string for all future logs to prevent segment errors.event_value makes it even faster to query in the dashboard.100 (number) and "100" (string) differently. Ensure your SDK sends the correct data type for accurate filtering.