What it is & the business problem it solves
The Data module is the foundation of Inspire. It is the one module that every other module needs. It loads your customer events (website activity, orders, email and Campaigns messages) and your product catalogue into Inspire and prepares them in one consistent shape, so that recommendations, triggers, customer profiles and predictions can all work from the same facts.
You do not use the Data module to produce marketing results. Its job is to make sure the other modules have fresh, correct input. Most "no results" or "poor results" problems trace back to what the Data module receives: a missing event type, or product IDs in your events that do not match the product feed.
How it works
-
Read events. The Data module reads the standard events of your CDP (CM's Customer Data Platform, where customer profiles and their events are stored): product views, add-to-cart, remove-from-cart, begin-checkout, purchase lines, email events, Campaigns message events, Web Personalization events and A/B test assignments. It looks back up to two years on the first load and keeps events for 730 days.
-
Read the product feed. It reads your product catalogue from the Product Feed (also called the item feed).
-
Prepare. It builds a single event history, a current picture of every customer and a current picture of every product. Events that refer to a product that is not in the Product Feed are left out of the interaction data that the recommendation modules learn from. That is why the product ID in the feed must be identical to the product ID in your events.
-
Repeat. By default this runs every 30 minutes. Other modules start after, or use the output of, these runs. The CDP export that Inspire reads can lag a few hours behind real time, so very fresh events may show up in a later run.
This module works for both CDP and CXP customers.
The connection to your data (CDP tenant, profile type and product catalogue) is not set on the Data module itself. It belongs to your profile in the cockpit and is set up by CM during onboarding. Every module instance in the profile, including Data, uses it. No separate access token or "read" role has to be created by you for the Product Feed.
Example use cases
|
Scenario |
Channel |
Required products |
|---|---|---|
|
A fashion retailer starts with abandoned-cart emails: Data feeds the Behavioral Trigger with cart and checkout events |
MMC email campaign via CDP workflow |
CDP, Webtracking, Product Feed, Data, Behavioral Trigger |
|
A DIY retailer adds a "you may also like" carousel: Data feeds the Base Item Item Recommender with views and purchases |
Web Personalization |
CDP, Webtracking, purchase lines, Product Feed, Data, Base Item Item Recommender, Contextual Product Recommendation, Web Personalization |
|
A pet-food webshop measures email revenue: Data loads purchases and email events for Attribution |
Attribution results (Campaigns app) |
CDP, purchase lines, MMC Email Campaigns, Data, Attribution |
|
A webshop wants to react when a shopper filters a category without buying: Data loads the category-filter events for the abandoned-category trigger |
MMC email campaign via CDP workflow |
Above + Enable Filter Events on the Data module |
What you can configure
Settings of the Data module in the cockpit. Setup settings belong to the module instance; tuning settings are changed through preview and publish (see Personalization Modules). Settings marked Expert need expert rights, which you request through your CM contact person.
|
Setting (cockpit name) |
What it does |
Default |
When to change |
Who can change |
|---|---|---|---|---|
|
Enable Product Feed |
Loads your product catalogue. When switched off, no product data is available to other modules. |
On |
Keep on; only off if no module needs product data. |
Standard (setup) |
|
Enable Filter Events |
Loads category-filter events from Webtracking (shoppers filtering a category). Used by the abandoned-category trigger of Behavioral Trigger. Needs the Product Feed to be enabled. |
Off |
Switch on if you use the abandoned-category trigger. |
Standard (tuning) |
|
Filter Attribute Mappings |
Maps the keys of your website's filter events (for example a "brand" or "colour" filter) to Product Feed attributes. Filter events whose key is not mapped are dropped. Shown when Enable Filter Events is on. |
None |
Together with Enable Filter Events. For the abandoned-category trigger the filter key for the category must map to the Product Feed attribute |
Expert (tuning) |
|
Data Reload Cron |
How often the data is reloaded (a cron: a compact time pattern such as |
Every 30 minutes |
Rarely. |
Standard (setup) |
|
Enable Transformer Loader |
Prepares the event sequences that the transformer-powered Recommender Engine needs. Needs the Product Feed to be enabled. |
Off |
Switch on when you use the Recommender Engine (see Recommender Engine). |
Standard (setup) |
|
Transformer Loader Cron |
When the transformer data is prepared. Shown when the loader is on. |
Not scheduled |
Set a schedule when the transformer loader is on. |
Standard (setup) |
|
Force Event Log Rebuild (one-off) |
Re-reads the whole event history once, so that history is read with the current event mappings. A heavy, full-load run. |
Off |
Only after the way an event type is read has been changed, because such a change otherwise applies to new events only. Switch it off again after one successful run. |
Expert (tuning) |
|
CPU Request/Limit |
Computing capacity of the Data run. |
500m (one of 500m, 1000m, 2000m, 3000m) |
Only for large data volumes. |
Expert (setup) |
|
Memory Request/Limit |
Memory of the Data run. |
4Gi (one of 4Gi, 8Gi, 16Gi, 32Gi, 48Gi, 64Gi) |
Only for large data volumes. |
Expert (setup) |
Transactions, web events and email and Campaigns events need no switch: if these events arrive in CDP they are loaded automatically. If they do not arrive, the results that depend on them stay at zero.
Prerequisites & required CM products
|
Platform |
What you need |
|---|---|
|
CDP |
A CDP tenant with a customer profile type. The standard event types (Purchase, Add to cart and so on) are set up by the Retail & Ecommerce adapter, which is included in onboarding: there is nothing extra to buy or configure. |
|
CXP |
The Retail & Ecommerce adapter does not apply. CXP uses Templates (installable configuration presets) for this. |
|
Product |
Needed for |
|---|---|
|
Webtracking (CM's website tracker) |
Web events: product view, add-to-cart, remove-from-cart, begin-checkout |
|
Purchase lines (one event per order line) |
Everything that uses purchases |
|
Product Feed |
Product data for recommendations, triggers, Item Enricher, Attribute Tagger, Persona Generation |
|
MMC Email Campaigns / Campaigns |
Email and message events for Attribution |
|
Web Personalization and the A/B Testing app |
Personalization and A/B test events |
|
Cockpit access |
Viewing the Data module and its runs |
The connection settings (CDP tenant, profile type, product catalogue) are set up by CM in your profile.
Packaging tier
The Data module is a Pro module: it is included wherever Inspire is available, that is in the MMC Pro and Enterprise packages (Inspire is not part of Basic and Advanced). You cannot use any other module without it.
Data requirements
Events (standard event types of CDP):
|
Event |
Typical source |
Used for |
|---|---|---|
|
Product view (product detail page) |
Webtracking |
Recommendations, triggers, profiling |
|
Add-to-cart |
Webtracking |
Triggers, recommendation engines, profiling |
|
Remove-from-cart |
Webtracking |
Triggers (item removed from the cart) |
|
Begin-checkout |
Webtracking |
Checkout triggers; stops cart reminders |
|
Purchase lines (product ID, price, quantity, order ID) |
Webshop or back office |
Everything that uses purchases |
|
Email sent, delivered, opened, clicked |
Email Campaigns |
Attribution |
|
Campaign message delivered, clicked |
Campaigns |
Attribution |
|
Web Personalization loaded, clicked; A/B variant assigned |
Web Personalization, Webtracking |
A/B Testing |
|
Category-filter events (optional) |
Webtracking |
Abandoned-category trigger |
Events must use CDP's standard event types. An event created under a custom type is silently ignored. A generic page view is not used, only product views. Events that carry no identification of the customer cannot be matched to a profile.
Product Feed attributes. The product ID is the key: it must be identical to the product ID in your events and purchase lines. Inspire then recognises the following feed attributes (names are not case sensitive; if one name is not present the next is tried):
|
What Inspire needs |
Feed attribute name Inspire recognises |
|---|---|
|
Product name |
|
|
Category |
|
|
Image |
|
|
Description |
|
|
Price (a number) |
|
|
Availability |
|
Every other feed attribute (for example brand) is passed on under its own name and can be selected in the settings of other modules. Two things to know:
-
Availability counts presence, not the value. If the feed has an availability attribute, a product is treated as available as soon as that attribute has any value, including "out of stock". If the feed has no availability attribute, all products in the feed count as available. A product that is only seen in events but not in the feed counts as not available. To exclude out-of-stock products, filter on your own availability attribute in the rules of the module instead.
-
Price must be numeric. A product without a numeric price is dropped by price-based logic such as the price-drop trigger.
For product variants (sizes, colours) an attribute that groups variants into one product (for example a parent ID) is optional, but it is needed if you want recommenders and triggers to treat the variants of a product as one product (the item grouping level setting of those modules).
History: up to two years is loaded on the first run and events are kept for 730 days. History that was never sent to CDP cannot be added later.
Minimum volume: the Data module itself has no minimum; the minimum requirements are per module and are listed on the module pages.
How to check it works
-
The Data module's run history in the cockpit shows a successful run about every 30 minutes.
-
In CDP, check that test events arrive on the standard event types (not on a custom type).
-
Compare a few product IDs from purchase lines and product views with the Product Feed: they must be identical.
-
Once a module runs, check its event viewer (if it has one), its CDP profile properties or its Product Feed attributes.
Limitations & common pitfalls
-
A custom event type is silently ignored: results stay empty without an error.
-
Product IDs in events that do not match the feed (for example a variant ID in the events but a parent ID in the feed) give poor or empty recommendations.
-
Conversions tracked outside CDP leave Inspire with only views.
-
A change in how an event type is read applies only to new events until a Force Event Log Rebuild is run once.
-
The abandoned-category trigger produces nothing unless Enable Filter Events is on and the category filter key is mapped to the Product Feed attribute
categories. -
Availability is derived from the presence of the feed attribute, not from its value (see above).
-
The Data module is shared by all modules: if its run fails, dependent modules deliver stale results.