Tealium is a universal data hub and customer data platform composed of EventStream, AudienceStream, and iQ Tag Management that enables you to connect mobile, web, and alternative data from third-party sources. Tealium’s connection to Braze enables a data flow of custom events, user attributes, and purchases that empower you to act on your data in real-time.
Braze offers both a side-by-side SDK integration for your Android, iOS, and web applications and a server-to-server integration for your backend services so that you can start building richer user profiles.
Tealium EventStream is a data collection and API hub that sits at the center of your data. EventStream handles the entire data supply chain from setup and installation to identifying, validating, and enhancing incoming user data. EventStream takes real-time action with event feeds and connectors. Listed below are the features that make up the EventStream.
- Data Sources (Installation and Data Collection)
- Live Events (Real-time Data Inspection)
- Event Specifications and Attributes (Data Layer Requirements and Validation)
- Event Feeds (Filtered Event Types)
- Event Connectors (API Hub Actions)
Tealium AudienceStream is an Omnichannel customer segmentation and real-time action engine. AudienceStream takes the data that flows into EventStream and creates visitor profiles that represent the most important attributes of your customers’ engagement with your brand. To read more about how to set up Tealium AudienceStream, check out our documentation.
Please note that Tealium AudienceStreams and EventStreams are batched according to Braze specifications so that our customers do not run the risk of exceeding the /users/track rate limit.
Set Up Overview
- Adhere to the requirements and pre-requisites
- Pick your integration type
- Set up mappings for your integration
- Test your integration to ensure data is flowing smoothly between Braze and Tealium
|Tealium Account & Account Information||Tealium||https://my.tealiumiq.com/||You must have an active Tealium Account with both Server and Client-Side Access to utilize their services with Braze.|
|Install Source and Tealium Source Libraries||Tealium||Tealium Source Libraries||The origin of any data sent into Tealium, such as mobile apps, websites, or backend servers.
You must install the libraries into your app, site, or server before being able to set up a successful Tealium Connector.
|Braze SDK Integration||Braze||For more details regarding Braze’s SDKs, please refer to our iOS, Android, and Web documentation||Braze must successfully be installed onto your app or site.|
Choose your Integration Type
|Side-by-Side||Maps Tealiums’s SDK to Braze’s SDK, allowing access to deeper features and more comprehensive usage of Braze than the server-to-server integration.
If you plan on using Braze Remote Commands, note that they do not support all Braze methods (eg. Content Cards). In order to use a Braze method that isn’t mapped through a corresponding remote command, you will have to invoke the method by adding native Braze code to their codebase.
|Server-to-Server||Forwards data from Tealium to Braze’s users/track endpoint.
Does not support Braze UI features such as In-App Messaging, News Feed, or Push notifications. There also exists automatically captured data (Sessions, First Used App, and Last Used App) that is not available through this method. Consider a side-by-side integration if you wish to use these features.
Side-by-Side SDK Integration
Remote commands allow customers to trigger code in their apps by using a tag in Tealium iQ Tag Management - which collects, controls, and delivers event data from mobile applications. Customers can conveniently use Tag Management to configure a native Braze implementation without having to add Braze-specific code to their apps. Instead, the Braze remote command module will automatically install and build the required Braze libraries. In order to use Braze Mobile Remote Command, the customer will need to have Tealium libraries installed in their apps.
Using remote commands, the Braze and Tealium SDKs work in tandem allowing customers to make calls from the Tealium SDK - through the Braze servers - to Braze. Here, the Tealium tags travel back to be mapped by Braze. The Braze SDK will continue to handle message displays, message renders, and message analytics.
Braze Mobile Remote Command maps standard user attributes and custom attributes and can track purchases and custom events. It also allows you to track location, and social data on Twitter and Facebook - like the number of followers or number of friends a user has. Check out the Remote Command chart to see the corresponding Braze methods.
You can find more details on how to set up the Braze Mobile Remote Command Tag, as well as an overview of supported methods in the Tealium Developer Docs.
Braze Mobile Remote Commands do not support all Braze methods (eg. Content Cards). In order to use a Braze method that isn’t mapped through a corresponding remote command, users will have to invoke the method by adding native Braze code to their codebase.
Braze Web SDK Tag
The Braze Web SDK Tag is used by customers to deploy Braze’s Web SDK to their websites. Tealium iQ Tag Management allows customers to add Braze as a Tag within the Tealium dashboard. A tag is a code snippet that is placed on a website to track visitor activity. Tags are typically used by marketers to understand the efficacy of online advertising, email marketing, and site personalization. By using the Braze Web SDK Tag, you can get a lot of insight into how customers are interacting with their websites.
Data In Integration
Integrate Braze into your web app using the Tag Manager. In order to set up this integration correctly, there are a number of steps you need to take in order to configure the core integration. It’s then important to be able to understand how you start sending data to Braze by setting up custom events/custom attributes.
- Set up Braze as a “Tag” in your Tealium dashboard.
- From the Tag Configuration dialogue box, enter your API Key and your appropriate Endpoint.
- Find your API Key and Endpoint in your Braze account or confirm it with your onboarding manager or support representative.
- This API key is for the app identifier, rather than the REST API key
- From the Tealium Code Centre, copy the code snippet for the environment you are currently building (dev, QA, prod) and paste it at the top of body tag within your HTML.
- Verify that the Braze SDK is being loaded by Tealium by opening the browser dev tools and in the console typing “appboy”.
- The list of available functions should then be printed to the console.
Customizing Your Integration
To customize your integration (like logging custom events or custom attributes), click on the data layer tab in your Tealium dashboard and begin adding the custom data you require.
- In order for Tealium to recognize these data points, copy and paste the updated code snippet from the code center again with the
utag_datacontaining all your data.
- To customize when the Braze SDK is loaded, click on the Load Rules tab of your Tealium dashboard, then choose on which pages the SDK should initialize.
If the data layer is not configured correctly, or you incorrectly enter your Endpoint, your integration may fail or not return correct results.
Side-by-Side Integrations Resources
- iOS Remote Command
- Android Remote Command
- Web SDK Tag
This integration forwards data from Tealium to Braze’s REST API.
Server-to-Server integration does not support Braze UI features such as In-App Messaging, News Feed, or Push notifications. There also exists automatically captured data (Sessions, First Used App, and Last Used App) that is not available through this method.
If you wish to use this data and these features, consider our Side-by-Side SDK integration.
|REST API Key||A Braze REST API Key with
This can be created within Braze Dashboard -> Developer Console -> REST API Key -> Create New API Key
|Tealium Account & Account Information||You must have an active Tealium Account with both Server and Client Side Access to utilize their services with Braze.|
Step 1: Add a Connector in Tealium
A connector is an integration between Tealium and another vendor that is used to transmit data. These connectors contain actions that represent the vendor’s supported APIs. We can create a connector between Tealium and Braze by locating and configuring the Braze Connector.
- From the left sidebar within Tealium under
Server-Side, navigate to EventStream -> Event Connectors
For visitor data connectors, go to AudienceStream -> Audience Connectors
- Select the blue
+ Add Connectorbutton to look through the Connector Marketplace.
- In the new dialogue box that appears, use the spotlight search to find the Braze Connector.
- To add this connector, click the Braze Connector Tile.
Once clicked, you can view the connection summary, here Tealium provides a list of the required information, supported actions, and configuration instructions.
Click Continue to begin configuring.
Step 2: Configure your Connector Settings
The Braze Tealium connector setup is composed of four steps: Source, Configuration, Action, and Summary.
Step 2a: Set Up Source
Tealium requires that you first set up a valid source of data for your connector to draw from.
Setting up Your Data Source
- From the left sidebar within Tealium under
Server-Side, navigate to Sources -> Data Sources
- Click the + Add Data Source Button
- Locate HTTP API platform within the available catagories, and name your HTTP API app, this is a required field.
- From the Event Specifications options, choose the event specs you would like to include. Event specifications help you identify the event names and required attributes to track in your installation. These specifications will be applied to incoming events.
Take some time to think about what data is most valuable to you and which specifications seem most appropriate for your use case. Note that you also have the option of creating custom event specifications, check out the Tealium documentation to learn more.
- The next dialogue advances to the Get Code step. This displays the data source key and installation code. The base code and event tracking code provided here serve as your installation guide. Download the provided PDF if you wish to share these instructions with your team.
- Click Save & Continue
- Once saved, you will now be able to view your saved source as well as add or remove event specs.
From the detailed data source view you can perform the following actions:
- View and copy the data source key
- View installation instructions
- Return to the Get Code page
- Add or remove event specifications
- View live events related to an event specification
- And more…
- Lastly, make sure to Save and Publish. If you do not save and publish your data source, you will not be able to find it when configuring your Braze connector.
For further instruction on setting up and editing your data source, check out here.
Step 2b: Configure Braze Connector Source
Once configured, navigate back to the Braze Connector and select your data source.
- From the Data Source Dropdown list, select the Braze data source you created.
- Next, from the Event Feed drop-down list, select an event specification you would like to configure.
- Name this action and click Continue.
Step 2c: Configuration
Next, a Create Configuration dialogue will appear. Here, you must fill in certain values requested by Tealium and Braze:
|Name||The name of the Connector|
|REST API Key||A Braze REST API Key with users.track permissions.
This can be set within the Braze Dashboard -> Developer Console -> REST API Keys -> Create New API Key
If you have created a connector before, you may optionally use an existing one from the available connector list and modify it to fit your needs with the pencil icon or delete it with the trash icon.
Step 2d: Action
Next, you must select a connector action. A connector action sends data according to the mapping that gets configured. The Braze connector allows you to map Braze Attributes to Tealium attribute names.
It’s also important to note that user aliases can be leveraged to track and target anonymous users. For example, once obtained, these users can be sent personalized messages that could convert prospective users into active ones.
- From the Add Action dialogue, select one of the actions to set up.
- Depending on which action you chose, there will be a varied selection of fields required by Tealium. Listed below are examples and explanations of these fields.
Note that not all fields offered are required.
If you wish to skip over a field, Tealium requires that you minimize it before continuing onto the next step.
This action allows you to track user, event, and purchase attributes all in one action.
|User ID||Use this field to map the Tealium User ID field to its Braze Equivalent.
- If importing Push Tokens, External ID and Braze ID should not be specified.
- If specifying a user alias, Alias Name and Alias Label should both be set.
For more information, check out the Braze /users/track endpoint.
|User Attributes||Use Braze’s existing User Profile field names to update user profile values in the Braze Dashboard or add your own custom attribute data to the user profiles.
- By default new users will be created if one does not exist.
- By setting
To read more about the User Attributes Object, check out our documentation
|Modify User Attributes||Use this field to increment or decrement certain user attributes
- Integer attributes may be incremented by positive or negative integers.
- Array attributes may be modified by adding or removing values from existing arrays.
|Event Attributes||An Event represents a single occurrence of a Custom Event by a particular user at the designated time value. Use this field to track and map event attributes like those in the Braze Event Object.
- Event Attribute
- Event attribute
- By default, new events will be created if one does not exist. By setting
- Map Array type attributes to add multiple events. Array type attributes must be of equal length.
- Single value attributes can be used and will apply to each event.
To read more about the Braze Event Object, check out our documentation.
|Purchase Attributes||Use this field to track and map user purchase attributes like those in the Braze Purchase Object.
- Purchase attributes
- Purchase attribute
- By default, new purchases will be created if one does not exist. By setting
- Map Array type attributes to add multiple purchase items. Array type attributes must be of equal length.
- Single value attributes can be used and will apply to each item.
To read more about the Braze Purchase Object, check out our documentation
This action allows you to delete users from the Braze Dashboard.
|User ID||Use this field to map the Tealium User ID field to it’s Braze Equivalent.
- Map one or more user ID attributes. When multiple IDs are specified, the first non-blank value is picked based on the following priority order: External ID, Braze ID, Alias Name & Alias Label.
- When specifying a user alias, Alias Name and Alias Label should both be set.
For more information, see the Braze /users/delete endpoint.
Step 2e: Summary
Here, you can view the summary of the connector you created. If you would like to modify the options you chose, select Back to edit or Finish to complete.
Your connector now displays in the list of connectors on your Tealium Home page.
Step 2f: Save and Publish
The actions you configured will now fire when the trigger connections are met. The data populates, in real-time as each action fires.
Step 3: Test your Tealium Connector
After your connector is up and running, you should test it to make sure it’s working properly. The most simple way to test this is to use the Tealium Trace Tool.
- Start a new trace. This can be done by selecting Trace on the left sidebar under
- Examine the real-time log.
- Check for the action you want to validate by clicking Actions Triggered entry to expand.
- Look for the action you want to validate and view the log status.
For more detailed instructions on how to implement Tealium’s Trace tool, check out their Trace documentation.
Potential Data Point Overages
There are three primary ways that you might accidentally hit data overages when integrating Braze through Tealium:
Insufficient Data Logging
Tealium does not send Braze deltas of user attributes. For example, if you have an EventStream action that tracks a user’s first name, email, and cell phone number, Tealium will send all three attributes to Braze anytime the action is triggered. Tealium won’t be looking for what changed or was updated and send only that information.
You can check your own backend to assess whether an attribute has changed or not and if so, call Tealiums’s relevant methods to update the user profile. This is what users who integrate Braze directly usually do.
If you don’t store your own version of a user profile in your backend, and can’t tell if attributes change or not, you can use AudienceStream to track user attribute changes.
Sending Irrelevant Data
If you have multiple EventStream that target the same event feed, all actions enabled for that connector will automatically fire anytime a single action is triggered, this could also result in data being overwritten in Braze.
Set up a separate event specification or feed to track each action.
Disable actions(or connectors) that you do not want to fire by using the toggles in the Tealium dashboard.
Initalizing Braze too Early
Users integrating with Tealium using the Braze Web SDK Tag may see a dramatic increase in their MAU. If Braze is initialized on page load, Braze will create an anonymous profile every time a web user navigates to the website for the first time. Some may want to only track user behavior once users have completed some action, such as “Signed In” or “Watched Video” in order to lower their MAU count.
Set up Load Rules to determine exactly when and where a Tag loads on your site. You can learn more about Load Rules and how to set them up in the Tealium Learning Center.