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?YesNo
Web trackingYes, if Bloomreach SDK is enabled for the events specified there
ImportsYes, events are importedNo, if customers, catalogs, or vouchers are imported
ExportsNo
APIYes, if you send events via APINo, if you retrieve events, customers, catalogs
BigQueryYes
Ad audiencesYes
EmailsYes
SMS and MMSYes
Push notificationsYes
WhatsAppYes
WebhooksYes
Customer attribute updateNo
WeblayersYes
In-app messagesYes
ExperimentsYes
RecommendationsYes, if they are "shown" or "clicked in"
PredictionsNo

Engagement tracks and processes

  • System events - predefined and available by default
  • Custom events - tailored for your business.

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, and checkout are tracked for advanced users only.

The table below shows unhealthy signs in event tracking you should avoid.

Badly tracked eventsExplanation
# cart_update > # view_itemLikely multiple pings for the cart_update event.
# checkout > # view_itemTheoretically 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_itemSome websites load new view_category events with every scroll, which is inefficient.
# session_start > 10 x # session_endEither 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 sentThey should be within a 5% margin of each other.
# banner clicked > # banner shownAn 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.

EventMain useRecommended trackingRecommended storage
first_sessionAnalytical: The lifetime attribution analysis calculates the time since customers first visited your web.AlwaysForever
session_startAnalytical: Calculate the number of visits per period, visit frequency, and campaign efficiency, and analyze paid ad attribution.Always13 months
session_endAnalytical: Calculate the average time spent on the web.Always1 month
page_visitMostly quality control when necessary to check something in-depth.Depends. Not always if everything is already being tracked.1 month or less
bannerAnalytical: Weblayer campaign efficiency (especially when running A/B tests) and some banners (subscription) are also used to trigger scenarios.AlwaysSubscription banner:

- show/close: 1 month
- click: 6 months
- Other banners:
- show/close: 1 month
- click: 3 months
campaignAnalytical: 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
checkoutAbandoned 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_updateAbandoned cart campaigns, watchdog, funnel analysis, feeding recommendations.Always1 month
view_itemAbandoned browse campaigns, watchdog, social proof banner, funnel analysis, and feeding recommendations.Always3 months
view_categoryFeeding 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_resultsFunnel analysis.Only for advanced users.1 month
purchaseEverythingAlwaysForever
purchase_itemThe trigger for post-purchase campaigns, feeding recommendations, and determining favorite/least purchased categories.Always13 months
double_opt_inTriggers 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
consentRequired for any communication.AlwaysAlways

🚧

Data deletion

Reduce your MES by deleting data in the Data Manager. But note that deleting data will reduce MES only, not MPE.