- TLC Home Home
- Discussions & Ideas Discussions & Ideas
- Product Guides Product Guides
- Knowledge Base Knowledge Base
- Developer Docs Developer Docs
- Education Education
- Blog Blog
- Support Desk Support Desk
This article describes how to configure tag data mappings to send data from your data layer to a vendor.
In this article:
A data mapping is a connection between a data layer variable and a vendor tag. Data mappings determine the data a tag receives and the type of event tracking it performs.
For example, a tag might collect the page name in a parameter named pName
, but your data layer might store this value in a variable named page_name
. To send the value of page_name
to pName
, you create a data mapping. After the mapping is configured, the value of page_name
will always be passed to the vendor parameter pName
when that tag is triggered.
Data mappings are managed from the tag configuration. The list of supported vendor parameters is organized by category and available on the Data Mappings screen. First, you select the data layer variable to map, then choose the vendor parameter it maps to.
There are two types of data mappings: variable mappings and custom value mappings. A variable mapping is the most common type since it allows values from your data layer to be passed to a vendor parameter. However, a custom value mapping is a convenient method for assigning a value directly in a mapping without using an extension or a data layer variable. The custom value is plain-text that you enter or the return value of a snippet of JavaScript code.
A tag vendor has a parameter for currency code, named curr
, to be set to the three-character code matching the currency of a transaction. If the tag is loaded on pages that support multiple currencies, you would likely have a data layer variable called site_currency
or currency_code
that is set to the appropriate value for the current visitor. The expected values might be "USD", "CAD", "GBP", "EUR", "JPY", etc. The variable mapping would look like this:
A tag vendor has a parameter for currency code, named curr
, but the tag is only deployed to a single geographic region where the currency is always the same (such as "CAD"). In this case, a data layer variable is not necessary because the value is constant throughout the site. The expected currency code, "CAD", can be set directly as a custom value mapping, as follows:
The custom value can also be returned from JavaScript code. This option can be used to pass a JavaScript number, boolean, or array value to a vendor parameter. You can use advanced statements or even an inline function.
For example, the following line of JavaScript sets the mapping to "GBP" if the hostname
contains "co.uk", otherwise it is set to "USD":
location.hostname.indexOf("co.uk") > -1 ? "GBP" : "USD"
To reference a data layer variable such as page_name
, use the b
object. For example, b['page_name']
. Learn more about the b object.
An event mapping is a variable mapping that associates your event names to the vendor's event names. For example, an e-commerce tag might run specific tracking functions for each of the primary shopping actions, such as searching for products, viewing product details, adding a product to the cart, checking out, and completing a purchase.
The vendor tag might offer the following tracked events for an e-commerce site:
Similarly, your data layer might track these same events using tealium_event
and the following values:
An event mapping associates the values of your event variable ( tealium_event
) to the vendor's event names and triggers the corresponding tag function.
Vendor tag parameters (also called destinations) are built into the Data Mappings configuration screen for the tag. This is where you add and manage data mappings.
To create a data mapping:
The new data mapping displays.
Repeat Steps 2 through 6 to map additional variables.
When done, click Apply.
To create a data mapping that uses a custom (static) value instead of a data layer variable:
The mapped variable displays. Repeat these steps to map additional custom values.
When done, click Apply.
Use an event mapping to associate your event names with the vendor's event names and corresponding tracking. First, select your event variable (typically tealium_event
), then enter the event name from your data layer, then select the corresponding vendor event to trigger.
Use the following steps to map an event:
Event mappings appear in the data mappings list in the format of EVENT_NAME:VENDOR_EVENT
. For example, if you mapped the cart_add
event to the vendor's event addToCart
, the mapping appears as cart_add:addToCart
.
While the built-in destinations cover most of your mapping needs, you can optionally define a custom data mapping to send data to a vendor parameter that you name.
Use the following steps to create a custom data mapping:
Repeat the steps to add more custom mappings. When complete, click Done. The custom mapping displays in the Data Mappings tab.
Use the following steps to edit the destination variable:
AudienceStream attributes are enriched attributes about your visitors that are sent back to your website for use with personalization.
The following requirements must be in place to map an AudienceStream attribute:
Use the following steps to edit a destination for a mapped variable:
Use the following steps to delete a mapping:
No warning or confirmation message displays. The deleted mapping cannot be restored.
When two or more variables are mapped to the same destination, such as page_name > pageName
and Document Title > pageName
, the last mapping takes precedence. Data mappings can be reordered to account for this precedence.
In this example, if both page_name
and Document Title
are populated, the destination variable pageName
will receive the value from Document Title
. If the variables are populated, the last mapping takes precedence.
If a variable does not have a value, the mapping is not applied.
You can drag and drop data mappings in your preferred order. This is helpful if you want to order your mappings alphabetically for better organization.
Order of mapping is important when two or more data layer variables are mapped to the same vendor destination. In this case, the last mapping takes precedence.
Copyright All Rights Reserved © 2008-2022