Future-Proofing Your Data Strategy: Migrating to Server-Side Tagging with Tealium EventStream
Introduction
As the digital landscape evolves, the deprecation of third-party cookies, announced by major web browsers, is set to take effect in the near future. Google Chrome, the most widely used browser, has confirmed plans to phase out third-party cookies by the end of 2024, following in the footsteps of browsers like Safari and Firefox, which have already implemented strict privacy measures. This significant change signals a shift in how data is collected and managed online, presenting both challenges and opportunities for businesses that rely on third-party tags for tracking, analytics, and advertising.
For organizations using Tealium iQ Tag Management, now is the time to start preparing for this transition by leveraging the power of Tealium’s EventStream.
Tealium iQ is a powerful client-side tag management solution, enabling businesses to manage and deploy tags across their websites with ease. However, with the upcoming third-party cookie deprecation and increasing privacy regulations, relying solely on client-side tagging presents risks such as data loss, ad blocker interference, and reduced tracking accuracy. This is where Tealium EventStream comes in.
Tealium EventStream is a server-side event data collection and delivery platform designed to enhance data accuracy, security, and control. Unlike Tealium iQ, which operates in the browser and is subject to the limitations of client-side tagging, EventStream processes data server-side, ensuring that your data remains reliable and unaffected by client-side disruptions.
To help you navigate this shift, our team has crafted a comprehensive plan for migrating third-party tags to server-side using EventStream. This blog will walk you through the strategy we’ve developed, which adopts a hybrid approach: activating tags server-side while keeping client-side tags operational until your vendors approve the full transition to server-side APIs. For example, Facebook is already encouraging users to make the switch to server-side technology and phase out client-side tags entirely.
In this blog, we’ll guide you through the essential steps, best practices, and key considerations for a smooth and compliant transition to server-side tagging. Using Webhook as our endpoint, we’ll demonstrate how data is transmitted, providing you with the understanding needed to maintain data accuracy and performance in a cookie-less world.
Tealium IQ and EventStream Glossary
This glossary will provide your readers with a solid foundation of key terms, helping them better understand the differences between Tealium iQ and EventStream, as well as the concepts critical to successful tag management and server-side data processing.
Tealium IQ:
- Tags: Snippets of JavaScript or HTML code that collect and send data to third-party tools (e.g., analytics, marketing platforms) from your website.
- Load Rules: Conditions that determine when and where tags should be fired on your site. For example, a tag might only fire on a specific page or under certain user behaviors.
- Data Layer: A structured data object that captures and stores information about the user, page, or event on your site. The data layer feeds data into Tealium iQ, which can then be used by tags.
- Variables: Data points within the data layer or other sources that tags use to collect or send data. Examples include page URLs, user IDs, or product names.
- Extensions: Pre-built functions within Tealium iQ that allow you to modify or enhance data before it’s sent to tags. Extensions can manipulate data, set cookies, or add custom code.
- Publish Settings: Options that control how and when changes made in Tealium iQ are deployed to your live site. This includes environments like Dev, QA, and Prod.
- Consent Management: A feature that helps ensure compliance with privacy regulations like GDPR and CCPA by managing user consent preferences for tracking.
- Profile: A profile in Tealium IQ is a container that holds the tag management configurations, including tags, extensions, and data layer settings, for a specific website or digital property.
- Collect Tag: is a JavaScript tag used in Tealium iQ to capture and send event data from a website or app to Tealium’s servers, where it can be processed and routed to various destinations through tools like EventStream, AudienceStream, and others.
- Data Source Key: is a unique identifier assigned to a specific data source in Tealium, such as a website, mobile app, or other digital property. It ensures that the data collected from that source is correctly attributed and processed within Tealium’s platforms, like EventStream or AudienceStream.
EventStream:
- EventStream: A server-side event data collection and delivery platform within the Tealium Customer Data Hub. It allows you to collect, transform, and distribute event data to various destinations without relying on client-side tags.
- Event Data: Information captured about user interactions (events) on your site or app, such as clicks, page views, form submissions, etc. EventStream collects this data server-side.
- API Hub: A part of EventStream that allows you to set up server-to-server integrations with various third-party vendors (e.g., Facebook, Google Ads). This ensures that data is sent directly from your server to the vendor’s server, bypassing the browser.
- Event Specifications: Definitions that outline the structure of event data in EventStream. These specifications ensure that the event data collected is consistent and can be mapped correctly to different destinations.
- Data Sources: Origins of event data that flow into EventStream, such as websites, mobile apps, or IoT devices. Data sources are configured to send event data to EventStream.
- Connectors: Pre-built integrations within EventStream that allow you to send collected event data to various third-party platforms (e.g., Facebook, LinkedIn, Google Ads).
- AudienceStream: A related Tealium product that works alongside EventStream to build and manage audiences based on real-time behavioral data. It’s often used in conjunction with EventStream for personalized marketing.
- Consent Management (Server-Side): Server-side consent management processes that ensure user data is handled according to their privacy preferences, similar to client-side consent management but handled on the server.
- Webhooks: A method for sending real-time data from EventStream to external systems or services. Webhooks are used to trigger actions based on specific events, such as sending data to a CRM when a user completes a purchase.
- Profile: in Tealium EventStream is a configuration environment that manages server-side data collection and delivery settings for different digital properties or environments.
Common Terminology
- Client-Side: Refers to operations that are executed within the user’s browser. In the context of Tealium iQ, tags are fired on the client side, meaning they rely on the browser to function.
- Server-Side: Refers to operations that are executed on the server, independent of the user’s browser. In EventStream, event data is processed server-side, offering more control and reliability.
- Hybrid Approach: A strategy that combines both client-side and server-side tagging. This approach allows for a gradual transition to server-side tagging, where client-side tags remain active until server-side processes are fully validated and approved by third-party vendors.
- Data Privacy Compliance: Ensuring that your data collection and processing methods align with regulations like GDPR, CCPA, and others. Both Tealium iQ and EventStream offer tools to help manage user consent and protect data privacy
- Tealium Tools is a collection of browser-based utilities designed to enhance and simplify the management of Tealium products, such as Tealium iQ, EventStream, and AudienceStream. These tools include features for debugging, testing, and configuring tags, data layers, and event tracking, enabling users to streamline their workflows and ensure accurate data collection. Tealium Tools are particularly valuable for developers and marketers who need to manage and troubleshoot their Tealium implementations efficiently
Data Flow Overview
To better illustrate the process of migrating third-party tags to server-side using Tealium EventStream, we’ve included a data flow diagram below. This diagram outlines the key steps and components involved in the data transmission process, specifically using a Webhook as the endpoint
Steps Involved in EventStream Configuration
1. Data Collection
2. Privacy consents
3. Datalayer/Attributes
4. Data Sources
5. Data Feeds
6. Data Validation (Using Trace)
7. Integrations (Connectors and Webhooks)
1. Data Collection
Tealium Collect tag configured on Tealium IQ is the primary data collection tag for Tealium EventStream. The Tealium Collect tag captures a mix of predefined data and dynamic data from the page. This tag requires no mapping; it automatically sends everything set in utag.data or any data passed to a tracking call.
2. Privacy consents
a) Privacy: Functional
b) Privacy: Performance
c) Privacy: Targeting
Implementation of Tealium IQ to forward the consent types to EventStream
The Tealium Collect Tag, configured within Tealium iQ, is governed by specific load rules that ensure it only activates when the appropriate privacy consent have been granted. These load rules are carefully set up to honor user consent preferences, meaning the tag will only execute if the user has opted into the necessary privacy settings. This approach helps maintain compliance with privacy regulations such as GDPR and CCPA, ensuring that data is only collected when the user has provided explicit consent.
The configuration of the Collect Tag includes logic designed to parse the consent cookie from your chosen Consent Management Platform (CMP). In this example, we’re using OneTrust’s OptanonConsent cookie to illustrate the process. The logic reads and interprets the user’s privacy preferences and then populates the Tealium data layer with true values for each consent category that the user has opted into. This approach ensures that the data layer accurately reflects the user’s consent choices, enabling compliant data collection and processing in alignment with their privacy settings.
3. Data Attributes
We need to develop tag extensions that are specifically scoped to the Tealium Collect tag. These extensions will ensure that each tag receives the appropriate set of data, which will then be accurately transmitted to the corresponding third-party tags. This approach facilitates precise and efficient data handling, ensuring that each third-party tag gets the exact information it requires
Populate the Tealium data layer with the values required by each vendor connector within the extensions. This ensures that the data layer contains all the necessary information that each vendor connector expects, enabling seamless and accurate data integration and communication between Tealium and the external vendors
Utilize Tealium’s trace feature to identify and monitor the variables being passed to EventStream. This tool allows you to track and analyze the data flow in real time. We will guide you through the process of running a Tealium trace, providing step-by-step instructions to help you effectively use this feature for troubleshooting and optimization.
4. Data Sources(DS): refers to the origin or the source of the data that is ingested and processed by EventStream. Essentially, it is a predefined configuration within EventStream that defines where the data is coming from and how it should be handled.
Configuring DS is a three-step process.
This Data Source is designed to work with the Tealium Collect tag in your iQ profile. To integrate your iQ profile with this Data Source, follow these steps:
- Add the Tealium Collect tag to your iQ profile.
- In the tag configuration settings, enter the provided value into the Data Source Key field.
- Save and publish your changes.
All the above steps set up a data source, which then appears in the drop-down list. You can select this data source to send customized data via an HTTP request or to any specified endpoint.
5. Data Feeds
Event feeds are groups of events that match specific conditions based on their attributes. Feeds can be sent to connectors or a data storage solution such as EventDB or EventStore. The default event feed is named All Events and includes all incoming events. The default feed cannot be edited or deleted. However, additional feeds can be created to identify subsets of events based on their attributes.
6. Data Validation (Using Trace)
Trace is a testing and validation tool for EventStream. Use Trace to ensure that your configuration is functioning correctly and that connector actions are being triggered as expected.
When you send events using the trace ID, the Trace tool provides a detailed log of the results, including:
- Events received
- Attributes enriched
- Event specifications validated
- Event feeds matched
- Connector actions triggered
Prerequisite
- If you are testing a web page with Trace, you need the following:
- Tealium Tools browser extension
Follow these steps to Start a trace:
- In the sidebar, select Trace.
2. Under New Trace, click Start. A dialog with a trace ID will appear.
3. Copy the trace ID and click Continue
4. Activate the trace ID using one of the following methods:
Tealium Tools
a. Open a new browser window to your test page.
b. Click the Tealium Tools browser extension and click AudienceStream Trace.
c. Enter the trace ID from step 3 and click Start Trace.
5. Proceed with your test case work flow. This might require refreshing the page, navigating through some pages, or making a purchase.
6. Return to the Trace interface to inspect the log details.
Trace Log
The Trace log updates automatically as it processes the traced event. It displays the event data details, the matched spec, any matched feeds, and any triggered connector actions. If there were any errors, those are provided as well with additional details of the issue.
The Trace image below reflects the validation of the previously configured components using the Search with No Results example.
7. Integrations (Connectors and Webhooks)
Steps to create a webhook and testing it on Webhook.site
- Navigate to https://webhook.site
- Click and copy the unique URL
For example: “https://webhook.site/8d3a03f9-a492-4638-a040-2176f77069ec”
3. Login to Tealium EventStream and click “Add Event Feed”
In this scenario, we focus on page view hits originating from the staging or development environment, identified by a query string parameter named eventstreamtest=123. This approach allows us to control and limit the data being sent to EventStream, thereby reducing costs and preventing unnecessary data from being processed. By filtering the data in this way, we ensure that only relevant test data is transmitted, avoiding clutter in EventStream until the setup is fully prepared for deployment in the production environment.
10. Give the webhook a name, then click ‘Done’ and proceed by clicking ‘Continue’
11. Give an action name and select action type as “Send Customized Data via HTTP Request (Advanced)”
13. Click “URL” & Paste the URL from the webhook site here
14. Click “Body Content Type” and select “application/json”
15. Click “Body Data” and click “Add Mapping” button in the Map: type “{{body}} and To: type “Body”
16. Click “Template Variables” to “Add Mapping” to map “tealium_event” to “event_type”
17. Click “Templates” to “Add Mapping”, provide “body” as name and define the data payload in JSON format within Template. Then finally click “Finish”
18. Then Click “Save / Publish” to add title and Description to then click “Save As”
Validating Requests on Webhooks
The conditions outlined in the event feed below must be met in order to trigger the webhook.
Scenario 1:
- When a user opts in to Functional, Targeting, and Performance cookies, the corresponding variable values are set as follows: prv_FN = true, prv_PF = true, and prv_TG = true, refer at the trace events screenshot.
Once the condition is met, the data is sent to the webhook, where the event_type is set to ‘view,’ indicating a page load on the website.
Scenario 2:
- When a user opts out of Functional cookies but accepts Targeting and Performance cookies, the variable values are set as follows: prv_FN = false, prv_PF = true, and prv_TG = true.
- The Trace Events did not capture the prv_PF variable, so the condition was not met, and as a result, the webhook did not receive a signal.
Conclusion
As we move towards a cookie-less future, the shift to server-side tagging is not just a trend but a necessity for maintaining data integrity, privacy compliance, and operational efficiency. Tealium EventStream offers a robust solution for this transition, enabling you to manage data collection and processing with greater control and accuracy. By leveraging tools like Webhooks and following best practices, you can ensure a smooth migration of third-party tags, preserving the value of your data while respecting user privacy.
Taking the time to carefully plan and execute this migration will pay off in the long run, helping your organization stay ahead of regulatory changes and technological shifts. Whether you’re just starting your server-side journey or looking to refine your existing setup, Tealium’s solutions provide the flexibility and power needed to adapt to the evolving digital landscape.
Remember, the key to success lies in understanding your data flows, staying informed about vendor requirements, and always prioritizing user consent and privacy. By doing so, you’ll not only future-proof your data strategy but also build trust with your users, which is invaluable in today’s data-driven world.
I’d like to extend a special thank you to Sravanth Venna for his invaluable contribution to this blog. Your insights and expertise were instrumental in shaping the content.