Académique Documents
Professionnel Documents
Culture Documents
Getting Started.......................................................................................................14
Planning for Dynamic Tag Management................................................................................16
Managing Users and the Publish Workflow...........................................................................17
Manage Account Settings.....................................................................................................17
Web Properties......................................................................................................19
Create a web property...........................................................................................................22
Delete a web property...........................................................................................................23
Manage Groups....................................................................................................................28
Create and Manage Groups for DTM in the Enterprise Dashboard.........................................................28
FTP.......................................................................................................................................44
Library Download..................................................................................................................45
Header and Footer Code.......................................................................................................47
Add header and footer code.....................................................................................................................47
Verify header and footer code..................................................................................................................48
Tools.......................................................................................................................49
Add Adobe Experience Manager ContextHub Tool...............................................................49
Data Layer Management Using the ContextHub Tool..............................................................................52
Data Elements......................................................................................................114
Create a data element.........................................................................................................119
Rules.....................................................................................................................121
Event-Based Rules Example...............................................................................................123
EnterpriseTV Videos: Event-Based Rules..............................................................................................126
Architecture..........................................................................................................166
Resources............................................................................................................178
Troubleshooting...................................................................................................179
Chrome Warning on 2G Networks......................................................................................181
Documentation Updates.....................................................................................189
Deploy Adobe Analytics If you have questions about dynamic tag management
you can also tweet us at @AdobeMktgCare with the
Learn how to let dynamic tag management automatically
hashtag #DTM.
manage your report suites accounts and
AppMeasurement code.
Manually implement Adobe Analytics (legacy)
Additional Help
Documentation Updates
See the changes made to this documentation.
Marketing Cloud Release Notes
Learn about what's new for all solutions.
Dynamic Tag Management Product 7
Documentation
New Features
Feature Description
AEM ContextHub Tool Use the AEM ContextHub tool to integrate Dynamic Tag Management with the Adobe
Experience Manager (AEM) ContextHub (AEM's version of the data layer). You can
also use this tool to integrate DTM with any data layer, even for websites that do not
use AEM.
dataelementchanged event The dataelementchanged event lets you select a specific data element to use as a
trigger.
Documentation Updates, Previous Release Notes, and Marketing Cloud Release Notes
In addition to the notes for each release, the following resources provide additional information:
Resource Description
Documentation Updates View detailed information about updates to this guide that might not be included in
these release notes.
Previous Release Notes View information about new features and enhancements in previous releases of
Dynamic Tag Management.
Marketing Cloud Release View the latest release notes for the Adobe Marketing Cloud solutions.
Notes
Dynamic Tag Management Overview 9
Business Challenge
The world of digital marketing is a complex space. Marketers are expected to consistently identify their customers
and prospects and the online spaces they inhabitand thats just the beginning. Marketers must then deliver content
while measuring its engagement and effectiveness all the way through the conversion funnel and beyond. To
accomplish this, marketers have historically needed to rely upon JavaScript tags to implement their strategies and
programs on their websites. For the most part, tagging sites and other online experiences has been the domain
of IT, subjecting marketing strategy to IT process and prolonged implementations based upon technical release
schedules and resource availability.
In addition, as the technologies and tools used by marketers to implement digital strategies and deliver consumer
experiences become more sophisticated, the technical requirements associated with installing and managing these
tools continues to grow.
These factors are hampering marketers ability to quickly adapt to the fast-paced, dynamic digital marketplace and
compromising the effectiveness of the very tools that are designed to make digital marketers successful.
Solution
Dynamic tag management provides digital marketers tremendous flexibility and control to implement and optimize
digital experiences while reducing IT dependenceallowing marketers to focus on marketing, rather than tags.
Dynamic tag management not only solves standard tag management problems, such as code deployment, data
management, and rule building, but also provides an intuitive capability that maps directly to marketing scenarios
and user experiences. This approach makes it easier for marketers to develop digital marketing strategies and
quickly implement them without dealing with potentially frustrating IT projects. To allow marketers to deliver the right
message or collect the right data for any given scenario, this robust capability identifies specific users and audience
segments on the site to enable instantaneous delivery of segment-specific content and to generate specific
experience-based reporting.
Dynamic tag management is offered to Adobe Marketing Cloud customers as an included, value-add feature. Adobe
is committed to keeping the dynamic tag management capability open and will continue to develop features that
allow for deployment of the most popular digital marketing services, including non-Adobe services.
Benefits
Dynamic tag management provides the following benefits:
Improved Site Speed: Optimize loading of multiple analytics and marketing tags, proven to slow page loads.
Dynamic Tag Management Overview 10
Key Features
Dynamic tag management provides the following key features:
Unmatched rule-driven data collection
Site-centric rather than tag-centric user interface
Robust process and workflow management
Lightweight, meta-based library
Ability to host anywhere
Built-in collaborative tools
Management of multiple sites
Overview Video
Activation, powered by dynamic tag management, gives you intuitive tools to manage an unlimited number of Adobe
and third-party tags. Now, you have more control and flexibility to optimize almost anything online, all while reducing
your dependency on IT resources.
Short Adobe EnterpriseTV video covers the basics of what administrators need to know to get started with Dynamic
Tag Management.
Short Adobe EnterpriseTV video covers the basics of what users need to know about Dynamic Tag Management,
including the basics of library management.
Short Adobe EnterpriseTV video covers the basics of adding tools in Dynamic Tag Management.
Jump Start Videos 12
Short Adobe EnterpriseTV video covers the basics of creating data elements in Dynamic Tag Management.
Short Adobe EnterpriseTV video covers the basics of building page-load rules in Dynamic Tag Management.
Short Adobe EnterpriseTV video covers the basics of building event-based rules in Dynamic Tag Management.
Jump Start Videos 13
Short Adobe EnterpriseTV video reviews what you've learned in the Jump Start videos and provides suggestions
for what you should do next. Dynamic Tag Management.
Getting Started
Information for new users of dynamic tag management.
This section contains the following information:
Requesting Access to Dynamic Tag Management
Logging In
Getting Started Tasks
EnterpriseTV Training Videos
To request access to dynamic tag management, visit the Adobe Marketing Cloud > Dynamic Tag Management
page.
If you have access to the Adobe Marketing Cloud, you can also request access to dynamic tag management from
the Tools menu.
Note: Administrators, see Getting Started in the Marketing Cloud if you need access to the Marketing Cloud.
Logging In
Browse to https://dtm.adobe.com.
Create a web property. Web Properties A web property is a library of rules and one embed code. A
tab on the web property can be any grouping of one or more domains
Dashboard and subdomains. You can manage and track these assets
similarly. For example, suppose that you have multiple
websites based on one template and you want to track the
same assets on all of these websites. You can apply one web
property to multiple domains.
Getting Started 15
Configure your hosting Embed tab Dynamic tag management provides a number of options to
options. host the required JavaScript files:
Akamai
Self-hosting: FTP Delivery
Self-hosting: Library Download
Add header and footer Embed tab Dynamic tag management allows you to precisely time the
code to each managed loading of JavaScript and page content in your page. You can
page. choose to run rules at the beginning or end of a page. This
allows you to implement testing tools and other technologies,
while retaining full control over tracking your pages.
See Tools.
Create data elements. Rules tab Data elements are the building blocks for rules. Data elements
let you create a data dictionary (or data map) of commonly
And
used items on a page, regardless of where they originate
Create rules, conditions, (query strings, URLs, or cookie values) for any object that is
and actions. contained on your site. You use data elements to build a data
layer that can be used in rules for Analytics and other data
collection tools.
Publish tools and rules After a rule is created, it is funneled through a multi-step
to the production server. approval process before it is published to a production
environment.
See Rules.
Dynamic tag management is an evolution of tag management, designed around the mapping of user interactions
to marketing technologies. Your tags and marketing tools are best used when reacting to visitors (or segments of
your visitors) and their activity on your site in precise ways.
By starting with user interactions as the stimulus for marketing tool response, you can know how those interactions
result in data collection, testing, or engagement with tools like chat, surveys, and more.
Planning Ahead
To make the most of dynamic tag management, establish a clear vision of how you want to use digital marketing.
For help with planning, Adobe offers consulting on best practices. Also, a number of consulting agencies across the
Getting Started 17
globe have extensive experience deploying dynamic tag management and helping transform your organization's
productivity, workflows, and sophistication.
Dynamic tag management is based on a roles-oriented platform that lets you control the process.
Roles include the following:
Role Description
Users Create and test rules.
Approvers Review and approve rules, making approved states of rules publishable.
Publishers Publish rules to the production site. Only approved rules are published.
Administrators Create and manage users, as well as inheriting rights from the three preceding roles.
Publishing Workflow
1. A rule is saved.
2. The rule is automatically pushed to your staging site where you can perform testing.
3. The saved rule is funneled into the approval queue, where the details of the rule can be viewed in summary.
4. The Approver, Approver & Publisher, or Administrator level user approves the rule.
5. The rule goes into the publishing queue.
6. In the publishing queue, the Admin, Publisher, or Approver & Publisher level user must publish the rule before
it goes live.
If you make changes to a published rule, the changes are not published to the site until they have been funneled
through the approval process.
This process ensures that only approved rules and rule revisions are published to your live site. This approval
process also retains all past and present revision information. This retention makes it easy to follow a rules
history and pin-points when an issue may have occurred.
Manage your user account settings, including settings for names, title, mobile number, time zone, language for the
user interface, opt-out notifications, and password changes.
1.
In the upper right corner of the dynamic tag management interface, click > Account Settings.
2. Edit the fields as necessary:
First Name: Specify your first name.
Outside of US: Select this option if you are outside of the United States. Ensure that you provide a country code
in the Mobile Number field if you choose this option.
Language: Choose the desired language from the drop-down list. The user interface displays in the selected
language.
Email Address: Specify your email address. You can add multiple email addresses separated by commas.
Opt Out of All Notifications: Opt out of all email notifications when one of your web properties is published. By
opting out of email notifications, you will no longer receive publish request, property published, note, or approval
email notifications. However, you will continue to receive other email notifications.
Current Password: If you want to change your dynamic tag management password, specify your current
password in this field.
To maintain the utmost security possible for your account, all passwords must meet the following criteria:
Must be at least seven characters in length
Must contain at least one number and at least one letter
Must contain at least one special character that is not a letter or number
Must not be one of your last five passwords
Password Confirmation: Specify your new password for confirmation.
3. Click Save Changes.
Web Properties 19
Web Properties
A web property is a library of rules and one embed code. A web property can be any grouping of one or more domains
and subdomains. You can manage and track these assets similarly. For example, suppose that you have multiple
websites based on one template, and you want to track the same assets on all of them. You can apply one web
property to multiple domains.
This section contains the following information:
Best Practices for Planning Web Properties
How Web Properties Compare to Analytics Report Suites
Separating the DTM Environment for Multiple Entities
Deactivating a Web Property
Data For all of your websites, is the data you are going to collect very similar, somewhat
similar, or unique?
If the data you need to collect is similar across websites, it might make sense to
group those sites into one web property to avoid duplicating rules or copying rules
from one property to another.
If your data collection needs are unique for each site, it might make sense to
separate those sites in their own web properties. This method lets you control the
data collection more specifically for each site, without using large amounts of
conditional logic in custom scripts.
For example, if 80 percent of the data you are collecting across your sites is the
same, or similar, it makes sense to group those sites together into the same web
property. If the data is unique for each site, it makes sense to put each site into its
own web property.
Variables Similar to data, for all of your websites, are the variables you are going to set in
your Analytics and other tools very similar, somewhat similar, or unique?
For example, if eVar27 is used for the same source value across all of your websites,
it might make sense to group those sites together so you can set those common
variables across your sites in just one web property.
If your variable usage is unique for each site, it might make more sense to separate
those sites into their own web properties so you can control the variables more
specifically for each site without using large amounts of conditional logic in custom
scripts.
Tools, Tags, and Systems Are the tools, tags and systems you are going to deploy through dynamic tag
management very similar, somewhat similar, or unique?
Web Properties 20
If you are deploying Adobe Analytics on only one site, and your other tools and
tags are also unique to certain sites, you might want to create separate web
properties for those sites so you can control those specific tools in one web property.
For example, If you are deploying Adobe Analytics, Target, and the same 3rd-party
tags and tools across your sites, that is a reason to group sites together.
People For the individuals, teams, and organizations that are working in dynamic tag
management, will they need access to all of your websites, some of them, or just
one of your domains or sub-domains?
The User Management features allow you to assign different roles to different people
for all of your web properties, or on a per-property basis. The only role that includes
all web properties within a dynamic tag management company account is the Admin
role. If someone is an Admin, that person can perform administrative actions across
all the web properties in that dynamic tag management company. All the other roles
can be assigned on a per-property basis. You can even hide a web property from
certain users (non-admins) by not giving them any role in that web property.
Each implementation can be very different in dynamic tag management, with a wide variety of data-collection needs,
variable usage, tools, third-party tags, other systems and technologies, people, teams, geographic regions, and so
on. Using the flexible User Management features and web properties, you can create a configuration that matches
your workflow and processes.
If the scenarios you are tracking, the data you are collecting, the tools you are deploying, and the variables you are
setting are similar across all or some of your domains and subdomains, it is easier to have those domains and
subdomains grouped into the same web property in dynamic tag management. If those are unique for each domain
and subdomain, it is easier to have those domains and subdomains in their own web property. If you choose to
group domains and subdomains in a single property now, you can always change your mind and later create several
web properties.
A web property can contain any number of domains or subdomains. It can also send analytics data to one or several
report suites in Analytics. You can set multi-suite tagging, or you can use conditional logic that sets s.account
according to your particular needs.
If you want to send data to two report suites for every page view and event, you would add a comma-separated list
of report suite IDs in the user interface in dynamic tag management, in the Account Numbers fields, on the Adobe
Analytics Global Settings page.
If you want to send data to a particular report suite based on conditional logic, you would add your logic in the Editor,
in the General section of the Adobe Analytics Global Settings page.
Web Properties 21
First, you can have one or several dynamic tag management Company accounts. Companies contain web properties.
You can have one or several or any number of web properties within a Company account. Within a web property,
you can have one or any number of domains or subdomains.
Some customers have one Company that contains all of their web properties. Some have a Company that contains
many web properties, one for each domain. Some have a Company that contains several web properties, one for
each type of site they manage.
For example, you might have three web properties within your Company account where one contains all of your
blog sites, another contains all of your ecommerce sites, and the third contains all of your lead-generation sites.
Note: Each web property requires its own Embed Codes in your page templates. Any domains or subdomains
you want included in a particular web property would have the same Embed Codes in the page templates
when dynamic tag management is first installed on your site.
As described above, you can use separate Company accounts for your three entities, or you can combine the entities
into one Company account and split the domains / subdomains into different web properties within that Company
account.
Is there a clear way to separate domains and settings within the same dynamic tag management instance?
Within a Company account, you can use multiple web properties to separate domains and settings, or you can put
multiple domains into the same web property.
What are the pros and cons for using one dynamic tag management instance?
With one web property that contains multiple domains and subdomains, you will eventually add conditional logic to
separate unique data collection and tracking needs that only apply to individual domains, subdomains, or subsets
of domains / subdomains.
Most clients use one Company account that contains all of their web properties. Information on this page can help
you determine the best plan for your particular needs within those properties.
If you deactivate a property and expect a tool or rule to stop firing, you should deactivate those item(s) in the property
and then publish that change, if applicable, before deactivating the property.
If the property is already deactivated, you might need to reactivate the property, inactivate the desired items, publish
(if applicable), and then deactivate the property again.
Web Properties 22
Note: Only a user with Admin rights can create a property. For more information about roles, see Create and
Manage Groups in DTM.
Before beginning, review the Best Practices for Planning Web Properties for web properties.
Element Description
Name
The name of your property.
URL
The base URL of the property.
Element Description
Allow Multi-Rule
Allows multiple rules for this property to be approved at one time. (The default
Approvals
approval allows only single-rule approval.)
Tag Timeout
Specifies how long dynamic tag management waits for a tag to fire before timing
out.
Because of how dynamic tag management works, don't worry about this being a
high number, as we have other, better methods of ensuring that slow tags do not
affect the user experience.
Anchor Delay
Specifies how long dynamic tag management waits for tags to fire on clicked links
before moving to the next page. The default value is 100 milliseconds.
Dynamic Tag Management will wait up to the time specified, but if the beacon fires
sooner, the delay is cut short. (That is, user won't always wait the full length of the
delay.)
Note: Property removal cannot be reversed. The requestor must be an admin-level user. This request cannot
be undone.
2. Click Edit Property > Remove Property, then confirm the removal of the property.
Users and Permissions 25
Note: You must have administrative privileges to invite a new user in dynamic tag management. Administrators
are automatically granted permissions to a new property.
Watch an Adobe EnterpriseTV video demonstrating how to create a user in dynamic tag management and set
permissions:
Manage Users
You can invite users to the Adobe Marketing Cloud with the Adobe Enterprise Dashboard (the preferred method)
or you can use the legacy provisioning process in Dynamic Tag Management.
Important:
DTM accounts created after April 5, 2016 are managed by administrators using the Adobe Enterprise Dashboard
in the Adobe Marketing Cloud. To manage other users, the DTM administrator must be a Marketing Cloud
administrator in the Enterprise Dashboard. For more information, see Delegate Administrative Roles to Users in
the Marketing Cloud and Core Services Product Documentation.
For accounts created before April 5, 2016, users are managed using the Users page in DTM. For more information,
see Invite Users to DTM using the Legacy Process.
There are a few scenarios to keep in mind when deciding whether to provision new users with the Marketing Cloud
using the Enterprise Dashboard or by using the legacy provisioning process in DTM.
Use the Enterprise Dashboard: If the user has already authenticated to DTM for a company that does not
manage users with the Enterprise Dashboard (the company was provisioned before April 5, 2016), that user can
be added to a new company that does manage users with the Enterprise Dashboard.
Use the Legacy Provisioning Process: If the user has already authenticated to the Adobe Marketing Cloud
and the account was created by using the Enterprise Dashboard (the company was provisioned after April 5,
2016), that user cannot be added to an existing company that uses the legacy login. If this is the case, you must
create a new email address to use for authentication.
Recommended best practice is to provision new users using the Enterprise Dashboard. However, if there is any
chance that these new users (consultants or agency representatives, for example) will need to access an account
provisioned using the legacy process, you should provision that user in DTM and then link the account to the
Marketing Cloud.
The provisioning process in the Enterprise Dashboard is forward-looking and not backwards compatible.
Important: Before deciding to add users using either the Adobe Enterprise Dashboard or directly in DTM,
read the note in Manage Users.
2.
Click to add a new user.
3. (Conditional) To add the user to multiple groups click the drop-down list, then select the product.
After the user is invited, they receive an invite email to the Marketing Cloud.
Users and Permissions 27
Important: Before deciding to add users using either the Adobe Enterprise Dashboard or directly in DTM,
read the note in Manage Users.
Important: If you are a DTM company admin, you must authenticate via the Marketing Cloud and have
your DTM account linked before activating this option, otherwise you will essentially lock yourself out of
DTM.
If this option is selected, all users for the company must authenticate via the Marketing Cloud and link their DTM
accounts. If users log in to DTM using legacy/company credentials, they will be able to view their company
account, but they won't be able to access it. A message will display informing them that they must log in via the
Marketing Cloud.
The company admin can reverse this option at any time by deselecting this option.
Note: This option is for current customers only. New customers provisioned to DTM will have user
management and authentication automatically restricted to the Marketing Cloud and Enterprise Dashboard.
For more information about logging in to the Marketing Cloud, see Sign in to the Adobe Marketing Cloud. For
more information about the Marketing Cloud, see the Marketing Cloud and Core Services Product Documentation.
3. Click Invite User.
4. Enter the user's email address.
5. (Conditional) Select the group for the user.
Group management makes it easy to organize users and control their access levels. Permissions are set at the
user group level, so all users in the group inherit the group permissions, including access to specific properties.
Users and Permissions 28
An email message with a link is sent to the user. This email lets the user select a password and complete the
setup process.
Until the user completes this setup process, they appear in the Invited Users section on the Users tab. They
move to Registered Users when the setup is complete.
Manage Groups
Information to help you create and manage user groups in the Adobe Enterprise Dashboard and in Dynamic Tag
Management.
4. To select DTM user group types, click the drop-down list under Select Group, select the user group types, then
save the product configuration.
Users and Permissions 29
In order for the group to display in the list, it must be added in the Enterprise Dashboard, as explained in Manage
Web Property Access in DTM.
If a user has already been added as a user to the Marketing Cloud, that user can be added to the group by
clicking into the Users tab. Adding a user creates or updates the user in DTM and assigns the user to the
appropriate DTM group.
Important: Adding an Admin allows the user to manage the group in the Marketing Cloud. It does not add
the user as an admin in DTM.
For more information on user roles, see Create and Manage Groups in DTM.
2. Click Groups.
This role can be defined by property if multiple properties are present in the company, as shown in the following
illustration:
Group management makes it easy to organize users and control their access levels. The Groups page lists all of
the user groups that are set up within the account. Permissions are set at the user group level, so all users in the
group inherit the group permissions.
To access the Groups page, from your company dashboard, click Groups.
Watch an Adobe EnterpriseTV video explaining the benefits of using groups and how to set them up:
Default Roles
Migrated Groups for Existing Customers
Default Roles
Dynamic tag management has five different user roles with varying sets of permissions:
The following table illustrates the permissions that each default role inherits:
If you are an existing customer and certain users have the User role for every property, these users are automatically
migrated to the new User group. However, if other users have the User role for some properties and the Publisher
role for other properties, they will be put into a migrated group with a date and time stamp. A legacy group will be
created for each scenario in your system. In our testing, we have seen some companies with as many as ten legacy
groups.
Another example is if you have users who have not accepted invitations to join your dynamic tag management
company in the past and there are no matching default groups. These users, after accepting the invitations, will be
added to legacy groups according to their associated properties and roles.
These legacy groups can be edited as needed and should be renamed with descriptive names that make sense.
Each user will receive an email message with a link to accept group membership. Users will not display in the
list until they accept invitations.
4. Add additional users as needed.
5. Click Save Group.
From your company dashboard, you can click the Users tab to view a list of users and see related information:
name, email address, updated by, and which groups they belong to (Admin, Users, and so forth).
If a user belongs to multiple groups, the displayed role is the role with the highest level of access. For example, if a
user has the User role for some properties and the Admin role for other properties, Admin displays in the list, as
shown below:
Users and Permissions 34
You can click Revoke to rescind an invitation for a specific user or click Resend to send the invitation email message
to the user again.
You can also add users to groups for a specific property by navigating to the property (your company dashboard >
the desired property) and then by clicking the Manage Groups button.
Create a new user group, select its default role, and add users to the group.
Description: Specify an optional description for the group. The description displays on the Groups page and
can help you locate a specific group and determine its purpose.
Tool Check Boxes: (Optional) Select the desired check box next to any tools to restrict access to those tools.
If the check box is selected, users in this group cannot create or modify the selected tools and related tool settings
in rules. By default, all users in the group have access to all tools.
Users and Permissions 35
A green checkmark ( ) next to a tool indicates that the corresponding tool is currently installed for this property.
If a user is a member of two groups and one group restricts tool access and the other group allows access,
access rights are restricted for any selected tools.
Note that all users in the Admins group have full access to create and modify all tools and related tool settings
in rules. If you are creating or editing an Admins group, the tool check boxes do not display in the UI.
Default Role: (Optional) Select a default role. All newly created properties going forward inherit this role.
Note that if you add users to the Approver group and to the Publisher group, those users have the same roles
as those in the Approver and Publisher group.
In most situations, the roles in the previous table are sufficient. You can, however, create custom default roles.
4. (Optional) To create a custom default role, click Define Role Per Property, then choose a different default role
for each property, as needed.
In the following illustration, the default role for Property1 is "User" and the default role for Property2 is "Approver."
Users and Permissions 36
A use-case for having different roles for each property is in an agency in which you might want some users to
have access to certain properties, but not have access to other properties. Another benefit of having groups with
different access to varying properties is if you have users who come and go from the agency. You can simply
delete an existing user from the group and add a new user without spending considerable time setting up access
rights to different properties.
If you specify different default roles for each property, ensure that you name the group with a descriptive name
and provide an optional description.
Note: Be aware that if you collapse the Default Role section by clicking Define Role per Property again,
all roles are set to the default role, regardless of how they were set before collapsing the section.
5. From the Add User drop-down list, select a user's email address, then click Add User to Group.
The drop-down list is populated with the available users in your system. As you add users, their email addresses
are removed from the drop-down list.
Each user will receive an email message with a link to accept group membership. Users will not display in the
list until they accept invitations.
6. Add additional users as needed.
7. Click Save Group.
Users and Permissions 37
Edit a Group
Edit an existing user group to change its name, description, default role, or add users to the group.
Delete a Group
Note: Do not delete the Admin group. Doing so might require that you call Adobe to re-add users to the
Admin group.
List of Frequently Asked Questions (FAQs) about users and permissions in the Marketing Cloud and in Dynamic
Tag Management.
I added a user using the Admin tab for the DTM product in the Enterprise Dashboard, but that user was not
added as a user in DTM. Why wasnt the user created in DTM?
Adding a user to the Admin tab in a group does not grant permissions in DTM. That process allows the user to edit
the Product Configuration Groups in the Enterprise Dashboard. In order to add the user to DTM, they need to be
added using the Users tab.
My DTM account was created prior to April 5, 2016, how do I manage my users?
If User Management in the Adobe Enterprise Dashboard is not enabled, DTM users are managed from within DTM
on the Users tab.
My DTM account was created prior to April 5, 2016 and I want to migrate my users to log in through the
Marketing Cloud. How do I accomplish this?
I invited a user through DTM, but I want the user to log in through the Marketing Cloud.
An account can be linked to a Marketing Cloud user by selecting the Product Selection box > Activation > Link
Account. For more information, see Link Accounts in the Marketing Cloud.
Why do I see the error Failed to fetch permission groups for this product?
I was invited to a DTM company, who do I get an error that my password is wrong?
If your DTM account is enabled for the Marketing Cloud, but the login company for the new invite is a legacy company,
the account might be the issue.
First, try accepting the link by logging into the DTM account through DTM (not through the Marketing Cloud). If you
receive an error that the password is wrong, use the password reset option.
If the account was created through the Marketing Cloud and was not ever used to log in directly at dtm.adobe.com,
a new email address must be used. This is only the case if the account was created via marketing.adobe.com
and has never logged in via dtm.adobe.com. This scenario occurs when the invite comes from a legacy company
that has not migrated to the Marketing Cloud and the user was created through the Marketing Cloud.
Important: For a successful implementation, it is critical that you follow these instructions as they appear in
Adobe Help. Specifically, you must place the header code in the <head> section of your document templates.
Also, you must place the footer code just before the closing </body> tag. Placing either of these embed codes
elsewhere in your markup, or using asynchronous methods to append the embed codes, are not a supported
implementation of dynamic tag management.
An unsupported implementation will yield unexpected results and prevent Customer Care and Engineering
from assisting with your implementation.
Including multiple embed codes on a single page is not supported, as it can cause conflicts.
Hosting Workflow
Hosting Options
EnterpriseTV Video - Library Hosting Options
Hosting Workflow
The following illustration shows the hosting workflow in dynamic tag management:
Embed Code and Hosting Options 40
Hosting Options
You can deploy dynamic tag management using one or more of the following options, found on the Embed tab:
Akamai (migrated The simplest hosting option to implement. 1. Dynamic tag management generates
from Amazon S3) custom JavaScript libraries.
Globally distributed delivery network.
2. Dynamic tag management exports the
Adds additional third-party infrastructure custom JavaScript libraries to Akamai.
dependencies (DNS lookup, Akamai
3. The target website references the
availability).
Akamai-hosted dynamic tag management
See for information about migrating from libraries directly at the page level.
Amazon S3 to Akamai.
Amazon S3
Note: After July 31, 2015 Adobe will no
longer support Amazon S3.Your dynamic
tag management libraries on Amazon S3
will continue to be served until December
31, 2015, but in a read-only state. Any
changes made in dynamic tag
management will no longer be reflected
in these files.
Self-hosting: FTP
A push approach, whereby dynamic tag 1. Dynamic tag management generates
Delivery
management exports custom JavaScript custom JavaScript libraries.
libraries directly to the web content server host 2. Dynamic tag management exports the
via the FTP protocol. custom JavaScript libraries to host server
This solution requires an FTP server and via FTP.
credentials to be available on the web content 3. The target website locally references the
server to publish changes to the custom custom dynamic tag management libraries.
dynamic tag management libraries.
Self-hosting:
A pull approach, whereby the application 1. Dynamic tag management generates
Library Download
exports custom JavaScript libraries to Amazon custom JavaScript libraries.
S3. There, the libraries can be accessed by a 2. Dynamic tag management exports the
hosted server-side process. custom JavaScript libraries to Akamai.
Embed Code and Hosting Options 41
Additionally, the libraries are available via web 3. Custom dynamic tag management libraries
download directly from the dynamic tag are manually or programmatically moved to
management interface. the web content server.
This solution requires either a manual retrieval 4. The target website locally references the
and publication of the dynamic tag management custom dynamic tag management libraries.
libraries or the creation of an automated process
that pulls the libraries from Akamai onto the web
content server.
You can expect improved performance and more control over security by hosting the FTP Delivery and the Library
Download options on your CDN or infrastructure.
How do I choose a hosting option? Dynamic tag management creates and uses various JavaScript files that
contain all the code needed to run the system. These library files can
be hosted by Adobe, or they can be hosted on your own servers within
your own Web architecture.
The Library Download hosting option also allows you to self-host the
library files. When an authorized dynamic tag management user makes
a change in the software, our system writes those changes out to the
library files. When you host the library files on your servers with this option,
our system needs a way to get those changes to your servers. With the
Library Download hosting option, our system sends a ping (an http post)
to your system to let your servers know theres been an update to the
library files.Your IT team can create a cron job, or other scripted process,
so your servers can pick up the changed files. In this way, whenever a
change is made in dynamic tag management, the files youre hosting on
your servers can be updated in an automated manner.
Embed Code and Hosting Options 42
You can use one or more of these hosting options for a web property,
just dont use more than one embed code in any single page. For example,
you could use Akamai in your staging environments and one of the
self-hosted options in your production environments. Or, you could use
the Akamai option for any sites, domains, or subdomains hosted by one
of your agency partners. These options give you more flexibility to host
the library files according to your specific needs.
What is your current policy regarding The answer to this question helps determine whether the JavaScript
website content sources? library can be hosted on Akamai, pushed to the website file structure via
FTP, or manually pulled into the file structure by a server-side process.
Akamai
FTP delivery
Library download
Can I use more than one dynamic tag Yes, you can turn on and use any number of the hosting options and use
management library hosting option at different embed codes for different domains or subdomains.
once?
For example, you might want to use the Akamai option for your lower-level,
non-production environments such as staging, dev, test, or UAT. At the
same time, you might use one of the self-hosted options, such as Library
Download, for your production environments.
Remember that you cannot use more than one option on the same page.
You should not implement more than one Header Embed code on any
page.
What is your current website content The deployment process affects how quickly changes can be deployed
deployment process? to the site from the dynamic tag management administrative interface. It
also affects how long it takes to initially install dynamic tag management
on the website.
What is the current page-level markup An understanding of the basic page-level markup and structural decisions
and structure of the website? on the website helps with the proper installation of dynamic tag
management and the construction of rules within the administrative
interface.
Akamai
Akamai is the primary external hosting option. Akamai provides you with a reliable hosting experience and is the
simplest option to implement. Akamai provides the greatest third-party infrastructure dependencies, such as DNS
lookup, faster load times, and faster round-trip delivery times.
The Akamai hosting option allows you to store your web property library files on Adobes Edge CDN, which sits on
the Akamai architecture. This option allows you to install the Embed codes in your page templates and quickly get
up and running with dynamic tag management without involving your internal IT teams and servers.
Note: After July 31, 2015 Adobe will no longer support Amazon S3. Your dynamic tag management libraries
on Amazon S3 will continue to be served until December 31, 2015, but in a read-only state. Any changes
made in dynamic tag management will no longer be reflected in these files.
To deploy additional changes to your site after July 31, 2015, you must select one of our other hosting options.
Self-hosting (FTP Delivery or Library Download) is always the suggested best practice, but our 3rd-party
Akamai hosting is a world-class option as well.
Akamai is robust when serving content to a global, high-volume audience of Web visitors. Akamai runs redundant
networks of load-balanced, geo-optimized nodes to serve content as quickly as possible to visitors wherever they
are located throughout the world.
Specifically, Akamai runs more than 137,000 servers in 87 countries within more than 1,150 networks. In terms of
redundancy, Akamai does not just route from one server to another, Akamai routes from one node of servers to
another node of servers as-needed. In other words, each node consists of multiple servers for redundancy within a
node, so a box going down is not an issue because he other boxes in the node take over. If a node goes down,
Akamai serves from the next closest one, with the same cached content. Nodes are dynamically selected based on
visitor location, traffic load, and other factors so content is consistently served from the best local node for each
visitor.
Note: After July 31, 2015 Adobe will no longer support Amazon S3. Your dynamic tag management libraries
on Amazon S3 will continue to be served until December 31, 2015, but in a read-only state. Any changes
made in dynamic tag management will no longer be reflected in these files.
To deploy additional changes to your site after July 31, 2015, you must select one of our other hosting options.
Self-hosting (FTP Delivery or Library Download) is always the suggested best practice, but our 3rd party
Akamai hosting is a world class option as well.
Note: After you disable Amazon S3, you can no longer use Amazon S3 hosting. Ensure that you no longer
need Amazon S3 before turning it off.
Akamai hosting in dynamic tag management functions independently of any Akamai hosting you currently use
for your website.
FTP
Steps to deploy dynamic tag management using FTP (the push methodology).
The FTP Delivery hosting option lets you self-host the library files. When an authorized dynamic tag management
user makes a change in the software, dynamic tag management writes those changes to the library files. When you
Embed Code and Hosting Options 45
host the library files on your servers with this option, dynamic tag management must get those changes to your
servers. With the FTP Delivery hosting option, dynamic tag management connects to your system, using credentials
and server locations you enter into the system, and delivers any changed files. In this way, whenever a change is
made in dynamic tag management, the files you are hosting on your servers can be updated automatically.
3. Provide the required FTP information for the staging and production servers, then click Save FTP Information.
Note: Click Enable Relative Hostnames for Staging and Production Library Hosting, if desired.
Enabling relative hostname prepends the provided library paths with "window.location.hostname". This
allows DTM to load hosted scripts from relative paths, giving you the ability to host your library without
editing your path for each deploy.
Note: The staging code should go only into your staging or development environment. Production code
should be placed on the live production site.
7. Copy the header code and place it within the HEAD section of the site HTML, on every page of the website.
Place it as close to the beginning <head> tag as possible.
8. Copy the footer code and place it within the BODY section of the site HTML, on every page of the website. Place
it as close to the closing </body> tag as possible
Library Download
Steps to deploy dynamic tag management using Library Download (the pull methodology).
The Library Download hosting option also lets you self-host the library files. When an authorized dynamic tag
management user makes a change in the software, dynamic tag management writes those changes to the library
files. When you host the library files on your servers with this option, dynamic tag management must get those
changes to your servers. With the Library Download hosting option, dynamic tag management sends a ping (an
HTTP post) to your system to let your servers know there has been an update to the library files. Your IT team can
create a cron job, or other scripted process, so your servers can pick up the changed files. In this way, whenever a
change is made in dynamic tag management, the files you are hosting on your servers can be updated automatically.
Embed Code and Hosting Options 46
Shared Secret Encrypts the dynamic tag management library during download.
If you enter a shared secret, we use AES-256 to encrypt your .zip file using this
passphrase.
Deploy Hook URL The process of deploying dynamic tag management files to the server can be automated
whenever there is an update. Create a script that is accessible via the specified public
URL.
If you enter a deploy hook URL, we make an HTTP POST to it every time we
successfully update your bundle. The body of the post will include a payload containing
the download URL of the bundle.
4. Complete the fields under Domain and Paths to Tracking File, for staging and production.
Specify the location where the files reside when deployed to your server. Do not include the protocol or any
leading or trailing slashes. Dynamic tag management requires a domain and a path for HTTP or HTTPS for the
production and staging environments.
Note: Click Enable Relative Hostnames for Staging and Production Library Hosting, if desired.
Enabling relative hostname prepends the provided library paths with "window.location.hostname". This
allows DTM to load hosted scripts from relative paths, giving you the ability to host your library without
editing your path for each deploy.
5. Download the files from the specified URL for the respective environment (staging or production), and deploy
them to the location specified in the settings.
6. Click the Header Code and Footer Code sections.
7. Click the appropriate Copy Embed Code button to copy header and footer codes for your staging or development
environments.
Note: The staging code should go only into your staging or development environment. Production code
should be placed on the live production site.
Embed Code and Hosting Options 47
8. Copy the header code and place it within the HEAD section of the site HTML, on every page of the website.
Place it as close to the beginning <head> tag as possible.
9. Copy the footer code and place it within the BODY section of the site HTML, on every page of the website. Place
it as close to the closing </body> tag as possible
Use dynamic tag management to add header and footer code that determines the loading of JavaScript and page
content on your site. You must install both the header and footer code on every page of your site, regardless of the
hosting option used.
Because dynamic tag management includes a snippet of code in both your header and footer, you can run rules at
the beginning or end of a page. This ability allows you to implement testing tools and other technologies while
retaining control over tracking your pages.
Dynamic tag management creates staging and production embed codes you can use to test your changes in your
staging environment before pushing changes to your production environment.
Important: For a successful implementation, it is critical that you follow these instructions as they appear in
Adobe Help. Specifically, you must place the header code in the <head> section of your document templates.
Also, you must place the footer code just before the closing </body> tag. Placing either of these embed codes
elsewhere in your markup, or using asynchronous methods to append the embed codes, or wrapping the
embed codes in any way, are not a supported implementations of dynamic tag management. The embed
codes must be implemented exactly as provided.
An unsupported implementation will yield unexpected results and prevent Customer Care and Engineering from
assisting with your implementation.
Because dynamic tag management includes a snippet of code in both your header and footer, you can run rules at
the beginning or end of a page. This ability allows you to implement testing tools and other technologies while
retaining control over tracking your pages.
1. Copy the production header code and place it within the HEAD section of your site HTML.
Place the code as close to the <head> tag as possible. This code snippet should be placed on every page of
your live production site.
Note: Production embed code reflects only the published items in that property. However, embed code
for staging reflects all items in the associated property, regardless of the published or unpublished state.
To test unpublished items on your production site, locally enable staging in the console by following the
instructions in Test unpublished rules for Akamai hosting.
2. Copy the production footer code and place it in the BODY section of your site HTML.
Place the code as close to the </body> tag as possible.
3. Copy the staging header and footer code, then repeat the steps above on your staging site.
Embed Code and Hosting Options 48
Note: The difference between production and staging code snippets is the addition of -staging to the
filename in the staging version. The footer code remains the same in staging and production.
If the code was not properly installed, you will see the reference error:
Tools
Tools let you quickly integrate Adobe Marketing Cloud solutions on your site. Tools go beyond a basic tag because
they provide additional configuration options. A tool corresponds to Adobe solutions, such as Analytics and Target,
as well as Google Analytics. After you add a tool to a property, it is available for inclusion in a rule.
Dashboard > Company > Web Property Name > Overview
Element Description
Installed Tools Displays the installed tools. Tools are deployments of Adobe Analytics, Adobe Target,
Google Universal Analytics, and so on.
Add a Tool Displays the Add a Tool page. Available tools include the following:
Adobe Analytics
Adobe Audience Management
Adobe Media Optimizer
Adobe Target
Marketing Cloud ID Service (Analytics Visitor ID)
Google Analytics
Google Universal Analytics
Nielsen Tool
Add a Tag You can access rules to add a tag and to determine when your tag will fire. You open
the third-party tags section of your rule, paste your tag, and save the rule.
See Rules.
Assigned Users Displays users, email addresses, and roles. Click Manage Users to add additional
users and define their roles.
Use the AEM ContextHub tool to integrate Dynamic Tag Management with the Adobe Experience Manager (AEM)
ContextHub (AEM's version of the data layer). You can also use this tool to integrate DTM with any data layer, even
for websites that do not use AEM.
DTM customers often use data elements to map to their websites' data layers. For example, the data layer might
include information that a user is looking at a particular product or has placed an item into the shopping cart. DTM
can use this information in rule conditions and actions in a number of ways. This includes the sending of data to
Analytics for reporting purposes or to Target to display customized content for the user.
The AEM ContextHub tool solves many problems associated with data layers. Some data layers don't load at the
top of the page. Other data layers are dynamic or asynchronous and change frequently as the page changes. In the
past, both of these issues made it problematic for DTM to effectively send data or trigger actions.
The AEM ContextHub tool eliminates the need to write custom code that frequently checks to determine if the data
layer changes, loads somewhere other than the top of the page, or is modified as the page changes.
Tools 50
As an example, suppose a customer places an item in the shopping cart and then removes that item. If the page
doesn't refresh as the data layer changes DTM will not recognize the change without a custom code addition. The
AEM ContexHub tool contains a polling engine that checks every second to determine if there are changes.
Because DTM can now proactively populate data elements via the data layer, users can also use AEM ContextHub
data elements in conjunction with previously released conditions, such as Data Element Value. This allows users
to manage data layer values on a page load, or combine the Data Element Value condition with the
dataelementchanged event, in cases where the data layer has changed due to user interaction.
When you configure this tool, you can use the default setting to integrate with the AEM ContextHub or you can
customize the structure to work with any website.
1. Click Web Property Name > Overview > Add a Tool > AEM ContextHub.
Element Description
Customize ContextHub Data Use a custom format that maps to the data layer structure of any website, even
Layer if it does not use AEM.
This option lets you edit your data layer schema. By default, it populates the edit
window with the default ContextHub data layer, where you can make changes
or completely replace it with your code.
Open Editor If you choose the Customize ContextHub Data Layer option, you can use the
editor to insert your custom code.
Prerequisites
AEM ContextHub Tool Components
Data Element Monitoring
Prerequisites
To use the ContextHub Tool, you must meet the following prerequisites:
Each functional area corresponds to a configuration step described in both examples below.
1. The data element must map to a simple Javascript value. Complex values like arrays and objects that are returned
in a data element custom script will not work correctly. Cookies, CSS selectors, and URL parameters also produce
unexpected results and might not work at all. Simple values like strings and integers work fine.
2. Be conservative in the number of dataelementchanged event types that are referenced on a single page. Although
the monitoring is efficient, large numbers of evaluations could impact page performance.
3. The dataelementchanged event type works only within the current page view because it is a DOM-based
monitoring system.
4. The data element monitor polls for the values.
Example using the AEM ContextHub tool that references and uses the default ContextHub data layer within the
Dynamic Tag Management configuration.
Tools 53
The ContextHub data layer will be loaded on a test Adobe Experience Manager (AEM) website, but ContextHub
can be used independently of AEM. Contact your Adobe representative if you would like to use ContextHub
independently of AEM.
All of the ContextHub stores can be referenced from the browser console.
The DTM data layer monitor starts before any other DTM functions, so the examples will not deploy the data layer
through DTM even though it is possible to do so. Instead they will depend on the server-generated data layer.
Otherwise Javascript warnings might occur because certain data layer values may not be available.
Note: At this time only one AEM ContextHub tool is allowed per DTM web property.
1. Click Web Property Name > Overview > Add a Tool > AEM ContextHub.
4. Select Use Default ContextHub Data Layer to leverage the standard ContextHub stores.
Or
Select Customize ContextHub Data Layer to modify the schema. It is necessary to use the customized option
if a non-default ContextHub data layer is being used in the implementation.
The default Data Layer Root enables access to all of the ContextHub stores. Given the dynamic nature of the
ContextHub stores, there are additional functions available with this data layer that are not available in the simple
Javascript object reference used by the generic data layer approach.
5. (Conditional) To use a custom data layer, click Open Editor to view the data layer schema definition. If the custom
data layer is a modification of the ContextHub schema be sure to add ContextHub in the Data Layer Root field.
Tools 55
a. Modify the schema as necessary to match the site data layer schema.
b. Click Save and Close to save the schema and close the editor.
3. Specify a name for the data element. In this example, name the data element "total_price."
4. From the Type drop-down list, select AEM ContextHub.
The name of the AEM ContextHub Tool is populated in the Source, but only one AEM ContextHub Tool can be
defined in the current version.
5. Map the data element to the data layer by selecting a path in the Object selector.
Create an Event-Based Rule that Uses the Data Element Change Event Type
1. In the web property, click the Rules tab, then click Event Based Rules in the left menu.
7. Under Rule Conditions, select Data Element Value from the drop-down list, then click Add Criteria.
8. Select the data element that was created in the previous section (total_price) and assign a value to cause the
rule to fire.
In this example, a regular expression is used to evaluate anything greater than or equal to 50:
^([5-9]\d|[1-9]\d{2,})$
Note: If data element values are used in this way as conditions, it is important that the data element settings
are considered in the match. For example, selecting the Force Lowercase Value option in the data element
Tools 59
settings would convert the value to all lowercase before evaluation. Because Javascript is case sensitive
test is not the same as Test and the condition would not fire as expected.
Change the data layer object that is being monitored to a value that does NOT match the condition above:
ContextHub.setItem('/store/cart/totalPriceFloat','5');
Change the data layer object that is being monitored to a value that DOES match the condition above:
ContextHub.setItem('/store/cart/totalPriceFloat','52');
In the example implementation, an alert box should appear:
If DTM debugging is turned on, the failed evaluation should appear in the console.
Example using the AEM ContextHub tool that references and uses a custom, non-ContextHub data layer within the
Dynamic Tag Management configuration.
The example data layer (_dl) will be loaded on the test web page as a Javascript object definition in the <head/>
section of the page before the DTM embed code is referenced.
<head>
<script>
window._dl = {
page: {
name: 'homepage',
quantity: 1,
friend: 'No one' }
}
</script>
<script src="//assets.adobedtm.com/satelliteLib-*.js"></script>
</head>
The DTM data layer monitor (see below) starts before any other DTM functions, so the examples will not deploy the
data layer through DTM. Otherwise Javascript warnings might occur because certain data layer values may not be
available.
Note: At this time only one AEM ContextHub tool is allowed per DTM web property.
1. Click Web Property Name > Overview > Add a Tool > AEM ContextHub.
A root Javascript object name must be added to the Data Layer Root field for non-ContextHub data layers. The
_dl definition is used in the generic examples in this section.
6. Delete the default schema and paste in the site data layer schema.
7. Click Save and Close to save the schema and close the editor, then click Save Changes.
Tools 64
The name of the AEM ContextHub Tool is populated in the Source, but only one AEM ContextHub Tool can be
defined in the current version.
5. Map the data element to the data layer by selecting a path in the Object selector.
Create an Event-Based Rule that Uses the Data Element Change Event Type
1. In the web property, click the Rules tab, then click Event Based Rules in the left menu.
Tools 66
7. Under Rule Conditions, select Data Element Value from the drop-down list, then click Add Criteria.
8. Select the data element that was created in the previous section (my_friend) and assign a value to cause the
rule to fire.
Note: If data element values are used in this way as conditions, it is important that the data element settings
are considered in the match. For example, selecting the Force Lowercase Value option in the data element
Tools 69
settings would convert the value to all lowercase before evaluation. Because Javascript is case sensitive
test is not the same as Test and the condition would not fire as expected.
alert(_satellite.getVar(my_friend) + is my friend.);
In the developer console check for the existence of the data layer (_dl).
Change the data layer object that is being monitored to the value that was set in the condition above
(_dl.page.friend = Carl).
Tools 70
Change the object to a different value (_dl.page.friend = Bob) and no alert should display.
Note: If DTM debugging is turned on, the failed evaluation should appear in the console.
Change the object to a lowercase value of the match (_dl.page.friend = carl) and no alert should display.
Change the object to the correct case value of the match (_dl.page.friend = Carl) and the alert should once
again display.
You can deploy Adobe Analytics (Standard and Premium) using dynamic tag management by creating the Adobe
Analytics tool and configuring the page code either automatically or manually. The automatic method is recommended
for most users.
Note: For improved visitor tracking, it is strongly recommended that you enable Marketing Cloud ID Service.
Element Description
The type of tool, such as Adobe Analytics.
Tool Type
A descriptive name for this tool. This name displays on the Overview tab under
Tool Name Installed Tools.
Configuration Method Automatic (Recommended): Use dynamic tag management to manage the
configuration. This method enables automatic synchronization of Adobe Analytics
report suites via a Marketing Cloud login or Web Services ID, and manages the
AppMeasurement code.
After the accounts are connected, dynamic tag management pulls the Adobe
Analytics report suite IDs and names into the tool configuration interface, allowing
for increased speed in tool deployment with less possibility for user errors.
Note: You must choose the Automatic option if you are an Adobe Analytics
Premium customer. See Enabling Adobe Analytics Premium below.
Element Description
Web Services: Specify your Web Services username and shared secret.
Shared secret credentials are located in Admin Tools > Company Settings
> Web Services.
Developers, see Get Web Service Access to the Enterprise API for help with
obtaining Web Services credentials.
Manual: Manually manage the AppMeasurement code. You can download the
Analytics AppMeasurement code from Admin Tools > Code Manager.
Click JavaScript (new) for information about downloading the code locally to copy
and paste in the Edit Code field in Library Management.
The Tracking Server and SSL Tracking Server variables are used for first-party
cookie implementation to specify the domain at which the image request and
cookie is written. For more information, see the Correctly Populate the
trackingServer and trackingServerSecure Variable article.
SSL Tracking Server: Specify the information for your SSL tracking server.
3. Click Create Tool to create the tool and display it for editing.
See FAQ - Adobe Analytics Tool for additional information about this tool.
1.
Click the icon next to an installed tool from the Overview tab.
2. Edit the fields as desired.
Tools 73
The following table includes only those elements that differ from the elements available when you are creating
an Analytics tool, as described above. However, you can change any element on the page, as described in both
tables.
Element Description
Enable Automatic
Note: Enabling this setting changes a manually configured implementation
Configuration to the automatic configuration method described in Configuration Method.
This option lets dynamic tag management automatically retrieve your Adobe
Analytics account's configuration.
Update Credentials Refresh the API, for example, to update report suites associated with a user.
3. (Conditional) Configure the tool further as necessary by following the directions in the links below (General,
Library Management, Global Variables, Pageviews & Content, Link Tracking, Referrers & Campaigns,
Cookies, and Customize Page Code).
4. Click Save Changes.
The following table displays the number of eVars and events available in each Analytics account type:
You add the Adobe Analytics Premium tool using dynamic tag management the same way you add Adobe Analytics
(Standard). In order to get the Analytics Premium functionality (if applicable), you must do the following:
There is no "switch" to enable Analytics Premium functionality. Verification is done behind the scenes by API
checks via the automatic configuration. The additional eVars are added to the UI if the account is authenticated as
an Analytics Premium customer.
Note: If you downgrade to standard Analytics in the future, the added premium eVars that are out of the
standard range will be grayed out in both tools/rules. You can view any configured variables that are now out
of range and make any necessary changes to an in-range variable. You cannot add or edit any of these
out-of-range variables, but you will be able to view them and delete them.
Tools 74
General
Field descriptions for the General settings in dynamic tag manager, for deploying Adobe Analytics.
Element Description
Enable EU compliance for Adobe Analytics Enables or disables tracking based on the EU privacy cookie.
You must also have a mechanism to set that cookie to true if you
want a visitor to be able to opt in later:
_satellite.setCookie(sat_track, true");
Tracking Server The domain at which the image request and cookie is written.
See trackingServer.
SSL Tracking Server The domain at which the image request and cookie is written.
Used for secure pages. If not defined, SSL data goes to
trackingServer.
Tools 75
Element Description
See trackingServerSecure.
Data Center The Adobe data center used for data collection.
Library Management
Descriptions of the fields and options in the Library Management settings in dynamic tag management.
Note: If more than one Adobe Analytics tool is used in a single web property, each tool must have a unique
tracker variable name. Duplicative object variable names between Adobe Analytics tools within a single web
property will cause conflicts.
Element Description
Page code is already present Prevents dynamic tag management from installing Adobe Analytics page code if
the code is already present on your site.
This feature allows you to use dynamic tag management to add to your existing
implementation rather than starting from scratch. Be sure to properly set your
tracker variable name when checking this box.
Load library at <Page Top or Specifies where and when to load the page code. Regardless of your selection,
Page Bottom> any rules using the Analytics tool will need to have the same setting.
Library Version: Select the latest version from the Library Version menu. Dynamic
tag management notifies you when new versions are available. You can revert to
a previous version as necessary.
Set report suites using custom code below: When this box is checked, dynamic
tag management looks for a variable in your custom code called s_account. This
variable should contain a comma-separated list of the report suites to which you
want to send data.
Element Description
Open Editor: Lets you insert core AppMeasurement code. This code is populated
automatically when using the automatic configuration method described in Add
Adobe Analytics Tool.
Tracker Variable Name: If you want to run two instances of Adobe Analytics in
parallel (one within dynamic tag management and one natively), you can rename
the main s object. Renaming the object name avoids collisions.
Insert AppMeasurement code when manually deploying dynamic tag management in Adobe Analytics.
1. On the Adobe Analytics tool page, expand the General section, then click Open Editor.
2. Unzip the AppMeasurement_JavaScript*.zip file you downloaded in deploy Adobe Analytics.
If you opt for custom library, when you open the window it will already have the most recent code version present.
There is no need to download the zip from the Admin Console.
3. Open AppMeasurement.js in a text editor.
4. Copy and paste the contents into the Edit Code window.
5. Adobe recommends adding the following code above the Do Not Alter Anything Below This Line:
var s = new AppMeasurement();
s.account = "[insert account name]";
var s_account=s.account
Important: If you add this code, it is recommended that you also select the Set report suites using
custom code below checkbox in the overall library settings.
Global Variables
Field descriptions and information about variables when using dynamic tag management to deploy Adobe Analytics.
These variables fire on all page load rule beacons. You can accomplish the same effect by using a Page-Load rule
set to fire on all pages. These variables might not fire inDirect-Call and Event-Based rules.
Element Description
Server The predefined variable populates the Servers report in Adobe Analytics.
See server.
eVars The eVar variables are used for building custom conversion reports.
See eVarN.
Props Property (prop) variables are used for building custom traffic reports.
See propN.
Dynamic Variable A special prefix to the start of the value. The default prefix is "D=".
Prefix
See Dynamic Variables.
Element Description
Page Name
The name of each page on your site.
See pageName.
See pageURL.
See channel.
Hierarchy
Determines the location of a page in your site's hierarchy.
Se hierN.
Tools 78
Link Tracking
Field descriptions in dynamic tag management for link tracking when deploying Analytics.
Element Description
Enable ClickMap
Determines whether visitor click map data is gathered.
See trackInlineStats.
See trackDownLoadLinks.
Download Extensions
If your site contains links to files with any of the listed extensions, the URLs of these
links will appear in reporting.
See linkDownloadFileTypes.
See trackExternalLinks.
Single-Page App Considerations: Because of the way some SPA websites are
coded, an internal link to a page on the SPA site might look like it is an outbound
link.
You can use one of the following methods to track outbound links from SPA sites:
If you do not want to track any outbound links from your SPA, insert an entry into
the Never Track section.
All # links to this host are ignored. All outbound links to other hosts are tracked,
such as http://www.google.com.
If there are some links that you want to track on your SPA, use the Always Track
section.
For example, if you have a spa/#/about page, you could put "about" in the Always
Track section.
The "about" page is the only outbound link that is tracked. Any other links on the
page (for example, http://www.google.com) are not tracked.
See linkLeaveQueryString.
Tools 79
Element Description
Referrer Override
Overrides the value set in the s.referrer variable, which is typically populated by
the referrer set in the browser.
See referrer.
Campaign
A variable that identifies marketing campaigns used to bring visitors to your site.
The value of campaign is usually taken from a query string parameter.
See campaign.
Use the DTM interface to choose whether you want to use a Query String or Value (which could pull from a data
element):
You can either enter your query string directly in the interface, or you can reference a separate data element if you
have other means of tracking a campaign.
Cookies
Field descriptions for the Cookies global settings used for deploying dynamic tag management in Adobe Analytics.
Element Description
Visitor ID
Unique value that represents a customer in both the online and offline systems.
See visitorID.
Visitor Namespace
Variable to identify the domain with which cookies are set.
See visitorNamespace.
Tools 80
Element Description
Domain Periods
The domain on which the Analytics cookie s_cc and s_sq are set by determining
the number of periods in the domain of the page URL. This variable is also used
by some plug-ins in determining the correct domain to set the plug-in's cookie.
See cookieDomainPeriods.
FP Domain Periods
The fpCookieDomainPeriods variable is for cookies set by JavaScript (s_sq, s_cc,
plug-ins) that are inherently first-party cookies, even if your implementation uses
the third-party 2o7.net or omtrdc.net domains.
See fpCookieDomainPeriods.
Transaction ID
Unique value that represents an online transaction that resulted in offline activity.
See transactionID.
Cookie Lifetime
Determines the life span of a cookie.
See cookieLifetime.
Element Description
Open Editor You can insert any JavaScript call that must be triggered before the final s.t() call, which is
contained in the s_code.
Execute Before UI settings: Interface settings take precedence over the custom code (for example,
if you want to override an eVar if a setting in the interface was enabled).
New Features
This release offers several key usability improvements for Adobe Analytics:
Enables automatic synchronization of Adobe Analytics report suites via a Marketing Cloud login or Web Services
ID.
Question Answer
Is this a new Adobe Analytics tool, A change to the existing tool. If you currently have an implementation of Adobe
or a change to the existing tool? Analytics in dynamic tag management, it will continue to function.
Question Answer
If I switch from manual library Any user code that you have specified is overwritten with the base
management to Managed by Adobe, AppMeasurement library. You must move this code to the new Custom Page
will my current settings or code be Code section at the end of the tool configuration so that the code continues
affected? executing. This method allows the AppMeasurement library to be managed
(and upgraded) separately from the user's custom code.
Potential Pitfalls
There is a small chance that the new integration could cause data collection issues if you currently use Adobe
Analytics.These issues could arise only if you publish your library to production subsequent to the release. (Production
code remains intact until publishing occurs.)
If you want to change a manual configuration to automatic, edit a tool and click Enable Automatic Configuration.
After you create the web property, it is available for editing on the Web Properties tab on the Dashboard.
Activating the web property is not required
3. Add an Adobe Analytics tool to the property:
a) On the Web Properties tab, click the property.
b) On the Overview tab, click Add a Tool.
c) From the Tool Type menu, select Adobe Analytics.
Element Description
Tool Type The Marketing Cloud solution, such as Analytics, Target, Social, and so on.
Tool Name The name for this tool.This name displays on the Overview tab under Installed
Tools.
Production Account ID A number for your production account for data collection. Dynamic tag
management automatically installs the correct account in the production and
staging environment.
Staging Account ID A number used in your development or test environment. A staging account
keeps your testing data separate from production.
Note: The settings on the Adobe Analytics page (General, Cookies, and so on) override settings in your
s_code. If these settings exist in your s_code, there is no need to reiterate them here.
Information about deploying Adobe Audience Manager using dynamic tag management.
<Web Property Name> > Overview > Add a Tool > Adobe Audience Managemer
Setting Description
Tool Name
You can name this instance of audience manager.
Partner
A unique alphanumeric identifier assigned by audience manager.
Code version
Select the API code version used by your implementation.
Tools 85
Setting Description
Integrate with
Select the previously configured tool integration that you want to integrate. If
none, no integration is configured.
Modules:
Select the integrations you want to enable. If enabled, you must provide a
Adobe Analytics minimum amount of configuration code.
Google Analytics
Open Editor
Use the editor to insert the custom audience manager API code. The tracking
call should be included in the custom code.
Information about deploying Adobe Media Optimizer using dynamic tag management.
<Web Property Name> > Overview > Add a Tool > Adobe Media Optimizer
Setting Description
Tool Name
A descriptive name for this implementation.
User ID
Your advertising management account has an associated numeric user ID. It is
displayed in the JavaScript generated for a pixel.
For example:
1234
Transaction ID
Indicate a transaction ID property (ev_transid=<transid>) to include in the tag.
When you include the ID, the advertiser must generate a unique value for <transid>
(for example, an actual order ID) when the transaction is complete. The value is
passed back to advertising management. Advertising management uses the
transaction ID to eliminate duplicate transactions with the same transaction ID
and property value.
If the advertiser's data does not include a unique ID per transaction, Media
Optimizer still generates one, based on transaction time.
The transaction ID cannot contain ampersand symbols (&), which are reserved
as parameter separators.
Tools 86
Setting Description
Note: If you use the Media Optimizer combo tracking service, you must
submit the transaction ID (ev_transid) for the online part of the transaction
in the feed data for offline parts of the transaction.
For more information, see the Tracking section of the advertising
management online help.
Transaction ID can be set globally at the tool level or conditionally at the rule level.
A globally configured transaction ID is inherited by any dynamic tag management
rules utilizing the Adobe Media Optimizer tool, unless specifically overridden in
the rule.
Conversion Property Name / A conversion property to be tracked when an end user views a page containing
Value the conversion tag.
Note: Properties added to this list are not integrated with the client's
Transaction Properties list in the Admin view in advertising management.
However, properties are added to the client's Transaction Properties list
automatically, once advertising management actually gathers data for a
property. Gathering happens when the conversion tag is implemented on
a page and an end user completes a transaction that opens that page.
Conversion properties can be set globally at the tool level and conditionally at the
rule level. A globally configured Conversion Property is inherited by any dynamic
tag management rules utilizing the Adobe Media Optimizer tool in addition to any
conversion properties set in the rule.
Segment ID (Optional) Indicate the numeric ID for an advertising management segment in which to add
the users who complete the tracked transaction. (For JavaScript tags and for
display campaigns only)
Note: If you associate multiple conversion tags with the same audience
segment, the segment will include all of the users who complete those
transaction types.
Segment ID can be set globally at the tool level or conditionally at the rule level.
A globally configured Segment ID is inherited by any dynamic tag management
Tools 87
Setting Description
rules utilizing the Adobe Media Optimizer tool, unless specifically overridden in
the rule.
Tag Property / Value A conversion property name / value to be included in the tag when the specific
rule is fired.
Note: Properties added to this list are not integrated with the client's
Transaction Properties list in the Admin view in advertising management.
However, properties are added to the client's Transaction Properties list
automatically, once advertising management gathers data for a property.
Gathering happens when the conversion tag is implemented on a page and
an end user completes a transaction.
Conversion properties can be set globally at the tool level and conditionally at the
rule level. If a rule uses the Adobe Media Optimizer tool, the configured global
value is inherited and used in addition to any conversion properties configured in
the rule.
SKU Select the configured data element to populate the SKU value in the tag.
SKU can be set globally at the tool level or conditionally at the rule level. If a rule
uses the Adobe Media Optimizer tool and the rule does not specifically set a SKU,
the configured global value is inherited and used. If the rule sets a SKU, any global
SKU configuration is overridden in that rule.
1. Click Property > Rules > Event Based Rules > Create New Rule.
2. Name and configure the rule condition.
Tools 88
Configure the rule so that it fires only in the desired cases. In this example, the rule fires on the click of Add to
cart as indicated by the selector div with a class of addtocart.
Note: Adobe Media Optimizer is also available in page load and direct call rules in dynamic tag management
once an Adobe Media Optimizer tool is installed in the property. See Conditions and Functions for information
about available rule criteria.
Information about creating the Adobe Target tool for deploying Adobe Target in dynamic tag management. You can
configure the library automatically (recommended) or manually.
<Web Property Name> > Overview > Add a Tool > Adobe Target
Tools 90
Important: Adobe strongly suggests that you thoroughly test the new Adobe Target integration in your staging
library before publishing the new tool configuration to your production library. Testing allows you to fully vet
the new integration and mitigate conflicts with your current implementation before it is implemented on your
production site.
This update will be automatically added to all accounts but will not be activated on your staging library until
you make a change to the staging library (any rules or tool edit). Likewise it will not be activated in your
production library until you publish changes to your production library.
Additionally, any current Adobe Target tools in dynamic tag management will maintain their current functionality and
will default to the Manual > Custom configuration option and all currently included code will be maintained.
Setting Description
Tool Name The name for this tool. This name displays on the Overview tab under Installed Tools.
Library retrieval Specifies whether Adobe should manage your Adobe Target code automatically, or whether
method you would like to provide your own custom code manually.
You can manually manage the Adobe Target code. You can download the mbox.js file from
the Target solution interface as follows:
Target Classic: Configuration- > mbox.js > Download
Target Standard: Setup > Implementation > Download mbox.js
After you download the code locally, copy and paste the code into the editor field in the Library
Management section of the tool settings. You also have the option of hosting the code at a
specific URL as an alternative to manually pasting in the code.
Setting Description
Dynamic tag management automatically retrieves the latest mbox.js code from your Adobe
Target account configuration. If you select Automatic, you must either be logged in via the
Marketing Cloud, or you must provide a Client Code value described below.
Client code (Automatic method) A code unique to your Adobe Target account. It is required for your code
retrieval method to be provided and managed automatically by Adobe. If you chose the Automatic method, you
must either be logged in via the Marketing Cloud, or provide your Client Code value after
selecting Manual as the retrieval method.
Client Code (Automatic method) The Client Code value can be retrieved from the Adobe Target solution
interface as follows:
Target Classic: Configuration > mbox.js > Edit > copy value for Client.
Target Standard: Setup > Implementation > Download mbox.js > copy value for Client
from within mbox.js file.
Element Description
Load Adobe Target Library This option ensures the mbox.js code is loaded synchronously in the <head>
synchronously section. It is generally recommended that you leave this option enabled. It is
an Adobe Target best practice to load the mbox.js code in this way.
Once the accounts are connected, dynamic tag management pulls the Adobe
Targetmbox.js code into the tool and optimizes the configuration process.
This process increases consistency between the two solutions.
Code Configuration Managed by Adobe: This option is equivalent to the Automatic configuration
method available when creating the tool. This option loads the mbox.js code
directly from Adobe.
Tools 92
Element Description
This feature optimizes the configuration process when using a manual method,
because no more copying or pasting from the Adobe Target admin console
is required.
You must be logged in via Marketing Cloud or have provided the appropriate
Client Code for this option to be available.
Clicking Check for Updates automatically checks for new versions of the
mbox.js code within your associated Adobe Target account. If a new version
is identified, you have the option to use it or retain the current version.
Custom: You can manually configure the mbox.js code. Two methods are
available to manually host the code in dynamic tag management:
In DTM: Click Edit Code and paste the code in the editor. If you were using
Managed by Adobe and switch to custom, the editor automatically populates
with your mbox.js code.
At URL: If your mbox.js is configured as desired, you can provide the URL
to the file. Dynamic tag management will consume it for use in the Adobe
Target tool.
The parameters configured in dynamic tag management do not override parameters already defined on the page,
but instead appends and sequences to create maximum flexibility and customization on a per page basis.
Element Description
Name Indicate the name of the additional parameter(s) you wish to pass to the global mbox.
Adobe Target does not accept the usage of and in this field. Using it leads to errors on the
web page.
Parameters here take effect only if you use TNT.createGlobalMbox(). If you created your
mboxes using mboxCreate(), these parameters have no effect.
Value Indicate the value of the additional parameter(s) you want to pass to the global mbox.
Tools 93
Important: Adobe recommends that you thoroughly test this Adobe Target integration in your staging library
before publishing the new tool configuration to your production library. Testing the new integration mitigates
potential conflicts with your current implementation before it is implemented on your production site.
Question Answer
Is this a new Adobe Target tool or a change A change to the existing tool.
to the existing tool?
If you currently have an implementation of Adobe Target in dynamic
tag management, it will continue to function as is unless you make
a change. Please review the following questions for more details on
avoiding potential issues.
How does changing from manual library The code previously hosted in the manual editor is replaced by the
management to Managed by Adobe affect mbox.js code supplied by the linked Adobe Target account.
my current settings or code?
See Library Management - Adobe Target
I currently load Adobe Target through a page If you currently load mbox.js through a global page load rule, adding
load rule. Should I be aware of anything as a new Target tool to the property, or changing the configuration of
I migrate to the built-in tool? an existing Target tool, could break this implementation method. This
Tools 94
Question Answer
occurs because the tool deploys another instance of the mbox.js
when utilizing either of the available automatic configuration options,
or the Manual > Hosted by Adobe configuration option.
To avoid this issue, test the deployment in staging to ensure you are
only deploying a single mbox.js code on your site before deploying
a new tool configuration to production.
What pitfalls should I be aware of as I migrate With the present functionality of the mbox.js code, auto-loading the
to the Adobe Target tool? mbox.js code via the integrated Target tool could break scripts
currently being deployed later in the <head> as they may be pushed
down into the <body/> section of the page.
1. Click Property > Rules > Page Load Rules > Create New Rule.
2. Name and configure the rule.
Tools 95
Configure the rule so that it fires only on the pages where you want to deploy the mbox.
Note: Adobe recommends load rules triggering mboxes at Top of Page to ensure the default content is
hidden until the mbox response has been received.
See Rule Conditions and Functions for information about available rule criteria.
3. Expand Adobe Target.
Specify the element to wrap with the mbox using a CSS selector, name the mbox, then configure the timeout if
needed. (It is generally recommended to leave this at the default 1500 ms).
4. Configure the parameters you want to add to the Target mbox or to the global Target mbox.
In this example, this rule deploys an mbox named Hero that wraps a div element with an id of hero and includes
an mbox parameter named Page Name with a value of homepage. It also includes a parameter named Path with
a value of home that it passes to the global mbox.
Tools 96
Note: You can also use data elements in the parameter UI fields to dynamically populate the value. See
Data Elements for more information on data elements.
Setting Description
Tool Name
The name of this instance of Google Analytics.
Production Account ID
You can point to production or staging accounts for data collection. Your staging
Staging Account ID account number is used in your development or test environment. It keeps your testing
data separate from production. Dynamic tag management automatically installs the
correct account in each environment.
Setting Description
Enable EU compliance for
Enables or disables tracking based on the EU privacy cookie.
Google Analytics
When a page is loaded, the system checks to see if a cookie called sat_track is
set (or the custom cookie name specified on the Edit Property page). Consider the
following information:
If the cookie does not exist or if the cookie exists and is set to anything but true, the
loading of the tool is skipped when this setting is enabled. Meaning, any portion of
a rule that uses the tool will not apply.
If a rule has analytics with EU compliance on and third-party code, and the cookie
is set to false, the third-party code still runs. However, the analytics variables will not
be set.
If the cookie exists but it is set to true, the tool loads normally.
You are responsible for setting the sat_track (or custom named) cookie to false if
a visitor opts out. You can accomplish this using custom code:
_satellite.setCookie(sat_track, false);
You must also have a mechanism to set that cookie to true if you want a visitor to be
able to opt in later:
_satellite.setCookie(sat_track, true");
Tracker Name
The tracker name you want to use for your Google Analytics installation. If you specified
that Google Analytics is already installed on your site's pages, you must use the same
name here for proper data collection. The default tracker name for Google Analytics
is blank.
Setting Description
Load Google Analytics page
code at Page Top or Page You can control where and when to load the page code (on a rule-by-rule basis).
Bottom
Global Settings - Enable
Automates the tracking of cross-domain property. Google Analytics customers need
automatic linker link
tracking to implement JavaScript codes for links to different but internal domains, so that cookies
are shared across internal domains.
Cookie Path
You can restrict whether a Google Analytics cookie only functions with a specific folder
on your site.
Cookie Domain
You can change the default cookie domain. If you specified that your web property
spans multiple domains or subdomains, dynamic tag management configures this
automatically.
Setting Description
Classify the following
Create a list of referral sources that are automatically classified as direct traffic, comma
referrers as direct
separated. This is most often used to classify affiliate or in-network searches as direct.
Adobe does not recommend this practice.
Open Editor
Use the editor to customize the page code. This code is inserted into every page
immediately before the call to track the page view. If you want to cancel the initial
default _trackPageview command and write your own to customize page names, be
sure to "return false;" at the end of the script.
GA Default Name
When using the GA default name, you can use Google Analytics as follows in a script.
With trackerName:
tracker = _gaq._getAsyncTracker();
tracker._trackPageview()
With trackerName:
tracker = _gaq._getAsyncTracker("ddf16922edc9c2318ea19ad8369fcc92");
tracker._trackPageview()
Specific Name
When using the specific name option, you can use Google Analytics classic as follows in script.
Tools 101
With trackerName:
tracker = _gaq._getAsyncTracker("alexisclassic");
tracker._trackPageview()
Add a Tool
Setting Description
Tool Name
The name of this instance of Google Analytics.
Tools 102
Setting Description
Production Account ID
Dynamic tag management allows you to point to production and staging accounts for
Staging Account ID data collection. Your staging account number will be used in your development or test
environment, and will keep your testing data separate from production. Dynamic tag
management will automatically install the correct account in each environment.
General
Element Description
Enable support for Google Universal Enables the max dimensions and metrics increase from 20 to 200.
Analytics Premium features
Google Universal Analytics page Prevents dynamic tag management from installing Google Analytics page
code is already present code if it is already present on your site. This feature allows you to use
dynamic tag management to add to your existing implementation, rather than
starting from scratch. Ensure that you properly set your tracker name when
checking this box.
Enable EU compliance for Google Enables or disables tracking based on the EU privacy cookie.
Universal Analytics
When a page is loaded, the system checks to see if a cookie called
sat_track is set (or the custom cookie name specified on the Edit Property
page). Consider the following information:
If the cookie does not exist or if the cookie exists and is set to anything but
true, the loading of the tool is skipped when this setting is enabled. Meaning,
any portion of a rule that uses the tool will not apply.
If a rule has analytics with EU compliance on and third-party code, and the
cookie is set to false, the third-party code still runs. However, the analytics
variables will not be set.
If the cookie exists but it is set to true, the tool loads normally.
You are responsible for setting the sat_track (or custom named) cookie
to false if a visitor opts out. You can accomplish this using custom code:
_satellite.setCookie(sat_track, false);
You must also have a mechanism to set that cookie to true if you want a
visitor to be able to opt in later:
_satellite.setCookie(sat_track, true");
Element Description
Tracker Name The tracker name you want to use for your Google Analytics installation. If
you specified that Google Analytics is already installed on your site's pages,
you must use the same name here for proper data collection. The default
tracker name for Google Analytics is blank.
Google Analytics Code There are two ways to host Google Analytics code:
Google Hosted: You can host the code through Google.
URL: Or you can simply provide the URL to the file here. Dynamic tag
management then consumes this code for its implementation of Google
Analytics.
Data Sample To have Google Analytics only capture a sample of your site's data, specify
the sample rate for Data Sample. To gather all data, leave at 100%.
Site Speed Sample You can also specify the sample rate for capturing data on site speed and
page performance. The Google Analytics default is 1%.
Social - Track Facebook like, unlike, Enables automatic link tracking on the above social buttons on your site.
and share
Social - Track official Twitter button Enables automatic link tracking on the Twitter button on your site.
use
Always send HTTP referrer URL Typically, HTTP referrals come from outside the domain on which you
implemented Google Universal Analytics. Enable this setting if you have
many subdomains and want all URLs to be sent.
Load Google Analytics page code at You can control where and when to load the page code (on a rule-by-rule
Page Top or Page Bottom basis).
Global Settings - Enable automatic Automates the tracking of cross-domain property. Google Analytics customers
linker link tracking need to implement JavaScript codes for links to different but internal domains,
so that cookies are shared across internal domains.
Cookies
Element Description
Visitor Cookie Timeout
Control how long a cookie lasts for a visitor to count as a repeat visitor. The
default value is two years.
Tools 104
Element Description
Cookie Name
Name of the cookie used to store analytics data.
Cookie Path
You can restrict whether a Google Analytics cookie only functions with a
specific folder on your site.
Cookie Domain
You can change the default cookie domain. If you specified that your web
property spans multiple domains or subdomains, dynamic tag management
configures this automatically.
Legacy Cookie Domain This field is used to configure how analytics.js searches for cookies
generated by earlier Google Analytics tracking scripts such as ga.js and
urchin.js.
Campaign Tracking
If your campaign parameters do not show up in the default variables (like utm_source, etc.) configure those here.
Element Description
Set # as a query string delimiter Allows dynamic tag management to recognize values in
the URL after the # symbol as URL parameters.
Hit Callback
The code you add here is executed after each hit has successfully been reported to Google Analytics.
Element Description
Open Editor Use the editor to customize the page code. This code is inserted into every page
immediately before the call to track the page view. If you want to cancel the initial default
_trackPageview command and write your own to customize page names, be sure to
"return false;" at the end of the script.
If you want to cancel the initial default pageview command and write your own to customize page names, be sure
to "return false;"
GA Default Name
When using the GA default name, you can use Google Analytics Universal as follows in script:
ga('send', 'pageview');
In this example, the tracker name is pulled from the DTM Google Analytics Universal interface:
For example:
ga('38f91ccf1ca252deaaba3c2fc421f0f3.send', 'pageview');
Specific Name
When using Specific Name, you can use Google Analytics Universal as follows in script.
Tools 106
For example:
ga('alexisuniversal.send', 'pageview');
You can enable Nielsen tracking using dynamic tag management by creating the Nielsen tool and configuring the
page code either automatically or manually. The automatic method is recommended for most users.
Prerequisites
Add the Nielsen Tool
Set Up Nielsen Rules in Dynamic Tag Management
Approve and Publish All Changes
Prerequisites
You must perform the following tasks before you deploy the Nielsen tool:
Task Description
1. Embed dynamic tag You can add header and footer code that determines the loading of JavaScript
management on the site (all site and page content on your site. You must install both the header and footer
webpages). code on every page of your site, regardless of the hosting option used.
Tools 107
Task Description
2. Add the Marketing Cloud ID The Marketing Cloud Visitor ID Service provides a universal visitor ID across
Service tool. Marketing Cloud solutions. The visitor ID service replaces the legacy Analytics
visitor ID mechanism, and is required by Analytics for Target; video heartbeat;
and Marketing Cloud integrations, including the Adobe/Nielsen integration.
For general information about the service, see the Marketing Cloud Visitor ID
Service Guide.
For information about adding the Marketing Cloud ID Service tool in DTM, see
Marketing Cloud ID Service Settings.
3. Add the Adobe Analytics tool. You can deploy Adobe Analytics (Standard and Premium) using dynamic tag
management by creating the Adobe Analytics tool and configuring the page
code either automatically or manually. The automatic method is recommended
for most users.
Element Description
Element Description
Tool Name A descriptive name for this tool. This name displays on the Overview tab under
Installed Tools.
Collection Server Specify the collection server you obtained from Nielsen (secure-us or secure-au,
for example).
Integration Method Automatic: Use dynamic tag management to manage the integration.
After the accounts are connected, dynamic tag management pulls the Adobe
Analytics report suite IDs and names into the tool configuration interface, allowing
for increased speed in tool deployment with less possibility for user errors.
Note: We strongly suggest that you use the Automatic integration method.
3. Click Create Tool to create the tool and display it for editing.
4. Fill in the fields:
Element Description
Application Name Specify the application's name that you obtained from Nielsen.
Collection Server Specify the collection server you obtained from Nielsen (secure-us or secure-au,
for example). The collection server carries over from the information you specified
above.
Content Group Specify the content group you obtained from Nielsen.
When you add the Nielsen tool, dynamic tag management automatically creates a default Nielsen Time Tracking
rule.
Tools 109
1. Click the Rules tab > Page Load Rules > Nielsen.
2. Set up the rules as desired by specifying when this page rule should fire.
a. Click Conditions, then specify where the rule fires (bottom of page, top of page, DOM ready, or onload).
b. Specify the criteria for firing the rule.
c. Include the path to the pages on which you want the rule to fire (for example, "videos").
d. Click Nielsen to see a set of pre-populated data elements.
e. Click Data Elements to map where you want dynamic tag management to pull the information in these
pre-populated data elements (Asset Name, Player ID, and so forth).
For example, Asset Name might be pulled from a DIV to which you need to point.
Deploy third-party tags from vendors or use your own custom code. The code editor allows for the addition of any
custom script and allows different load options, such as sequential, non-sequential, or HTML/Javascript. As a general
rule, tags that depend on page elements should be defined as sequential tags.
As a general rule, tags that depend on page elements should be defined as sequential tags.
Tools 110
For solutions deployed via dynamic tag management, you can configure the user experience for opting out of data
collection and personalization.
Note: This feature is available on a limited basis and must be enabled by Adobe.
Programmatically, the Privacy Management feature leverages the existing opt-out mechanisms used by each
Marketing Cloud solution.
Developers who want to use a custom interface should refer to the Privacy Manager API.
2. To configure Privacy Management, click Web Property > Overview > Edit Property > Privacy Management.
UI Settings
Customize the text and appearance of the opt-out window presented to site visitors.
Tools 112
Element Description
Display opt-out banner Specifies whether to display an opt-out banner for site visitors. You can
also select the banner location.
Headline The text to display as the heading on the opt-out pop-up window shown
to the visitor.
Introductory Text The text to display as an introduction on the opt-out pop-up window shown
to the visitor.
Custom Style Sheet Lets you use CSS styling for the privacy management configuration window
that the visitor sees.
Tool Settings
The tools that you deployed through dynamic tag management display under Tool Settings.
Tools 113
Method Description
optOut(category) Opts out of any tool that is configured and belongs to category.
openIfRequired() (If required.) The user has not seen the notification or the privacy
settings have changed since he has seen it. This method opens
the notification banner or popup. This is what dynamic tag
management does by default.
savePrivacySettings() Saves the privacy settings via a cookie, which includes the
categories that are selected for opt-out, as well as the set of tools
that are configured.
privacySettingsChanged() Returns whether the privacy settings have changed since the
last time that savePrivacySettings() was called.
Data Elements 114
Data Elements
Data elements are the building blocks for rules. Data elements let you create a data dictionary (or data map) of
commonly used items on a page, regardless of where they originate (query strings, URLs, or cookie values) for any
object that is contained on your site. You use data elements to build a data layer that can be used for Analytics and
other data collection tools.
Rules > Data Elements > Edit.
Use data elements as widely as possible throughout rule creation to consolidate the definition of dynamic data and
to improve the efficiency of your tagging process. You define data rules once and then use them many times.
The concept of reusable data elements is very powerful and you should use them as best practice.
For example, if there is a particular way that you reference page names or product IDs, or grab information from
query string parameters from an affiliate marketing link or from AdWords, and so forth, you can create a data dictionary
(data elements) by getting information from various sources and then using this data in various dynamic tag
management rules.
Using page name as an example, suppose you use a particular page-name schema by referencing a data layer,
document.title element, or a title tag within the website. In dynamic tag management, you can create a data
element as a single point of reference for that particular point of data. You can then use this data element in any
rule that needs to reference the page name. If for some reason in the future you decide to change the way you
reference page name (for example, you have been referencing document.title but you now want to reference a
particular data layer), you don't need to edit many different rules to change that reference. You simply change the
reference once in the data element and all rules that reference that data element automatically update.
Data elements are populated with data when they are used in rules or when manually calling in scripts. At a high
level, you:
CSS Selector Any element value can be retrieved, such as CSS Selector Chain:
a div or H1 tag.
Data Elements 115
src
cookieName
Cookie Any available domain cookie can be
referenced in the cookie name field.
var pageType =
Custom Script Custom JavaScript can be entered into the UI $('div.page-wrapper').attr('class').split('
by clicking Open Editor and inserting code ')[1];
into the editor window. if
(window.location.pathname ==
'/'){return 'homepage';
A return statement is necessary in the editor }
window in order to indicate what value should else
{
be set as the data element value. If a return return pageType;
statement is not included, the default value or }
an empty string will be returned as the data
element value.
Persistence
You can use data elements in the rule editing interface by using the percent sign (%) syntax. Type a percent sign
into the field and you will see a drop-down menu appear with the data elements that you created.
In Custom Script
You can use data elements in custom scripts by using the _satellite object syntax:
Data elements can be set in the custom code section of a rule identifier to guarantee that the data element is available
for the rule. This situation is sometimes necessary for specific timing considerations and issues with existing
implementation code.
For example, entering the following code forces the retrieval of the data element named sample data during the rule
identification step, prior to any data manipulation that happens in the rest of the rule.
Data Elements 118
The custom code section in the identifier must return true, regardless of whether a valid value is available for the
data element. Otherwise, the rule never evaluates as true or runs.
For example, let's say your markup contains a JavaScript variable called "Page_Name", like this:
<script>
//data layer
var Page_Name = "Homepage"
</script>
When you create the Data Element in dynamic tag management, simply provide the path to that variable like this:
Data Elements 119
If you use a data collector object as party of your data layer, simply use dot notation in the Path to reference the
object and property you want to capture into the Data Element, like _myData.pageName, or digitalData.pageName,
etc.
Note: The name is referenced by the rules builder, not an ID. If you change the
name of the Data Element , you must change its reference in every rule that uses
it.
Type
Specifies where the data is pulled from, such as JS Object, CSS Selector, Cookie, URL
Parameter, or Custom Script.
Depending on which type you select, different options display. See Types of Data Elements
for more information and examples.
Default Value
A default element. This value ensures that the data element always has a value, even if
a URL parameter does not exist or cannot be found by dynamic tag management.
Note: If there is no value and no default value, then nothing is returned. Any
variable referencing that data element won't get set. Note also that the default value
field is ignored if it's a "custom code" data element.
Force lowercase
Dynamic tag management automatically makes the value lowercased.
value
Remember this
How long you want dynamic tag management to remember this value.
value for
Valid values include:
Session: Session-based timing can vary depending on the implementation. Session
data elements are set to the session cookie. However, this setting could be based on
Data Elements 120
Option Description
a web server or the browser. It is not related to the session used in marketing reports
& analytics.
Pageview
Visitor
See Data Elements for more information about how to use data elements.
5. Click Save Data Element.
Rules 121
Rules
Dynamic tag management is a rule-based system. It looks for user interaction and associated data. When the criteria
outlined in your rules are met, the rule triggers the tool, script, or HTML you identified.
Identifier The identifier is what you want the rule to look for. The identifier you specify depends on the
type of rule.
Trigger Triggers occur after a rule's conditions are met. A rule in dynamic tag management can trigger
as many discrete actions as you want.
For example, a single rule for an e-commerce Thank You page can trigger your analytics
tools and third-party tags from a single rule. There is no need to create separate rules for
each tool or tag.
Types of Rules
New vs Existing Rules
Types of Rules
There are three types of rules in dynamic tag management as well as several default rules:
Event-based rules are executed when visitors interact with on-page elements.
By leveraging in-page interactions and page-level tagging, you can optimize based on
things like social media sharing, video interactions, tabbed interfaces, image galleries,
and product sorting and filtering.
Rules 122
See Event-Based Rules Example for an example of how to set your condition to look for
clicks on the various tabs on your product pages.
See EnterpriseTV Videos: Event-Based Rules to watch videos about event-based rules.
Page load
Let you target by URL, site section, or set up scenarios that are independent of the site
structure. For example, a page-load rule can load a survey on the fifth page view or in
the seventh minute of a visitors session.
Advanced page-load rules let you, for example, target specific user segments in rules.
See EnterpriseTV Videos: Page-Load Rules to watch videos about page-load rules.
Direct call
Designed to bypass dynamic tag management event detection and lookup systems.
Direct call rules are ideal for situations where you want to tell dynamic tag management
exactly what is happening. Also, they are ideal when dynamic tag management cannot
detect an event in the DOM, such as with Adobe Flash.
See Create conditions for direct-call rules for more information and to watch an
EnterpriseTV video about direct-call rules.
Default rules
When you activate a property, dynamic tag management includes several default rules.
These rules track common interactions with your site and can help you analyze
opportunities throughout your site.
In each rule, you might notice that the screens look very similar: the Conditions section is listed first, then any Installed
Tools, and finally the JavaScript / Third Party Tags section.
The reason the sections are listed in this order is that the Conditions (the visitor scenario being tracked) are the first
things to think about when planning a new rule or a change to an existing rule.
What is the visitor doing? Where is it happening? When is it happening? If the Conditions are the same, if your
scenario is the same, then you can add as many tool actions or variables, and as many third party tags as you would
Rules 123
like to an existing rule, if one exists with the Conditions you need. If you have a different set of Conditions, you need
to create another rule.
For example, if you have a new conversion pixel or tag to place on your site, and you have some existing rules,
think about the scenario that must occur for the rule to execute. Consider whether you have a rule in your web
property with the condition you need, to execute the conversion pixel. Suppose that you already have a page-load
rule for your purchase confirmation page, and you are loading three conversion pixels in the JavaScript / Third Party
Tags section. You can add your new pixel as a new Script in the same section of that rule, without creating a new
rule.
If the Conditions are different, then you need to add a new rule.
An example of how you to use event-based rules in click-tracking for a tabbed interface on a product page.
When using event-based rules, it helps to have some knowledge of CSS selectors so that you can identify elements
on the page.
The CSS Selector lets you quickly and easily select CSS elements to use as triggers for event-based rules without
leaving the DTM rule builder. For more information, see Using the CSS Selector.
If you also have Google Analytics or any other platforms installed, you can leverage the same rule to configure or
send data to as many platforms as you want.
Rules 126
When using event-based rules, dynamic tag management offers powerful tools to surface data from the page and
page elements with which the user interacts.
You can implement rules that trigger during the course of a page load. For example, you can display a survey after
a certain number of page views, or after a specified number of minutes into a session. Page load rules let you target
by URL, site section, or set up scenarios that are independent of the site structure.
Google AdWords Example
A marketer would like to trigger a Google AdWords conversion tag when a user fills out a form and arrives on the
page http://www.mysite.com/form/thank-you.html
Here is how you can set up this scenario in dynamic tag management:
2. In the rule conditions, specify the page where this rule will be triggered.
3. Paste the tag your vendor gave you directly into the Third-Party Tags section.
Because dynamic tag management does not rely on templates, marketers can use any tag within a rule, even in
formatted HTML.
Rules 128
4. Give your rule a name that describes the user interaction like Forms: User submits form.
This description will help you and others identify this rule if they want to use it for their tags or tools later.
5. Save your rule, and you are ready to test it in a staging environment, request rule approval, and publish to the
production site.
Note: By default, page load rules load at page bottom. This setup works for most scenarios. However, if the
rule you are setting up has some dependency on in page content, it might be better to configure the rule to
Rules 129
load on DOM ready. Conversely, if you have other rules that rely on the outcome of the rule in question, load
the rule at Top of Page or Onload to ensure that it fires first.
The following image shows the setting you use for this visitor segment:
You are not required to modify the page, and there are no mbox containers to place in your markup.
Rules 130
3. Click Save, configure your test in Adobe Target and your test is running.
Rules 131
The dynamic tag management load order in relation to the JavaScript load order.
The following diagram shows the general page load order.
Rules 132
Note: Red text on the above diagram represents non-sequential activity. Green text represents sequential
activity.
Rules 133
The following section discusses how the different JavaScript/third-party tags script options are utilized within the
four page-load phases:
Top of Page
Sequential HTML: Injected into <HEAD/> below DTM library include script if <SCRIPT/> tags are used, otherwise
is injected at top of <BODY/>
Sequential JavaScript global: Injected into <HEAD/> below DTM include script as JavaScript include <SCRIPT/>
Sequential JavaScript local: Injected into <HEAD/> below DTM include script as JavaScript include <SCRIPT/>
Non-sequential JavaScript: Injected as asynchronous <SCRIPT/> in <HEAD> below DTM library include script
Non-sequential HTML: Injected as hidden IFRAME and does not affect page HTML
Bottom of Page
Sequential HTML: Injected after _satellite.pageBottom() callback script with document.write() prior to
DOMREADY so that there is no destruction of the visible page
Sequential JavaScript global: Injected after _satellite.pageBottom() as JavaScript include <SCRIPT/>
Sequential JavaScript local: Injected after _satellite.pageBottom() as JavaScript include <SCRIPT/>
Non-sequential JavaScript: Injected as asynchronous <SCRIPT/> in <HEAD> below DTM library include script
Non-sequential HTML: Injected as hidden IFRAME and does not affect page HTML
DOM Ready
Sequential HTML: Will not work because DOMREADY is active and document.write() will overwrite the page
Sequential JavaScript global: Injected into <HEAD/> below DTM include script as JavaScript include <SCRIPT/>
Sequential JavaScript local: Injected into <HEAD/> below DTM include script as JavaScript include <SCRIPT/>
Non-sequential JavaScript: Injected as asynchronous <SCRIPT/> in <HEAD> below DTM library include script
Non-sequential HTML: Injected as hidden IFRAME and does not affect page HTML
Non-sequential HTML third-party rules are always placed into iFrames. There is no such thing as asynchronous
HTML so dynamic tag management refers to the iFrame functionality with that name.
Note: Even though scripts might be injected into the <HEAD/> later in the page processing like DOMREADY and
ONLOAD, scripts will only appear in the proper timing sequence and be either global, local, synchronous, or
asynchronous. Also, dynamic tag management checks to make sure that the timing is being handled properly
and if DOMREADY has already occurred, it will not attempt a page-destructive document.write(). Dynamic tag
management is diligent about not breaking the visual page if at all possible. For this reason, you might see
an "asyc installation" error when the installation might not actually be "async." It is simply an alert that helps
Rules 134
you recognize that the timing on the page is somewhat questionable and that DOMREADY has fired prior to all
of the synchronous scripts loading as they should. If that happens, check to make sure that the pageBottom()
callback is actually in the correct place immediately prior to the </body> tag. If not then these types of errors
can occur.
The dynamic tag management queue processes them in the order listed above but does not distinguish between a
JavaScript and an HTML script within the page load phase.
This means that the order of the page load rules in the queue determines the order in which they are de-queued.
For example, a complete view of the page load rule queue order can be seen by entering the following code into
the JavaScript console:
_satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='pagetop')?_satellite.notify(i.event+':
'+i.name,1):false})
_satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='pagebottom')?_satellite.notify(i.event+':
'+i.name,1):false})
_satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='domready')?_satellite.notify(i.event+':
'+i.name,1):false})
_satellite.each(_satellite.configurationSettings.pageLoadRules,function(i){(i.event=='windowload')?_satellite.notify(i.event+':
'+i.name,1):false})
The category field is only for your own organizational purposes and is not required. You can delete categories
by clicking the x icon in the category.
7. Set up actions for the condition to trigger.
1. Select the type of interaction you want to track, such as mouse clicks, or submitting a form.
Rules 135
Element Description
Delay Link Activation Enable if the event activates a link and you want the link to delay until the
event has time to fire.
Apply event handler directly to Applies the event handler to the specific element that is targeted. This
element setting is tied to the bubbling and layering concept in a browser.
For example, when you click an image inside an anchor tag like <a href="abc.html"><img
src="xyz.png"/></a>, you might expect the click to be associated with the anchor tag, because the tag is in
the bubble stream. However, when you inspect the click in the developer tools, the click may actually affect only
the <img> tag. To ensure that the event is handled correctly, associate the click with the <img> tag and do not
depend on the browser to bubble up the click to a parent element. An event like a click can potentially bubble up
to <body>. It is important to understand where the event is actually bound, and target it specifically to make sure
that the rule fires correctly.
Bubbling means that the event is first captured and handled by the inner most element and then propagated to
outer elements.
3. Indicate the name of the tag you want to track, and additional properties the tag has that you want to match.
Rules 136
See Using the CSS Selector for information about finding the correct element tag.
4. Select and set up any additional criteria or condition types you wish to bind to the rule.
Want to prevent bubbling when the child element already Do not allow if child element already triggers
triggers its own event. event.
Don't want the events of the rule selector you identified to Do not allow events to bubble upwards to
go beyond the element itself in the event hierarchy parents
Event Types
mouseover A pointing device is moved onto the element that has the
listener attached or onto one of its children.
Keyboard keypress A key is pressed and that key normally produces a character
value (use input instead).
change An element loses focus and its value changed since gaining
focus.
HMTL5 Video ended Playback stopped because the end of the media was reached.
stalled The user agent is trying to fetch media data, but data is
unexpectedly not forthcoming.
For example, entering 10% indicates that this rule fires only
when 10% of the total length of the video has been played.
For example, entering 10 indicates that this rule fires only when
10 seconds of the total length of the video has been played.
Browser tab focus Event is triggered when the content gains focus.
enters viewport When the element first comes into the view of the visitor. If the
element is in view immediately upon page load, the rule fires
immediately. If the element comes in view after scrolling, the
rule fires then.
pushState or hashchange The URL path or the hash (fragment identifier) at the end of
the URL changed.
This event type lets you create event-based rules without relying
on developers. These rules fire when common functions in
SPAs occur, such as:
The URL path changed based on use of the HTML5 History
pushState API.
time passed Value in seconds. The event is triggered after the specified
number of seconds has passed.
dataelementchanged A date element changed. This event lets you select a specific
data element to use as a trigger.
Use the CSS Selector to quickly and easily select CSS elements to use as triggers for event-based rules without
leaving the DTM rule builder.
One of the biggest advantages of DTM is the ability to event off behaviors or page interactions on your website.
However, finding the desired CSS elements to include in your rules is sometimes difficult and time-consuming.
The more complex example described below illustrates how to use the CSS Selector when there are many similar
elements on the page, such as the tabs along the top ("Men's," "Women's," "Equipment," and so forth).
1.
Access the CSS Selector widget within DTM by clicking the icon while creating a rule.
Rules 141
In this example, we are creating an event-based rule that uses the Click event type to trigger the rule when users
click the "Sign in or Register" link.
2. Specify the website's URL, then click Load.
Note: Be as specific to the web page that you want to event off as possible. Be aware that CSS style
sheets might change from one page to another, depending on your website and its architecture. It is helpful
to experiment to see how often your style sheet changes.
The website is now loaded in an iFrame with the CSS Selector widget embedded. Mouse over different elements
to get a feel for how the tool works.
Rules 142
If we were creating this rule without using the CSS Selector, we would inspect the desired page element to
determine the proper CSS to use. Using the CSS Selector, simply click the element on the page that we want
to trigger the rule.
3. Click "Sign In or Register."
When you click a page element that you want the selector to match, it turns green. The CSS Selector then
generates a minimal CSS selector for that element.
Rules 143
Notice the panel at the bottom that contains information about the selected element and a button to send the
information to DTM.
The number in parenthesis next to Clear indicates the number of items selected. In this example, the "Sign In
or Register" link does not have anything similar to it on the specified page, so "1" displays. Click Clear to remove
selected items. Click Toggle Position to move the panel to the top or bottom of the iFrame as desired. Click ?
to view help information about the CSS Selector.
4. Click Send to DTM to copy the CSS into the Element Tag or Selector field within DTM.
5. Finish configuring the rule as described in Create conditions for event-based rules.
Without writing any code or inspecting elements, we have created an event-based rule that triggers when users
click the "Sign In or Register" link.
Rules 144
1.
Access the CSS Selector widget within DTM by clicking the icon while creating a rule.
2. Specify the website's URL, then click Load.
3. Click the "Men's" tab to select it.
Notice that many elements on the page are selected and are highlighted in yellow. The number next to Clear in
parenthesis is 28 in this example, which means there are 28 elements on the page that use the "a" tag.
We want to trigger the rule when users click the "Men's" link, so we need to deselect the other similar elements.
Mouse over any similar, highlighted element (for example "Women's) and you'll notice that a red box displays
around the element.
Rules 145
When you click a page element that you want the selector to match, it turns green. The CSS Selector then
generates a minimal CSS selector for that element. In addition, the selector highlights everything that matches
that element in yellow. The CSS Selector starts out broad and then lets you narrow your selection.
Click a highlighted element to reject it (red), or click an unhighlighted element to add it (green). Through this
process of selection and rejection, you can come up with the perfect CSS selector for your needs. Pressing Shift
while moving the mouse lets you select elements inside of other selected elements.
4. Click the element with the red box (Women's) to deselect it and all other similar elements.
5. Click Send to DTM to copy the CSS into the Element Tag or Selector field within DTM.
6. Finish configuring the rule as described in Create conditions for event-based rules.
For example, suppose you have a search results page with multiple links to external web sites. You want to track
which link is clicked by dynamically populating an eVar with the id of the element clicked.
Rules 146
To accomplish this, create an event-based rule to trigger on the click of the links on the page. Then, within the
Analytics section of the rule, set the eVar to %this.id%.
For non-standard attributes, you can similarly leverage the JavaScript function this.getAttribute() by wrapping it in
'%' characters, as follows:
%this.getAttribute(attributeName)%
For example, suppose you have a similar search results page as the preceding example shows. However, these
links contain a non-standard attribute, loc that you want to dynamically set to an eVar based on the link clicked.
To accomplish this, create an event-based rule to trigger on the click of the links on the page. Then, within the
Analytics section of the rule, set the eVar to %this.get Attribute(loc)%.
If you are unsure if the desired attribute is standard or non-standard, reference w3schools.com to learn more about
standard HTML attributes. However, if in doubt, you can use the non-standard getAttribute() format, which will work
in either scenario.
This functionality can be utilized in dynamic tag management rule fields, including:
Analytics Variables
Custom Script
Analytics Variables
Adobe Analytics:
Rules 147
Google Analytics
Pageviews, Events, Custom Variables
Custom Script
Standard attributes can also be referenced using regular JavaScript in custom code.
2. Specify for which condition you would like the rule to fire.
For example, you can select Path to identify specific pages for which you want the rule to fire.
Rules 148
In the Conditions dialog, specify the string that will be passed to _satellite.track() in your direct call, without
quotes.
Watch an Adobe EnterpriseTV video demonstrating how to set up a direct-call rule in dynamic tag management:
Note: If you specify the string that will be passed to _satellite.track() in your direct call using the UI,
as described above, do not use quotation marks. If you insert customized page code using the editor, you
must use quotation marks.
Beyond integrated tools like Adobe Analytics and Google Analytics, dynamic tag management can trigger any type
of JavaScript or inject HTML into your site, in select pages or in specific scenarios.
Each rule can trigger as many scripts or HTML injections as you want.
Note: Because DTM allows you to inject custom code into your page, please take care not to create cross-site
scripting (XSS) vulnerabilities (see OWASPs guide for more info). Using data elements within a script requires
particular attention. Always assume data element values might come from an untrusted source.
1. Click JavaScript / Third Party Tags to add a new script to your rule.
Rules 149
5. Click Save Code, and the script will be added to the queue for the rule.
Rules 150
Describes all dynamic tag management rule conditions and their functions.
Subdomain Indicate rule to fire or not fire on specified Enable regex on this
subdomain(s). condition to include
multiple scenarios in a
single condition.
Path Indicate rule to fire or not fire on specified URL Enable regex on this
path(s). condition to include
multiple scenarios in a
single condition.
Parameter Indicate rule to fire if specific URL parameter(s) Enable regex on this
with specific values are present. condition to include
multiple scenarios in a
single condition.
Technology Cookie Opt-out Indicate rule to fire only if user accepts cookies Requires data element
based on presence of sat_track cookie that setup.
is set to 'true'
Cookie can be given
custom name on the Edit
Property page.
Engagement Traffic Source Indicate rule to fire if visit came from specified Enable regex on this
source. condition to include
multiple scenarios in a
single condition.
Rules 152
Landing Page Indicate rule to fire if visit landed on specified Enable regex on this
page(s). condition to include
multiple scenarios in a
single condition.
Page Views Indicate rule to fire if visitor has had >, =, or <
specified number of page views in this session
or all sessions.
Registered User Indicate rule to fire based on user registration Requires data element
status as indicated in data element. If the setup.
indicated data element has a value, then the
condition evaluates as "true" (does not include
the default value).
Logged In Indicate rule to fire if user is / is not logged in Requires data element
as indicated in data element. If the indicated setup.
data element has a value, then the condition
evaluates as "true" (does not include the
default value).
Previous Converter Indicate rule to fire if user is / is not a previous Requires data element
converter as indicated data element. If the setup.
indicated data element has a value, then the
condition evaluates as "true" (does not include
the default value).
Cart Item Quantity Indicate rule to fire if user has certain number Requires data element
of items in cart as indicated in data element. setup.
Cart Amount Indicate rule to fire if user has certain dollar Requires data element
value in cart as indicated in data element. setup.
Data Cookie Indicate rule to fire if specified cookie with Enable regex on this
specified value is present. condition to include
Rules 153
Data Element Value Indicate rule to fire if specified data element Requires data element
with specified value is present. setup.
Variable Set Indicate rule to fire if specified JS object with Enable regex on this
specified value is present. It may be necessary condition to include
to prefix the object path with the appropriate multiple scenarios in a
scope depending on the scenario - 'this.', single condition.
'event.', 'target.', 'window.', or 'param.'
Once the legacy code has been removed, you just uncheck this box and then dynamic tag management will begin
to deploy the Analytics page code to your site, allowing you to get the benefits of dynamic tag management right
away without having to wait.
Once you rename the Analytics object then you are able to run both implementations: your original one and the one
within dynamic tag management.
How to migrate from Adobe Tag Manager 1.0 or 2.0 to a new implementation of dynamic tag management.
Step 1 Migrate your existing Adobe Tag Manager Adobe Tag Manager 1.0 to Dynamic Tag Management
tags to dynamic tag management. Mapping
Step 2 Deploy your dynamic tag management In your staging environment, replace your Adobe Tag
implementation to staging. Manager page code, then validate your dynamic tag
management implementation.
Step 3 Plan and execute your production rollout. This involves replacing the Adobe Tag Manager page
code with the header and footer code, and making sure
that all changes are published.
Custom Core JavaScript / Third Custom JavaScript can be deployed directly into the JavaScript /
JavaScript Party Tag Third Party Tags section of a rule. In most cases, you can paste the
page code provided by the vendor directly into a tag with no additional
configuration.
Product Code
SiteCatalyst Adobe Analytics Follow the instructions in Add Adobe Analytics Tool to add an Adobe
Tool Analytics tool in dynamic tag management.
SiteCatalyst > Survey
Option 1
SiteCatalyst > Video
Tracking Host code using the Managed by Adobe option. This method
leverages the base version of the AppMeasurement code and allows
SiteCatalyst > Genesis
you to choose between the latest available code versions.
Integrations
Migrating to Dynamic Tag Management 156
Option 2
This is all of the code beginning with the s_account declaration and
ending with the first s.setTagContainer command. (Do not include
this s.setTagContainer in this situation). Here is an example:
Migrating to Dynamic Tag Management 157
Paste this code into the Custom editor in the Adobe Analytics tool in
dynamic tag management.
Then, from the same preview file in ATM, copy the below the line
code. This code begins with:
/************* DO NOT ALTER ANYTHING BELOW THIS LINE!
**************/
Migrating to Dynamic Tag Management 158
and ends with the second setTagContainer function. (In this case,
include the setTagContainer function, because this code should not
be altered). Ensure the code only in this block is included. Any code
set in the Custom Code (after products) section is included after this
code block in the preview file, so ensure that only the intended code
block is included in the copy. For example:
Migrating to Dynamic Tag Management 159
Paste the code into the same Custom editor in dynamic tag
management after the above this line code.
Adobe Audience
Demdex Add and configure an audience management tool.
Manager Tool
HTML HTML Create a rule with conditions mimicking the ATM firing rules.
Copy all of the code into the JavaScript / Third Party Tags
editor in the rule. Select between non-sequential and sequential
HTML as applicable.
JavaScript JavaScript Create a rule with conditions mimicking the ATM firing rules.
Copy all of the code into the JavaScript / Third Party Tags
editor in the rule. Select between non-sequential and sequential
JavaScript as applicable.
Image Beacon HTML Create a rule with conditions mimicking the ATM firing rules.
Copy the image URL from the 1.0 tag into the JavaScript / Third
Party Tags editor of the rule. Wrap the image url in <img> tags
and configure as non-sequential or sequential HTML as
applicable.
Remote Script HTML Create a rule with conditions mimicking the ATM firing rules.
Copy the script URL from the 1.0 tag into the JavaScript / Third
Party Tags editor of the rule. Wrap the script url in script tags
and configure as non-sequential or sequential HTML as
applicable.
IFrame HTML Create a rule with conditions mimicking the ATM firing rules.
Copy the iframe URL from the 1.0 tag into the JavaScript / Third
Party Tags editor of the rule. Wrap the iframe url in iframe tags
and configure as non-sequential or sequential HTML as
applicable.
Note: If the conditions set in the firing rules are the same between each custom tag, they can be placed into
a single rule in dynamic tag management.
Product Code
SiteCatalyst Adobe Analytics Follow the instructions in Add Adobe Analytics Tool to add an Adobe Analytics
Tool tool in dynamic tag management.
SiteCatalyst >
Survey Option 1
SiteCatalyst > Host code using the Managed by Adobe option. This method leverages the
Video base version of the AppMeasurement code and allows you to choose between
the latest available code versions.
SiteCatalyst >
Integration Module
Migrating to Dynamic Tag Management 161
With this option, above this line customization can be configured in the
available interface fields or pasted into the Customize Page Code editor.
Option 2
1. In Adobe Tag Management 2.0, click Edit next to the latest container file.
2. Click Preview to view the generated file.
3. Locate the sitecatalyst JS file and click See content.
4. Copy all of the above this line code.
This is all of the code beginning with the s_account declaration and ending
with the first s.setTagContainer command. (Do not include this
s.setTagContainer in this situation). Here is an example:
Paste this code into the Custom editor in the Adobe Analytics tool in dynamic
tag management.
Migrating to Dynamic Tag Management 162
"Then, from the same preview file in ATM, copy the below this line code. This
is code begins with:
/************* DO NOT ALTER ANYTHING BELOW THIS LINE!
**************/
Paste the code into the same Custom editor in dynamic tag management
after the above this line code.
Note: Since mistakes can occur with copy / paste, please be sure to
review the implementation in dynamic tag management thoroughly and
Migrating to Dynamic Tag Management 163
Adobe Target
Adobe Target Configure Add Adobe Target Tool.
Tool
Adobe Audience
Audience Configure Add Adobe Audience Manager Tool.
Manager Tool
Management
Custom Code
HTML HTML Create a rule with conditions mimicking the ATM firing rules.
Copy all of the code into the JavaScript / Third Party Tags
editor in the rule. Select between non-sequential and sequential
HTML as applicable.
JavaScript JavaScript Create a rule with conditions mimicking the ATM firing rules.
Copy all of the code into the JavaScript / Third Party Tags
editor in the rule. Select between non-sequential and sequential
JavaScript as applicable.
Remote Script HTML Create a rule with conditions mimicking the ATM firing rules.
Copy the script URL from the 2.0 tag into the JavaScript / Third
Party Tags editor of the rule. Wrap the script url in script tags
and configure as non-sequential or sequential HTML as
applicable.
IFrame HTML Create a rule with conditions mimicking the ATM firing rules.
Copy the iframe URL from the 2.0 tag into the JavaScript / Third
Party Tags editor of the rule. Wrap the iframe url in iframe tags
and configure as non-sequential or sequential HTML as
applicable.
Note: If the conditions set in the firing rules are the same between each custom tag, they can be placed into
a single rule in dynamic tag management.
Dynamic Tag Management Object Reference 165
Important: To ensure ongoing success of your implementation, do not configure custom code in your library
to override any of the _satellite object methods. Only the methods specified below are safe to call directly.
Reliance on custom code using other _satellite object methods may put your implementation at risk, as
these methods could be subject to change in future product releases.
_satellite object references that are safe to call directly in custom code:
_satellite.notify()
_satellite.track()
_satellite.getVar()
_satellite.setVar()
_satellite.getVisitorId()
_satellite.setCookie()
_satellite.readCookie()
_satellite.removeCookie()
_satellite.isLinked()
Architecture 166
Architecture
Information about dynamic tag management architecture.
Architecturally, dynamic tag management comprises two main components:
Management Application: Offers an easy-to-use, tab-structured configuration user interface.
JavaScript libraries: Produced by the Management Application and transported to hosting servers. Dynamic tag
management includes two types of JavaScript libraries:
Staging Library: Every change you make in the Management Application is immediately updated to use on the
staging server.
Production Library: Only the final, approved version of a tool or rules makes it onto the production server.
This model fits well into the approval workflow, in that development or staging code is never accidentally included
in the production library. See Publish Workflow.
Watch an Adobe EnterpriseTV video that explains the basic elements of dynamic tag management's architecture:
Question Answer
How much does dynamic tag management Dynamic tag management is free.
cost?
Are there limitations on my use of dynamic You can create as many Web Properties as you want and write as
tag management? many rules as you want. You can also use it to deliver any digital
marketing service, even if you dont use it to deliver Adobe Digital
Marketing solutions. There is no effective limitation on your use of
the capability.
Why is it an advantage for customers (over The dynamic tag management advantage is the control and flexibility
competitive offerings) to use dynamic tag of using rules. It is also the only market-leading tag management
management from Adobe? solution that supports all of your digital marketing services and is
offered to customers at no additional cost.
Who can help me with my dynamic tag Adobe Global Services provides dynamic tag management
management implementation? implementation, as do several implementation partners. Contact
your account manager for more information.
With which Adobe Marketing Cloud solutions Dynamic tag management will support all of the Marketing Cloud
are dynamic tag management integrated? solutions as well as any digital marketing service, regardless of
vendor.
How do I access dynamic tag management Before you can start using dynamic tag management, someone from
through the Adobe Marketing Cloud? your company must request access. See Requesting Access to
Dynamic Tag Management.
Why am I getting an "Access Failed" error Make sure that your company has been provisioned to use the
when I try to access the Marketing Cloud? Marketing Cloud. See Access the Marketing Cloud in the Marketing
Cloud Product Documentation.
Frequently Asked Questions 168
Question Answer
How do I assign my account to a Company You must add an organization to the Marketing Cloud
name in the Marketing Cloud? Organizations & Product Access page and set it as the default
organization. You add an organization if you have access to more
than one company's Marketing Cloud accounts. See Organizations
in the Marketing Cloud Product Documentation.
How do I link my account to an Adobe ID? When you click Join Marketing Cloud, you can step through a
wizard that helps you link your solution account credentials to your
Adobe ID. Your Adobe ID becomes your single login for all of the
Marketing Cloud solutions and services. See Join the Marketing
Cloud from a Solution in the Marketing Cloud Product
Documentation.
How do I link solutions from within the For more information, see Link Accounts in the Marketing Cloud in
Marketing Cloud? the Marketing Cloud Product Documentation.
Do I need to remove my Analytics or other No. You can leverage dynamic tag management without touching
tags from my site to use dynamic tag any of the existing tags on your site. Just place the embed code and
management? start creating rules. Dynamic tag management can work with existing
services tagged directly to the page.
Does dynamic tag management work for apps For web apps (applications that run in the browser or for pages with
as well as sites? many Ajax sequences), DTM provides excellent data collection and
distribution capabilities. See Event Types.
DTM is fully compatible with any hybrid mobile apps using a wrapper,
such as PhoneGap or Cordova. DTM is also fully compatible with
responsive designs or mobile-optimized sites consisting of HTML,
CSS, and JavaScript.
If the apps are a hybrid of native code for their screen "shells"
(header, footer, & sidebar) and the native app pulls in HTML and
CSS content from the web to display on the mobile device screen,
DTM can be useful for the web content.
Frequently Asked Questions 169
Question Answer
In other words, the tag management functionality you can use in a
mobile application depends on how the app was built.
What third-party tags are supported by Any third-party tag can be deployed through dynamic tag
dynamic tag management? management. Our top-down, rules-driven approach leverages those
third-party tags as fuel for power digital marketing use cases.
Which browser versions does DTM support? The DTM user interface supports the latest version of Safari, Chrome,
and Firefox as well as version 9 and above of Internet Explorer.
The DTM library supports the latest version of Safari, Chrome, and
Firefox as well as version 8 and above of Internet Explorer.
Question Answer
With which Adobe Marketing Cloud solutions Dynamic tag management will support all of the Marketing Cloud
are dynamic tag management integrated? solutions as well as any digital marketing service, regardless of
vendor.
How do I access dynamic tag management Before you can start using dynamic tag management, someone from
through the Adobe Marketing Cloud? your company must request access. See Requesting Access to
Dynamic Tag Management.
Why am I getting an "Access Failed" error Make sure that your company has been provisioned to use the
when I try to access the Marketing Cloud? Marketing Cloud. See Access the Marketing Cloud in the Marketing
Cloud Product Documentation.
How do I assign my account to a Company You must add an organization to the Marketing Cloud
name in the Marketing Cloud? Organizations & Product Access page and set it as the default
organization. You add an organization if you have access to more
than one company's Marketing Cloud accounts. See Organizations
in the Marketing Cloud Product Documentation.
Frequently Asked Questions 170
Question Answer
How do I link my account to an Adobe ID? When you click Join Marketing Cloud, you can step through a
wizard that helps you link your solution account credentials to your
Adobe ID. Your Adobe ID becomes your single login for all of the
Marketing Cloud solutions and services. See Join the Marketing
Cloud from a Solution in the Marketing Cloud Product
Documentation.
How do I link solutions from within the For more information, see Link Accounts in the Marketing Cloud in
Marketing Cloud? the Marketing Cloud Product Documentation.
How do I provision the Adobe Marketing Cloud See Marketing Cloud ID Service Settings.
ID service using DTM?
How do I troubleshoot my account access For more information about troubleshooting issues that arise from
when it is linked to the Marketing Cloud ID account linking, see Troubleshooting Account Linking in the
Service. Marketing Cloud Product Documentation.
How do I implement Adobe Experience Contact Customer Care to get the required information and to get
Manager (AEM) using DTM? started.
FAQ - Advanced
A FAQ about performance, rules, loading, hosting, and so on.
Question Answer
Can I manually implement s_Code through You can create and configure an Adobe Analytics tool automatically
dynamic tag management? or manually. For more information about a manual (legacy)
implementation, see Manually implement Adobe Analytics (legacy).
Question Answer
Synchronously loading JS and HTML scripts via dynamic tag
management uses document.write.
Will dynamic tag management reduce my Dynamic tag management has never shown signs of negatively
website's performance? affecting page load time or execution speed.
How do I remember which tags are in which Adobe recommends using the rule Name, the Tag Name, and the
rules? How do I keep track of my tags and Categories to label your rules in a way that helps you find things
make it easier to find certain rules? faster later on, when you need to come back and change a rule, or
group of rules.
For example, because different Page Load and Event Based rules
respond to different Conditions, it might make sense to add an
indicator about the Conditions in the rule Name, like Global Page
Load."
Frequently Asked Questions 172
Question Answer
When working with Third Party Tags or custom JavaScript, you can
add information into the Tag Name field. Later, when you are looking
for all the rules with a certain tag, you can filter the list of rules by
Tag Name to find all rules containing that tag.
Finally, each rule can be labeled with a Category and a value. The
Category is also available when filtering your list of rules, so you
can easily and quickly find the list of rules in a certain Category. For
example, using a Category like 3rd Party with a value of
DoubleClick lets you search for all rules in the 3rd Party Category,
or all rules with the value of DoubleClick.
Does dynamic tag management have features Adobe recommends the use of tag event callbacks provided by
that help avoid errors due to asynchronous amc.on to wrap any code that depends on tags delivered by any
tag loading or rare cases of CDN tag management system.
unavailability?
See amc.on Tag Event Callbacks.
Can the dynamic tag management library files Adobe offers two options for self-hosting the library files: FTP
work with the version control system we use Delivery and Library Download. When you choose one of these
at my company? self-hosted options for the library, each time you make changes in
dynamic tag management, those changes are written out by the
system to the library files. Those files are typically then "pushed" or
"pulled" to your architecture automatically. Once the updated library
code is on your servers, you can add the files to your version control
systems and processes however you like. If you use GitHub, SVN,
or some other system to manage your web development code or
content, that works fine with dynamic tag management.
Can I use dynamic tag management with our Currently, dynamic tag management can be used in any digital
mobile applications? experience created with HTML, CSS, and JavaScript. This includes
any mobile-optimized content or responsive designs. This also
includes mobile applications created with wrappers like Cordova or
PhoneGap.
Question Answer
on HTML documents pulled into your mobile app when desktop or
responsive content is accessed within the native app experience,
like in hybrid or crossover content situations.
How do I set s.pageName without creating a There are a number of ways to set s.pageName for each page,
separate rule for each of my web pages? without creating a separate dynamic tag management Page Load
rule for each page. In dynamic tag management, the conditions for
your rules answer questions like: Whats the visitor doing? Where
are they doing it? When is it happening? You can set any number
of variables, trigger different tags or tools, and execute any number
of scripts from within the same rule, as long as you want all those
things to happen in response to the same conditions.
Then, you could create a global Page Load rule and assign that
Data Element to s.pageName, either in the interface, or in the
Custom Editor code window. It will then be dynamically populated
with the value of document.title for each page that meets your
conditions.
How do I choose a hosting option? Dynamic tag management creates and uses various JavaScript files
that contain all the code needed to run the system. These library
files can be hosted by Adobe, or they can be hosted on your own
servers, within your own Web architecture. Hosting options are:
Akamai
FTP delivery
Library download
You can use one or more of these hosting options for a Web
Property. Do not use more than one Embed code in any single page.
For example, you could use Akamai in your staging environments,
and one of the self-hosted options in your production environments.
Or, you could use the Akamai option for any sites, domains, or
subdomains hosted by one of your agency partners. These options
give you more flexibility to host the library files according to your
specific needs.
Does the dynamic tag management code send Dynamic tag management is a way to get JavaScript and HTML to
any information back to Adobe? your pages. It sends data only to the systems, tools, or tags that
you specifically choose when using the system. In other words,
Frequently Asked Questions 174
Question Answer
dynamic tag management does not send any data anywhere, unless
you specifically tell it what data should be collected, and then tell it
when, where, and how it should be sent to any systems, tools, or
tags.
You have control over the specific data points that only get sent to
the places and technologies you designate.
How do I handle multiple geo markets, See Separating the DTM Environment for Multiple Entities.
business units, and subdomains?
My data element setup does not seem to be Navigate to a page where the data element should be available on
working. How do I test it? your site. Open your web console and type in
_satellite.getVar(dataelementname) and press enter. This
action returns any value that is present for the noted data element
on that page. If the value is undefined, the data element is likely
setup incorrectly. If the value is null, then that data element may not
have a value on that particular page.
How can I tell if my site is in a live or staging DTM Switch is a browser plugin for easy switching between debug
environment? mode and staging mode for dynamic tag management users. It is
available for both Google Chrome and Mozilla Firefox. See Dynamic
Tag Management Plugins.
Question Answer
Where do I put my plugins when If using DTM to manually host the s_code, plugins can be added in the same
implementing Adobe Analytics via editor as the hosted s_code, just as it would be in a typical Adobe Analytics
DTM? implementation.
However, it is also an option to place the plugins in the editor within the
Customize Page Code section of the tool settings. Both implementation
methods should be equally effective.
Question Answer
If I switch from manual library Any user code that you have specified is overwritten with the base
management to Managed by Adobe, AppMeasurement library. You must move this code to the new Custom Page
will my current settings or code be Code section at the end of the tool configuration so that the code continues
affected? executing. This method allows the AppMeasurement library to be managed
(and upgraded) separately from the user's custom code.
How do I configure persistence for See the Persistence section in Data Elements.
a data element?
Information about effective solutions to the issues affecting page load speed.
Adobe dynamic tag management provides a number of effective solutions to the issues affecting page load speed.
Dynamic tag management approaches the page differently from most other solutions, by providing conditional logic
in its core library file that delivers file assets only when needed. In addition to a focus on scenario-based logic and
precise activation of vendor technologies, dynamic tag management provides a series of features that dramatically
improve page speed. These include:
Self-hosted static file delivery that eliminates the dependency on third-party hosting and DNS
Parallelization of tag loading through asynchronous delivery
Tag killing options with timeouts that can be modified by the client
Dramatically reduced file size through the optimized dynamic tag management library schema - over 90% smaller
than competitors
Enhanced file compression and delivery
Optimized timing and delivery sequencing that can be modified by the client
Client-side delivery of file assets that eliminates any additional server-side processing
Each tag management system (TMS) vendor must deal with the challenges of page load speed and Adobe dynamic
tag management provides the best set of options that can be assembled to meet these challenges. There are also
a number of guiding questions that should be answered when evaluating page load speed and TMS options.
There are essentially six areas that affect page load speed:
Frequently Asked Questions 176
The caching of site assets occurs at the browser level and is not something that TMS vendors can directly address.
The same is true of the time that it takes for servers to create site pages and prepare them for delivery. Both of these
areas can increase and decrease the time that it takes for a page to load. Because TMS vendors cannot directly
address the first two page load issues, this overview focuses on the remaining four areas.
All major TMS options attempt to reduce the number of downloaded files and also optimize their size. The approach
that each TMS takes to accomplish those tasks might vary somewhat, but in the end they each provide some
improvement to the final file weight that is delivered to the page. When evaluating a TMS it is important to understand
the architecture involved in the packaging and deployment of the individual files to the client web browser.
Are the files assembled server-side on each request or delivered from pre-published static files?
If files are assembled dynamically, how long does file assembly take for each request?
Is there a server-side-only management of a portion of the files, and if so, what are the limitations of that architecture?
What compression techniques are used in the generation of the files?
Are optimizations provided in the TMS file generation that might help mitigate browser errors?
In the final analysis, each major TMS vendor reduces the number of downloaded files and optimizes the file size
with some degree of success.
The areas where TMS solutions can see appreciable speed differences on the page are in the areas of connection
speed and file loading. All of the major TMS offerings provide the option of a globally distributed CDN to deliver their
files. Hosting files on any infrastructure is also available as an option when using Adobe dynamic tag management.
In most cases a CDN provides an efficient means to deliver the TMS files. However, there are several cautionary
questions that must be answered relating to the hosting methodology that is provided by the TMS.
What happens if the host CDN or regional DNS service fails?
A number of enterprise-level failures have occurred in these areas during critical delivery times for some TMS
vendors. Self-hosting of TMS assets prevents this situation from occurring because the files are delivered along
with the rest of the client-hosted website assets either on their own architecture or an architecture of their choice.
What are the response times for file retrieval?
Are international response times significantly different for regional visitors?
How responsive are the vendors of the third-party code that the TMS manages like Facebook, Google, Foresee,
etc.?
Each of these third-party connections can cause delays even if the TMS files are delivered quickly. Does the TMS
have client-adjustable tag timeouts that mitigate vendor delays?
File loading also has an effect on page speed, but more specifically, on the user experience. The use of asynchronous
tag loading, conditional logic that determines what file assets will be delivered, and the placement of timeouts on
tags provide ways to parallelize tag behavior and improve the loading of the page. Although the final tag weight may
not be significantly different at the end of the page load, moving third-party vendor tags from a synchronous to
asynchronous load allows multiple assets to load in parallel rather than one at a time. How much flexibility does the
TMS provide regarding the timing and sequencing of vendor code? Does the TMS vendor provide best practices
for optimizing page performance in relationship to file loading? Can third-party vendor code be easily changed from
synchronous to asynchronous loading and vice-versa?
Frequently Asked Questions 177
Adobe dynamic tag management excels in each of these four page speed areas and, in certain cases like hosting,
provides a better solution than other vendors. However, page load speed is only one area that needs to be addressed
when evaluating a TMS. Critical questions need to be answered regarding workflow and governance, rule deployment
methodologies, the user interface, implementation, migration, maintenance, and user segmentation capabilities.
These are areas that make Adobe dynamic tag management stand out as a system with a proven performance
record that clients enjoy using over the long-term.
Resources 178
Resources
Additional resources to help you get the most out of Dynamic Tag Management.
Additional resources will be added to this list in the future.
Resource Details
Digital Data Tactics contains additional posts about DTM and other Adobe Marketing
Cloud Solutions.
Troubleshooting 179
Troubleshooting
Describes several troubleshooting scenarios and their solutions and provides a list of Frequently Asked Questions
(FAQ).
This section contains the following information:
Implementation Issues
I see a JavaScript error in my console when I load dynamic tag management.
Theres likely an issue with your dynamic tag management installation. To view the current installation, right click
on any page of the site and click View page source. Then type CTRL+F to open the search box and type satellite.
This locates the embed snippets of dynamic tag manager. There should be two instances of these snippets on the
page. The first should be right before the </head> tag. The second should be right before the </body> tag.
I get this error: Unexpected token: operator (<) (line: X, col: Y).
Youve likely chosen the incorrect setup type for your script. Based on the contents of the script, the editor was
expecting HTML, but you set the script to JavaScript or vice versa.
Troubleshooting 180
For example: if your script contains <script> tags, but you set the script up as JavaScript, you will receive this error
when you attempt to save the code.
Rule Issues
My rule does not fire.
If your event-based rule does not fire, then there is likely an issue with the selector or condition of the rule. Locate
the element on your site where the desired event action occurs, right click and select Inspect element. Inspect the
highlighted script in the box that opens and ensure you are targeting the correct element. Example:
Target element: <div class=pauseButton style=opacity: 1>
Selector Syntax:
CSS Selector Syntax: div.pauseButton OR div[class=pauseButton]
Manually assign attributes:
Element Tag: div
Property: class
Value: pauseButton
Watch an Adobe EnterpriseTV video that demonstrates how to troubleshoot a rule by inspecting the selector syntax:
I suspect that my rules are firing in the incorrect order. Where can I find more information about the load
order of rules?
It is important that rules fire in the correct order. Many problems with rules are the result of rules firing in the wrong
order. For more information, see Load Order for Rules.
Verify what type of script you are using and the load option you have chosen for the rule. If you use sequential HTML,
your rule must be set to load at Bottom / Top of Page. The script will not work if the rule is set to load Onload or
DOM ready.
Theres likely a timing issue. Check and see where the rule is loading; if its loading at Top of Page or Onload, then
the data element is likely not available yet when the rule fires. Try switching the rule to load at Bottom of Page or
DOM Ready. If the data element still does not populate, refer to method for the previous question to ensure the data
element is available on the page.
You can use the DTM Switch, browser plugin for easy switching of debug mode and staging mode for dynamic tag
management users. It is available for both Google Chrome and Mozilla Firefox. For more information, see Dynamic
Tag Management Plugins.
Watch an Adobe EnterpriseTV video that demonstrates how to debug a rule by using the DTM switch plugins:
Why aren't the variables set in the custom code editor in the Adobe Analytics section of my rule executing?
When executing variables via the Custom Page Code editor in the Adobe Analytics section of a rule, you must set
linkTrackVars / linkTrackEvents as appropriate for these variables to set in the beacon. When adding variables
/ events via the rule UI, linkTrackVars / linkTrackEvents is set for you. However, when adding variables / events
via the Custom Page Code editor this must be done manually. For example:
s.linkTrackVars = "eVar1"
s.eVar1 = _satellite.getVar('Title Tag');
Tool Issues
When I click an internal link on my site, a new window opens when it should not. How do I control the linker
link?
There is likely a code conflict with the linker link feature. Navigate to your analytics tool within your web property
and click the settings gear icon next to the tool. Expand the General tab of the settings. Under Global Settings,
you can control the linker link functionality. From here, you can either turn the linker link feature off or you can set
it up to activate / not activate on specific element types or selectors.
Due to the limited usage of 2G network, the current 2G Google intervention should have a minimal impact on
enterprise customers at this time. Adobe is proactively addressing future issues that might develop if Google continues
to promote practices that contradict Internet community standards.
DTM's goal has always been to create and support the most powerful and flexible features in the space.This includes
allowing DTM users to leverage both synchronous and asynchronous technologies.
If you are concerned about 2G Chrome users, you can use a more asynchronous deployment of DTM and continue
to use the robust set of asynchronous specific features of DTM.
If you see this warning and want to deploy an asynchronous DTM setup that removes all document.write calls
(and prevents the warning), refer to the following sections.
Target
If you are using Target via DTM, and are concerned about visitors on a 2G cellular network who are using Chrome,
please do the following:
Troubleshooting 182
1. Update your Target code from mbox.js to at.js in the DTM target tool.
To learn more about implementing Target with at.js, see at.js Implementation in the Target help.
2. Uncheck the Load Adobe Target Library synchronously checkbox in the DTM Target tool.
3. Test well before deploying.
Note: Loading the Target library asynchronously prevents the warning, but might cause "flickering" on the
page if default content loads before the targeted content.
1. Review all 3rd -party scripts that are deployed via "Sequential JavaScript" or "Sequential HTML" for "top of page"
or "bottom of page" positioning rules.
2. In the code editor, change the Type to "Non-Sequential JavaScript" or "Non-Sequential HTML."
3. Review the code within the editor to ensure it isn't using document.write.
Any code deployed through DTM that uses document.write might be affected.
4. Test well before deploying.
Dynamic Tag Management Plugins 183
Adobe has partnered with Search Discovery to offer additional plugins to help you with debugging tasks and to help
you set up and configure other products.
Note: Search Discovery is the creator of the plugins mentioned in this topic. Contact Search Discovery for
support issues for these plugins. This topic contains information about the plugins currently offered. See the
Search Discovery website for an updated list.
Note: The Chrome and Firefox plugins are early unsigned versions and are provided on an "as is" basis with
no additional support from Adobe. You can also manually set the debugger and switch between libraries via
the dynamic tag management web console.
You should see the DTM icon on the right side of your address bar.
Dynamic Tag Management Plugins 184
You should see the DTM Switch icon on the right side of your address bar.
Dynamic Tag Management Plugins 185
WordPress Plugin
Easily set up and configure WordPress using dynamic tag management. This plugin installs the necessary DTM
code on your WordPress site.
Contact Search Discovery for more information and to obtain this tool.
Drupal Plugin
Set up and configure Drupal using dynamic tag management.
Contact Search Discovery for more information and to obtain this tool.
Dynamic Tag Management Plugins 186
Adobe has partnered with Disruptive Advertising to offer a plugin to help you with debugging tasks.
See Introducing the Adobe DTM Debugger on the Disruptive Advertising website for more information.
Note: Disruptive Advertising is the creator of the plugin mentioned in this topic. Contact Disruptive Advertising
for support issues for this plugin. You can leave a comment on the bottom of the Introducing the Adobe DTM
Debugger page.
Note: Tagtician is the creator of the plugin mentioned in this topic. Contact Tagtician for support issues for
this plugin.
Glossary 187
Glossary
Terms used in dynamic tag management.
Term Definition
Adobe Analytics
Adobe's hosted, subscription-based solution for real-time website reporting and analysis.
You can deploy Adobe Analytics using dynamic tag management by creating the Adobe
Analytics Tool and configuring the page code either automatically or manually.
Approvals
Audience management
Campaign
ClickMap
Cookie
Customize Page Code
Data Center
Data Element
Data elements are the building blocks for rules. Data elements let you create a data
dictionary (or data map) for any object that is contained on your site. They can be
JavaScript objects, cookie values, and query strings.
Direct call rules are ideal for situations where you want to tell dynamic tag management
exactly what is happening. Also, they are ideal when dynamic tag management cannot
detect an event in the DOM, such as with Adobe Flash.
DTM Switch
DTM Switch is a browser plugin for easy switching of debug mode and staging mode
for DTM users. It is available for both Chrome and Firefox.
Embed
Global Variables
Google Analytics
Page Load
Link Tracking
Glossary 188
Term Definition
Marketing Cloud
The Marketing Cloud is an integrated family of digital marketing solutions, as well as an
intuitive interface for new resources and capabilities, called core services, for your
business.
Property
A Web Property is a library of rules and one embed code. It can be any grouping of one
or more domains and subdomains. You can manage and track these assets similarly.
Publish
Referrer
Rules
Dynamic tag management is a rule-based system. It looks for user interaction and
associated data. When the criteria outlined in your rules are met, the rule triggers the
tool, script, or HTML you identified.
Staging
Tag
Target
Tool
Tracking Server
Documentation Updates 189
Documentation Updates
Information about updates to the dynamic tag management help.
7/27/2016 Added information about the Automatically Marketing Cloud ID Service Settings
Request Visitor ID option being automatically
enabled when you add a Marketing Cloud ID
Service tool.
5/9/2016 Added Important note at the top of the page. Manage Users
3/30/2016 Added information about restricting the ability Create a New Group
for group members to create or modify tools
and related tool settings in rules.
2/29/2016 New Section: Best Practices for Getting Best Practices for Getting Started with
Started with Dynamic Tag Management Dynamic Tag Management
1/28/2016 New section: Best Practices for Implementing Best Practices for Implementing Adobe
Adobe Target using Dynamic Tag Target using Dynamic Tag Management
Management
Event Types
11/16/2015 Added the following new event types for
event-based rules:
Other > time passed
Browser > tab focus
Browser > tab blur
Troubleshooting
09/25/2015 Added the following information in the Rule
Issues section:
Link Tracking
09/03/2015 Added information about link tracking and
single-page app considerations.
Troubleshooting
07/29/2015 Added information about viewing the Audit
log.
Event Types
07/08/2015 New Topic.
02/18/2015 Updated FAQ with information about using Frequently Asked Questions
dynamic tag management with the Adobe
Marketing Cloud.
01/28/2015 Updated information about enabling EU Add Google Universal Analytics Tool
compliance.
Add Google Analytics Tool
General
12/15/2014 Updated migration from Adobe Tag Manager Migrating from Adobe Tag Management
1.0 and 2.0 to dynamic tag management.
11/21/2014 Updated Adobe Media Optimizer tool settings. Add Adobe Media Optimizer Tool
11/7/2014 Updated the Important note regarding the Header and Footer Code
wrapping of embed codes.
Documentation Updates 193
10/23/2014 Added feature content for Adobe Target Add Adobe Target Tool
deployment.
10/23/2014 Added plug-in information to the Analytics FAQ - Adobe Analytics Tool
FAQ.
08/27/2014 Added and important note in the Hosting Embed Code and Hosting Options and
section about the risks of unsupported Header and Footer Code
implementations.
08/26/2014 Added external links to resources for learning Event-Based Rules Example
about CSS.
08/08/2014 Added Load Adobe Target Library Add Adobe Target Tool
Synchronously field description.
08/07/2014 Added content for the Marketing Cloud ID Marketing Cloud ID Service Settings
Service tool.
07/24/2014 Updated the Adobe Analytics configuration FAQ for Adobe Analytics Release - July 24
with new feature content for automatically 2014
managing your configuration.
07/24/2014 Added FAQ information for the automatic Frequently Asked Questions
configuration for Adobe Analytics deployment
tool. Separated other FAQ information into
beginner and advanced sections.
07/09/2014 Added information about handling multiple Separating the DTM Environment for Multiple
geo markets, business units, and subdomains. Entities in Web Properties
06/16/2014 Updated the Enable EU compliance for Add Google Analytics Tool
Google Analytics field description.
05/06/2014 Added queue processing information after the Load Order for Rules
Load Order diagram.
04/22/2014 Added external link to plugins in the table of DTM Switch Plugins
contents.
04/04/2014 Added Google Universal Analytics content Add Google Universal Analytics Tool
Documentation Updates 194
03/20/2014 Added topic with information about how tag How Do Tag Management Systems Improve
management systems improve page load Page Load Speed?
speed.
02/27/2014 Added the following note: Embed Code and Hosting Options
01/29/2014 Added new steps to insert core Insert core AppMeasurement code
AppMeasurement code.
01/16/2014 Release notes update Release Notes for Dynamic Tag Management
Documentation Updates 195
New Features
Feature Description
Marketing Cloud navigation As part of the Adobe Marketing Cloud Spring 2016 release, a new-top level navigation
and menu changes menu displays at the top of all solution interfaces. The new interface lets you:
Single-click navigation between solutions: Choose your own default landing
page or take advantage of the solution-switcher widget.
Improved notifications: Get notified about events (like posts, mentions, assets
shared, system updates) happening across your organization navigation widget.
Updated Feed: We reimagined the Feed page to become a better platform for
cross-channel collaboration between marketers.
See What's New in the Adobe Marketing Cloud - Spring 2016 in the Marketing Cloud
and Core Services Product Documentation.
The March 30, 2016 dynamic tag management release includes the following changes:
New Features
Feature Description
CSS Selector Use the CSS Selector to quickly and easily select CSS elements to use as triggers
for event-based rules without leaving the DTM rule builder.
Restrict tool access using Use group membership to restrict the ability for users to create or modify tools and
user groups related tool settings in rules.
Restrict login to Marketing Use the Restrict to Marketing Cloud option to force all users in the company to
Cloud log in to dynamic tag management using Adobe Marketing Cloud credentials rather
than using the legacy/company login process.
February 4, 2016
The February 4, 2016 dynamic tag management release includes the following changes:
New Features
Feature Description
Admin notifications for Administrators can now receive an email notification when one of their web properties
property publishes is published. The email contains the time and name of the property.
Relative hostnames You can specify relative hostnames for staging and production library hosting.
Nielsen tool You can enable Nielsen tracking using dynamic tag management by creating the
Nielsen tool and configuring the page code either automatically or manually. The
automatic method is recommended for most users.
New Features
Previous Release Notes 198
Feature Description
New event types for Added the following new event types for event-based rules:
event-based rules Other > time passed
Browser > tab focus
Browser > tab blur
For more information, see Event Types.
Feature Description
Marketing Cloud Visitor ID The newest library version (1.5.2) will enable improved customer ID support, added
Service Tool support for authenticated state and improved multi-solution integration.
As a result of this migration you will see added functionality to your Marketing Cloud
Visitor ID Service tool in DTM. We suggest that you test this update in your staging
environment before publishing.
The DTM team strives to add value for our customers, and we are confident that you
will see this realized in the update to the Marketing Cloud Visitor ID Service tool.
Fixed an issue when editing user groups that caused user groups from other companies to be removed.
Fixed a security concern with rules using non-sequential HTML code. Please re-publish your web properties for
the fix to take effect.
September 3, 2015
September 17, 2015
New Features
Previous Release Notes 199
Feature Description
Group management Group management makes it easy to organize users and control their access levels.
Permissions are set at the user group level, so all users in the group inherit the group
permissions, including access to properties.
July 8, 2015
New Features and Enhancements
Feature Description
Event Types New event types let you trigger event-based rules on Single Page Apps:
July 8, 2015
The July 8, 2015 dynamic tag management release includes the following changes:
Feature Description
Event Types New event types let you trigger event-based rules on Single Page Apps:
Feature Description
June 8, 2015
The June 8, 2015 dynamic tag management release includes the following changes:
April 23 2015
The April 23, 2015 dynamic tag management release includes the following changes:
Feature Description
This option causes dynamic tag management to remove beginning and ending
whitespace and replace all whitespace in the middle of return values with a single
space. This option is useful to normalize data element values for easier matching.
April 7 2015
New Features and Enhancements
Feature Description
Selective Publish When creating a web property, the Enable Selective Publish option is set by default.
March 24 2015
New Features and Enhancements
Feature Description
Integration with Adobe If you are an Adobe Analytics Premium customer, dynamic tag management lets
Analytics Premium you take advantage of advanced features and additional eVars and events.
Note: If you do not use the Automatic configuration method, dynamic tag
management will treat you as an Adobe Analytics Standard account.
Fixes:
Updated the variable and event interface for the Adobe Analytics tool to allow auto-complete selection and to
enable access to additional eVars and events for Analytics Premium accounts. See Add Adobe Analytics Tool.
Fixed an issue where the Store Path option for FTP library deployments wasnt updating for production libraries
when using nested directories.
Updated data elements to support hyphenated names.
Fixed an issue where the column indicator in the Rules table displayed for a rule, even if the tool was deleted.
Updated the Sequential HTML code option to be available for page-load rules only. This option no longer appears
for event-based rules. A notice displays with a Sequential HTML tag on an event-based rule to notify users to
change the tag before the rule can be saved.
Fixed an issue where the Sign in with Adobe ID login option wasnt allowing users to sign in as a different user.
Users can click Sign in with a Different Adobe ID to log out as the current Marketing Cloud user and be redirected
to the Adobe login page.
February 10 2015
Fixes:
Added a deprecation warning message for all company administrators using Amazon hosting for their JavaScript
library.
Improved the error handling for instances where document.write is not available.
Addressed various localization issues to increase the user experience for supported languages.
Fixed an issue where the Channel field wasnt included in rules specifying a s.tl() call in Adobe Analytics.
Fixed an issue where copied rules werent automatically added to the staging library until a change was made to
the rules.
Fixed an issue where Regex was firing for rules using the parameters condition option, even if the parameter
wasnt present.
January 13 2015
Fixes:
Dynamic tag management no longer overrides global variables with the name window.t.
Fixed an issue where Firefox was incorrectly trapping the right-click event handler in the browser and causing
click-based rules to fire.
Previous Release Notes 202
November 13 2014
Feature Description
Adobe improved our dynamic tag Default delivery of the latest (v3) Media Optimizer tag
management integration with Adobe Support for a data-element based SKU
Media Optimizer, including. Suppression of unneeded beacons
Minor enhancements
October 30 2014
Adobe improved our dynamic tag management integration with Adobe Media Optimizer, including:
Default delivery of the latest (v3) Media Optimizer tag
Support for a data-element based SKU
Suppression of unneeded beacons
Minor enhancements
October 28 2014
New features in dynamic tag management released on October 28, 2014:
Feature Description
Adobe Target integration Updated the Adobe Target tool to enable automatic deployment via dynamic
tag management.
Enable support for Google Universal Added a checkbox for premium Google Universal Analytics features in the
Analytics Premium features tool (General group). This option enables the max dimensions and metrics
increase from 20 to 200.
Fixed an issue caused when triggering an event-based rule on a click event. If the click event had a delay link
activation on an anchor tag with no HREF, the issue forced the browser to attempt to navigate to a blank HREF
location.
Fixed an issue where dynamic tag management was no longer saving global variables configured in an Analytics
tool when changes to that tool had been rejected and then restored.
Implemented significant performance improvements in the library generation process, which should result in a
shorter wait for changes to appear in production, especially during peak usage hours.
Fixed an issue where company administrators were unable to export their activity log to CSV when there was a
large amount of data present.
Added the ability to use custom HTML data attributes with CSS selector-based data elements.
August 21 2014
Fixes and improvements:
The help landing for dynamic tag management is now at:
https://marketing.adobe.com/resources/help/en_US/dtm/
August 7 2014
New features:
Feature Description
Marketing Cloud ID Service You can automate the deployment of the Marketing Cloud ID Service using
dynamic tag management.
Fixed an issue where events set in the Analytics rule UI were not being sent as part of data collection when the
rule was set to use s.t().
Fixed an issue where the Force Lowercase option was not working in Google Universal Analytics.
Fixed an issue where the default value was not returned when specifying a DOM element that did not have the
attribute defined as specified in the CSS selector for the data element.
Fixed an issue where reverting an Analytics tool to a previous version did not revert all elements of that account,
resulting in a mixture of old and new settings for the tool.
July 24 2014
New features:
Feature Description
Adobe Analytics account and Report suites are automatically synchronized via a Marketing Cloud login or Web
report suite synchronization. Services ID.
Once the accounts are connected, dynamic tag management pulls the Adobe
Analytics report suite IDs and names into the tool configuration interface, allowing
for increased speed in tool deployment with less possibility for user errors.
Adobe managed measurement You can let dynamic tag management loads and manage the base library directly.
library option. You no longer need to cut and paste library code from the Adobe Analytics
administration tools. This feature also makes upgrades to new versions of
AppMeasurement easier, because the base code and custom code are stored
separately.
Custom Code timing. You can now select whether you want the code in the Adobe Analytics code panel
to fire before or after the interface settings for more implementation flexibility.
Interface improvements. The groups (General, Library Management, and so on) on the Tools page for
Adobe Analytics has been reorganized and streamlined to simplify configuration.
Latest Links
See FAQ for Adobe Analytics Release - July 24 2014 for questions and answers.
July 10 2014
Features and fixes:
Feature Description
Audit Log for Administrator Click Log in the left-hand rail to view the Audit Log page.
Company administrators can view, filter, and export a list of all activities that
take place within companies and web properties to which they have access.
This feature is helpful both for auditing and troubleshooting purposes.
Feature Description
Successful logins
Account names
IP addresses
Companies
Web Properties (and see who created them and when)
Roles, and more.
You can also export the log data to .csv.
Language Selector Dynamic tag management is now available in the same languages (English,
French, Spanish, German, Korean, Portuguese, Japanese, Traditional Chinese,
and Simplified Chinese) as the rest of the Marketing Cloud.
Note: This value is enabled by default for new instances of the Adobe
Target tool, and disabled by default for existing instances of the tool.
Existing instances of the Adobe Target tool will continue to load asynchronously
until you change the setting to synchronous.
Fixes
Fixed an issue where disabling and then enabling a property caused the items in the approvals queue to be
automatically published by the system when the property was re-enabled.
Added a message to the Embed tab for company administrators. This message is a reminder that no code is
published to the production environment until someone explicitly clicks Publish. This fix was done to help avoid
confusion by some users who were seeing 404 Not Found errors on the production library, because they had not
yet published.
Fixed an issue where duplicate registrations were possible for the same user using a differing case. (For example,
user@DOMAIN.com vs user@domain.com).
Fixed an Adobe Analytics issue that prevented you from re-adding or editing an eVar or prop value after deleting
that specific variable or property.
Fixed an issue where rejecting an approved or published tool, and then updating that tool, did not cause a new
entry to be generated in the approvals queue.
Fixed an issue where the Adobe Analytics tool configuration options for Always Track and Never Track did not emit
the correct values to the library and therefore did not have any effect on data collection.
Fixed an issue where entering invalid regular expressions caused a broken interface and required you to reload
the page.
Google Analytics event tag: Fixed an issue where a Fill in all fields error appeared on a rule, but you were unable
to save the rule or make any additional edits and was required to reload the page.
May 15 2014
Fixes and improvements for May 15, 2014:
Previous Release Notes 206
Fixed an issue where variables set in custom code were not being set on direct call or event-based rules using
s.t(). The code contained within the custom code area for direct call or event-based rules using s.t() was not
correctly adding any variables set to the beacon before an image request was being fired.
Fixed and issue where the command bar was sticking to the bottom of the Approvals page. The persistent bar
with the Edit and Reject commands on the Approvals page was sticking to the bottom of the page rather than
following the page view upon scroll.
Fixed an issue on the Rule List page, where a newly created rule showed Adobe Analytics in use, even if those
rules were not using Adobe Analytics.
Fixed layout issues on Selective Publish queue page. We cleaned up the layout so that it is not truncated or
stretching beyond the boundary of the content area of the page.
Data elements now display in alphabetical order in the Data Element Value criteria of a rule. They have now been
alphabetized for easier viewing.
The items on the publish history are now paginated to improve performance and user experience.
Added password security enhancements. To ensure the security for dynamic tag management accounts, we have
implemented a number of enhancements to our authentication system:
New passwords must meet specific criteria (minimum 7 characters, at least one number, at least one letter, at
least one symbol, not one of the last 5 passwords).
Company admins can now see how long it has been since a user last changed their password.
Company admins can now force users to reset their password.
Users attempting to log in 5 times unsuccessfully will be locked out for 30 minutes to prevent brute force attacks
(the user or their company admin can reset the password to re-enable access immediately).
May 8 2014
Fixes for May 8, 2014:
Fixed an issue where trackingServer value was not being applied consistently. The value for s.TrackingServer
should be used consistently for all types of calls throughout dynamic tag management, and the value should be
pulled either from the custom code or from the UI, depending on the configuration of a specific web property. (The
UI value takes precedence if set in both locations.)
Fixed an issue where properties with a large number of items awaiting approval was causing 500 errors and
timeouts. We optimized the queries for the approvals workflow to ensure that properties with a large number of
items awaiting approval would load quickly and not result in timeouts, errors, or broken pages.
Fixed an issue where pages with an existing object called 's' would cause errors in dynamic tag management.
Dynamic tag management tries to initialize an 's' object on the page for Adobe Analytics tracking, and this was
causing a conflict if Analytics was implemented via dynamic tag management and the Page code already exists
box was not checked. The object is now locally scoped within dynamic tag management, so it will work in any
custom code scenarios but will not conflict with any on-page code.
We made a number of improvements to the way that hierarchies are managed in Adobe Analytics tools and rules,
including ensuring that non-sequential hierarchies could be used together in a tool or rule, and ensuring that the
same hierarchy could not be set more than once in a tool or rule.
April 28 2014
Fixes for April 28, 2014
Fixed an issue where direct call and event-based rules that were configured to send a page view (using s.t())
were not executing custom code.
April 17 2014
Fixes for April 17, 2014
Fixed an issue in which an error displayed when you delete data elements that were associated with rules that had
already been deleted.
Previous Release Notes 207
Fixed an issue in which deleted data elements were still shown in the menu when you add a condition to a rule
based on a data element.
Fixed an issue where fields and values for Google Universal Analytics rules were showing as modified in the
Approval view, even if the rules had not been changed. This issue also occurred on new rules.
Fixed an issue where the Google Universal Analytics tool configuration allowed you to configure the cookie timeout
in milliseconds, even though Google Universal Analytics does not support this.
Changed AdLens to Media Optimizer.
Users can now use the % syntax to view the pop-up list of data elements when sending values to Media Optimizer.
Modified styling on tool lists to better accommodate tools with long names, and to improve readability.
April 8 2014
Fixes for April 8, 2014
Fixed the styling on the Forgot Password page to improve appearance.
Fixed an issue where approved/published rule conditions were being removed from production library upon deletion
in staging.
Fixed an issue where the Actions menu on the Rule List page was being cut off at the bottom, if there were less
than three rules being displayed.
Fixed alignment for the Create Data Element button on the Data Elements page.
Fixed alignment for the Create New Schedule button on the Scheduling page.
Fixed an issue where long rule names were breaking the Selective Publish page.
Fixed an issue where deleting Adobe Analytics variable values would, in certain cases, result in a broken UI that
required a page refresh to fix.
April 3 2014
Features for April 3, 2014
Feature Description
Google Universal Analytics support. Added native support for Google Universal Analytics.
Upgrade from Google Analytics to Google Integrated the Airlock JS library to perform automatic translation
Universal Analytics of all existing GA calls to Google Universal Analytics.
March 11 2014
Fixes for the March 11, 2014 release:
Fixed issue where test files (ftp_test.txt) were being left on FTP/SFTP servers after upload was complete.
This file is now deleted once the upload is complete as it is only used to test the ability to validate user credentials
and is not actually needed by dynamic tag management.
Fixed issue where custom port for FTP/SFTP was not being saved.
March 6 2014
Features and fixes for the March 6, 2014 release:
Feature Description
Added support for SFTP. Dynamic tag management now supports transmitting published
files to a client's server via secure FTP (SFTP).
Added support for hierarchy delimiters. A delimiter can now be specified when hierarchies are used in a
rule that sends data to Adobe Analytics. (Previously, the behavior
was that all hierarchies were comma-delimited, and any other
delimiter required use of custom code.)
Fixes
Fixed issue with SVG images in older IE browsers. SVG images that were clicked in older IE browsers (prior to IE
version 9) caused errors and would sometimes cause the browser to crash.
Fixed issue with custom links in direct call rules. Using custom links in direct call rules would generate a JavaScript
error in the browser.
Fixed issue with data element rule conditions referencing the wrong name. If a user renamed a data element, and
the data element was being referenced in a rule condition, the rule would try to use the most recently specified
name for that data element. This issue occurred even if the name change had not yet been published.
Fixed issue where elements without an HREF attribute caused errors when clicked. This issue is regarding the
"linker link" functionality in the dynamic tag management engine, which attempts to automatically track any clicked
elements on the page. Elements without an HREF were generating errors. The "linker link" code now checks that
the element is an anchor tag before attempting to track clicks on it.
February 4 2014
Fixes for the February 4 2014 release:
Fixed issue with invalid URLs being accepted in Users were able to enter invalid URLs on a web property. Valid
web property configurations. URLs are now required.
Fixed issue with port being stripped from deploy The deploy hook URLs containing a non-default port would have
hook URL. the port removed before the HTTP call was made. This issue
resulted in deploy hook notifications being sent to the wrong URL.
January 28 2014
Fixes for the January 28 2014 release:
Previous Release Notes 209
Fixed an issue with Adobe Analytics variables A user attempting to set multiple Adobe Analytics variables would
overwriting one another in the interface. see variables being overwritten unintentionally. (For example, a
user sets prop22, then sets prop2. Prop22 disappears and prop2
contains wrong value.)
Note: This issue was visible in the interface but did not
affect existing code or data collection. In other words, if
you did not see the variable being overwritten before you
saved the rule or tool configuration, then you were not
affected by this issue.
Fixed an issue with long account IDs causing Having a long account ID for one or more tools on a web property
tools list to be truncated on right side. would cause the tools list to be truncated, making it impossible
to then edit that tool.
January 21 2014
Fixes for the January 21 2014 release:
Fixed UI bugs with Scheduling feature. The Scheduling feature had a number of UI bugs relating to
element styling, etc. which have now been fixed.
User can now correctly set global campaign in Fixed issue where campaign values set in the Adobe Analytics
Adobe Analytics tool. tool were not being retained when the tool was saved.
January 16 2014
Fixes for the January 16 2014 release:
Akamai hosting is the default embed option for Dynamic tag management is migrating from Amazon S3 to
new web properties. Akamai as the primary external hosting option in efforts to provide
dynamic tag management customers a more reliable hosting
experience. We encourage all current customers utilizing Amazon
S3 hosting to transition to Akamai as soon as possible, so that
they may take advantage of increased performance due to
Akamai's globally distributed network.
All new companies created after January 15, 2014 will have
Akamai as their external hosting option by default.
Previous Release Notes 210
Paginated user lists. User lists for companies and web properties are now paginated
(if the company or web property has more than 25 users). This
change was done to improve both user experience and platform
performance.
Company administrators may delete web Use caution when taking this action, because deleting the web
properties. property removes all tools, rules, and settings and cannot be
undone.
Multiple rules containing custom Adobe Analytics Previously, if multiple page load rules fire and they all had custom
code now fire correctly. code for Adobe Analytics, only one of the rules would take effect.
Batch deactivation of rules now working. Fixed an issue that was causing batch deactivation of rules to
show as having taken effect in the UI, but were not actually
deactivated in the library.
Login page reskin. Login via Adobe ID now looks identical to the login page for
marketing.adobe.com.
Opt-out of nonessential emails. Users will now see an option on their Account Settings page
to opt out of non-essential emails, such as approval and publish
notifications, note creations, and so on. Essential emails, such
as invitations to new companies, properties, and password resets
are still sent.
November 19 2013
The following table provides information about release notes and fixes for this release.
November 12 2013
The following table provides information about release notes and fixes for this release.
October 30 2013
The following table provides information about release notes and fixes for this release.
October 23 2013
The following table provides information about release notes and fixes for this release.
Timestamps embedded in the _satellite object Whenever a new version of the library is published, the
for publish and build. _satellite object will now contain two new properties:
New tools and data elements can be created with Previously when a tool or data element was deleted, you could
the same name as those of deleted tools and data not create a new tool or data element with that same name. Now,
elements. after a tool or data element has been deleted, a new one can be
created with the same name.
Left navigation sidebar is now collapsible An icon appears next to the breadcrumb header at the top of the
page allowing the user to toggle the left navigation sidebar on
and off. The interface remembers the your preference.
Adding Target arguments breaks rule formatting. Fixed an issue where a user adding arguments to a rule
containing an Adobe Target tool would see an incorrectly
formatted/broken UI.
October 15 2013
The following table provides information about release notes and fixes for this release.
Previous Release Notes 213
Breadcrumb wrapping The breadcrumb display at the top of the page was wrapping incorrectly in Chrome
incorrectly in Chrome on certain types of pages.
Rule page pagination Rule pages will now show only 25 rules per page and will require users to "page
through" to see the full list. This is being done both for user experience and for
performance reasons (it's less stressful on the server to produce a list of 25 rules
vs. several hundred in the case of some of our clients).
Rule page filtering A user can now filter the rule page by the name of the rule or the name of third
party tags contained within a rule.
Tool approvals Tools in dynamic tag management (Analytics, Target, AdLens, Audience Manager,
Google Analytics, etc.) are now part of the approval workflow. New tools,
modifications to existing tools, or removals of tools will require approval before
they are published to production. Users can now add/modify/delete tools (previously
users of type "user" were not able to do this).
Engine shows Analytics instead When looking at debug messages from the dynamic tag management engine, it
of SiteCatalyst now says "Adobe Analytics" instead of "SiteCatalyst" for any messages relating
to the Analytics product and its associated rules.
See Also
Previous Release Notes for historical dynamic tag management release notes.
September 30 2013
The following table provides information about release notes and fixes for this release.
New properties do not require New web properties used to require approval by a superadmin. In order to expedite
approval provisioning of new accounts, we have removed the requirement for this approval
so that new properties are automatically approved and instantly available.
User views dashboard This pertains to the above story about automating new property approval.
Superadmins used to have a section called "Pending Activation" on their dashboard;
this story was to remove that section since it's no longer needed.
Enable rule copy for all Company admins now have the same ability as superadmins to copy rules across
company admins any companies/properties they have access to.
Changing type of data element When changing the type of a data element previously, it used to retain some of
retains previous values the old parameters specified by the user. We're now clearing all parameters and
ensuring that the library only contains whatever parameters are relevant to the
currently selected type.
Previous Release Notes 214
company admin resends Added the ability to click a "Resend" link in the Users tab for a company in case
invitation email a user didn't receive their invitation e-mail for some reason. (Previously this required
revoking the invite and recreating it from scratch)
Default selector for linker link The "linker link" rule for Google Analytics was not emitting a selector to the library
rule not being emitted to library by default, so it was trying to attach linker link functionality to all clicked page
elements. We're now correctly defaulting it to "a" (all links).
Contact and Legal Information 215
Feedback
We welcome any suggestions or feedback regarding this solution. Enhancement ideas and suggestions for the
Analytics suite can be added to our Customer Idea Exchange.
Legal
2016 Adobe Systems Incorporated. All Rights Reserved.
Published by Adobe Systems Incorporated.
Adobe and the Adobe logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the
United States and/or other countries. A trademark symbol (, , etc.) denotes an Adobe trademark.
All third-party trademarks are the property of their respective owners. Updated Information/Additional Third Party
Code Information available at http://www.adobe.com/go/thirdparty.