Efficient Engagement usage
In this guide provides best practices for optimizing your usage of the Engagement platform in terms of monthly processed events (MPE) and maximum event storage (MES). These tips and tricks will allow you to maximize Engagement usage and your license while maintaining functionality and insights.
Monthly processed events (MPE)
MPE refers to the data processing into or within the Engagement platform over 1 month. Various actions trigger events, such as when customers:
- View items
- Start new sessions
- Receive or open emails
Any events the system generates via API, web tracking, or any other import source require processing. The processed events count toward your MPE. they also incur costs covered by your contract.
Below is a complete overview of actions that do and don't generate events.
Do events get generated? | Yes | No |
---|---|---|
Web tracking | Yes, if Bloomreach SDK is enabled for the events specified there | |
Imports | Yes, events are imported | No, if customers, catalogs, or vouchers are imported |
Exports | No | |
API | Yes, if you send events via API | No, if you retrieve events, customers, catalogs |
BigQuery | Yes | |
Ad audiences | Yes | |
Emails | Yes | |
SMS and MMS | Yes | |
Push notifications | Yes | |
Yes | ||
Webhooks | Yes | |
Customer attribute update | No | |
Weblayers | Yes | |
In-app messages | Yes | |
Experiments | Yes | |
Recommendations | Yes, if they are "shown" or "clicked in" | |
Predictions | No |
Engagement tracks and processes
Different event attributes don't count as separate events. However, if events have the same name but differ in status, they are considered distinct events for MPE calculation purposes.
Duplicated events
If you send or import the same event multiple times, each occurrence will be treated as a new event. However, if there is a 1:1 duplication, deduplication takes place.
Event duplication can occur when you send the same event with different attributes multiple times. To avoid this, ensure only unique data is tracked or imported.
You can use deduplication of events to clean up and prevent the same event from being stored twice. However, the event will still be considered processed and counted toward your MPEs, even with deduplication.
How to reduce MPE
Go to Overview > Bloomreach usage to explore the efficiency of MPE in your account. It provides:
- A general overview of your MPE.
- Dashboards analyzing each communication channel.
- Data breakdowns to see which events and campaigns are used.
Follow these best practices to optimize your MPE and avoid common pitfalls.
MES > MPE
Your MES should be higher than your MPE.
If it is reversed, it might be because:
- You have launched a new website or a massive campaign.
- You have data expiration in place. For this reason, the number of events processed in the last 12 months can be higher than the number of events you have available in your project.
Import DELTA
Use DELTA imports to avoid importing the same event repeatedly. DELTAs only bring in new or updated data, preventing duplicate events and unnecessary processing, which increases your MPE.
Event tracking shows healthy signs
Check whether the number of your tracked events in the last few weeks is consistent with a healthy business.
These include:
Page_visit
can be tracked but doesn't need to be.View_category
,search_results
, andcheckout
are tracked for advanced users only.
The table below shows unhealthy signs in event tracking you should avoid.
Badly tracked events | Explanation |
---|---|
# cart_update > # view_item | Likely multiple pings for the cart_update event. |
# checkout > # view_item | Theoretically possible. However, checkout events are more useful than view_item . Track only critical steps of the checkout process to reduce their tracking. |
# view_category > 2 x # view_item | Some websites load new view_category events with every scroll, which is inefficient. |
# session_start > 10 x # session_end | Either session_end isn't loading, or multiple pings occur during session_start . |
# session_start > 5 x # view_item | # view_item should be higher than # session_start in a healthy business. |
# campaign enqueued ≠ # campaign sent | They should be within a 5% margin of each other. |
# banner clicked > # banner shown | An indication of wrong tracking in weblayer JavaScript. |
For example, notice here that, from October to January, the amount of view_item
and view_category
far exceeded the number of page_visit
events, which is logically unsound. The same holds for the number of session_start
and session_end
events, which should logically be the same amount.
Ad events up to 10-20% of MPE
Make sure your ad events constitute at most 10-20 % of your MPE. If you send ad audiences daily to segments of customers rather than to all of them, check the conditions in your scenarios to ensure you don't send the data repeatedly.
Before sending an ad audience to the relevant segments, check if the customer received one the previous day and whether their condition for qualifying for the segment has changed in the last 24 hours. Check out the Ads Best Practices Guide article for more insight into optimizing your ads.
Maximum event storage (MES)
Another aspect affecting your costs is storing data managed by the MES. MES refers to the maximum number of data points (events) stored in your Engagement account at any given time.
It includes all the currently active events that haven't expired or been deleted. However, it is worth noting that events previously in the platform that have been deleted, expired, or moved to another storage area, like EBQ, don't count toward this limit. In essence, MES sets the boundary for the number of events you can keep in the platform without incurring additional costs.
How to reduce MES
For more details on your stored events, you can create a report on this yourself. Go to Analyses > Reports, and create a report counting each event.
Follow these best practices to optimize your MES and avoid common pitfalls.
Use EBQ
Moving events to EBQ will save you storage space while retaining the ability to query and analyze the data when needed. By expiring events, you will not lose data itself.
Set expirations
Set data expirations in your project to automatically delete unnecessary events. Using these expirations will help control the gradual increase in your MES. Refer to the table for recommended event storage when setting expirations. Data expirations also allow you to differentiate between various attributes, with examples for banner
and campaign
events.
The highlighted period in the image below shows a steep rise in MES due to not using expirations.
Ensure consistent tracking
Using the table, check whether inconsistent tracking causes inconsistent storage.
Page_visit up to 5% of MES
Make sure your page_visit
storage constitutes no more than 5% of your MES. This event is one of the first to expire, as it has the fewest benefits.
Campaign and banner storage only up 30% each of MES
Make sure your campaign
and banner
storage constitutes no more than 30% of each of your MES. Expire irrelevant campaign types, statuses, and banner actions using the table in the Optimize event tracking and retention section.
Optimize event tracking and retention
This table provides guidance on which events aren't necessary to track and the recommended retention period for optimizing data storage.
Event | Main use | Recommended tracking | Recommended storage |
---|---|---|---|
first_session | Analytical: The lifetime attribution analysis calculates the time since customers first visited your web. | Always | Forever |
session_start | Analytical: Calculate the number of visits per period, visit frequency, and campaign efficiency, and analyze paid ad attribution. | Always | 13 months |
session_end | Analytical: Calculate the average time spent on the web. | Always | 1 month |
page_visit | Mostly quality control when necessary to check something in-depth. | Depends. Not always if everything is already being tracked. | 1 month or less |
banner | Analytical: Weblayer campaign efficiency (especially when running A/B tests) and some banners (subscription) are also used to trigger scenarios. | Always | Subscription banner: - show/close: 1 month - click: 6 months - Other banners: - show/close: 1 month - click: 3 months |
campaign | Analytical: campaign efficiency, triggering based on email engagement, and so on. | Always | - Type = split: 1 month (for A/B tests) - Email enqueued: 3 months - Email delivered/opened/clicked: 13 months (year-to-year comparison) - Email others: 1 month - Ad communication: 1 week - Other communication channels: 3 months |
checkout | Abandoned checkout campaigns, watchdog, funnel analysis. | Only for advanced users. Not required for newer users as cart_update covers 99% of your needs. | 1 month |
cart_update | Abandoned cart campaigns, watchdog, funnel analysis, feeding recommendations. | Always | 1 month |
view_item | Abandoned browse campaigns, watchdog, social proof banner, funnel analysis, and feeding recommendations. | Always | 3 months |
view_category | Feeding recommendations, social proof banner, funnel analysis. | Only for advanced users. Replaceable by view_item to identify customers’ favorite or last browsed category. | 1 month |
search/search_results | Funnel analysis. | Only for advanced users. | 1 month |
purchase | Everything | Always | Forever |
purchase_item | The trigger for post-purchase campaigns, feeding recommendations, and determining favorite/least purchased categories. | Always | 13 months |
double_opt_in | Triggers the “double opt-in campaigns” for consent. | Always in the EU. It is also recommended for other regions, as it makes identification and segmentation more accurate. | 1 month |
consent | Required for any communication. | Always | Always |
Data deletion
Reduce your MES by deleting data in the Data Manager. But note that deleting data will reduce MES only, not MPE.
Updated 18 days ago