Concepts
Introduction to the Converge Source concepts
An introductory example
Imagine an ecommerce store that has the following minimal customer journey:
- PageView: User visits the storefront
- Added To Cart: User adds an item to cart
- Placed Order: User places an order
For the optimal setup, they will want to track PageView
and Added To Cart
on the browser, but Placed Order
events on .
Challenges with server-side tracking
There are three main challenges this store will need to deal with, all of which are important concepts in Converge.
- Profile properties: to include browser-side information into the server-side order-event.
- Deduplication: to make sure that the same order does not get processed twice.
- Aliases: to recognize which browser-side events and which server-side events come from the same user.
Profile properties
It is possible to include profile properties in an event. These properties are characteristic of the user. These properties are persisted across events, whereas the event properties are only available and relevant to the event itself.
Profile Properties allow you to store information on a user that you might need later.
For example, the Converge Pixel will auto-track several browser session information, so this is available for your server-side events (e.g. the Placed Order
event in the example above).
However, profile properties are also useful for storing information across events within a single source.
Imagine a user that triggers a Subscribed to Newsletter
event with an $email
parameter. Afterward, that same user triggers an Added To Cart
.
Storing the $email
as a profile property ensures that you have this information available at the moment of the Added To Cart
event without you as a developer having to pass this information again.
Deduplication
It is possible to include profile properties in an event. These properties are characteristic of the user. These properties are persisted across events, whereas the event properties are only available and relevant to the event itself.
Converge supports deduplication natively. You can deduplicate events with an optional eventID
parameter. This is especially important for events that are used as conversions.
Converge will deduplicate events with the same eventID
at ingestion time.
Aliases
Converge excels at matching events across browser sessions and your server-side data. This is all possible through aliases. Your customer is linked to multiple aliases, i.e. multiple identifiers for the same customer. Converge uses the customer’s browser session cookie as the default alias.
When you add something as an alias, you are telling Converge that this alias is a unique identifier for this profile across datasources. In the examples below, we add email
as an alias. Thus, Converge can merge a profile of browser events (e.g. Pageviews) with a profile with backend events (e.g. Started Subscription) if they have the same email
.
In the examples below we add an email
alias. Other aliases that are useful:
cart_token
checkout_token
: this is absolutely necessary if your checkout lives on a different domain than your storefront token.customer_id