ABOUT THE EVENT-DRIVEN DATA
LAYER & ADOBE ANALYTICS
Measurecamp Berlin
September 28, 2019
2
Kevin Haag
@kevalytics
● Adobe Analytics Tech Lead at Bounteous
● Adobe Certified Expert (ACE)
● Adobe & Google Consulting
Application Layer
>>> Data Layer <<<
Experience Layer
bnteo.us/measureCampBer
5Proprietary & Confidential
Google
[...] a JavaScript object that is used to pass information from
your website to your Tag Manager container.
6Proprietary & Confidential
Tealium
[...] the behind-the-scenes structure that web sites and
mobile apps tap into for timely and consistent visitor data.
7Proprietary & Confidential
W3C
[...] a JavaScript Object which can be used for communicating
[...] data to digital analytics and reporting servers.
8Proprietary & Confidential
[...] a JavaScript object that is
used to pass information
from your website to your
Tag Manager container.
They are all data layers.
[...] the behind-the-scenes
structure that web sites and
mobile apps tap into for
timely and consistent visitor
data.
[...] a JavaScript Object which
can be used for
communicating [...] data to
digital analytics and
reporting servers.
dataLayer utag_data digitalData
9Proprietary & Confidential
dataLayer = [{
“pageName” : “Home Page”
}];
They are all able to store contextual information.
utag_data = {
“pageName” : “Home Page”
};
digitalData = {
“pageName” : “Home Page”
};
dataLayer utag_data digitalData
10Proprietary & Confidential
You can look at all of them in your browser’s console.
EDDL vs. CEDDL
12Proprietary & Confidential
● EDDL
● Event-Driven-Data Layer
● Array-based
● Populated by the TMS
● Retrieve DLVs and e.g. store them in
Custom Dimensions
● Use events as triggers
● Good for asynchronous TMSs
● Good for SPAs
● CEDDL
● Customer Experience Digital Data Layer
● Object-based
● Populated by the dev team
● Retrieve DLVs and e.g. store them in
Custom Conversion Variables (eVars)
● No events
● Not good for asynchronous TMSs
● Good for static data
EDDL vs. CEDDL
Use Case: Form Submit
14Proprietary & Confidential
Whenever
a visitor successfully submits a form
Let
the data layer know
Store
relevant (non-pii) context data as data
layer variables
Use Case: Form Submit
Last NameFirst Name
Job TitleEmail
Submit
15Proprietary & Confidential
dataLayer.push({
“event”: “formSubmit”,
“jobTitle”: “Analyst”
});
Setup in GTM Action
Context
Adobe’s TMSs (DTM & Launch) don’t have a
built-in Data Layer Model.
Up until recently, there was no standardized
way of leveraging data layer events for AA.
18Proprietary & Confidential
How did Adobe folks track non-standard
events?
20Proprietary & Confidential
digitalData {
formData:{
jobTitle: “Analyst”
}
};
Context
1 Populate the data layer 2 Send a trigger to DTM/Launch
1. Direct Call Rule (DCR)
_satellite.track(“formSubmit”);
OR
2. Custom JS Event
var event = new
CustomEvent(“formSubmit”);
Action
So … how did Adobe folks track non-standard events?
Then
But now, there is a better way.
22Proprietary & Confidential
● Public Launch Extension
● Dispatches custom DL events
● Provides computed state for DLVs
Data Layer Manager Extension
23Proprietary & Confidential
var measureCamp = window.measureCamp = || [ ];
measureCamp.push({
‘event’: ‘formSubmit’,
‘jobTitle’: ‘Analyst’
})
Data Layer Manager Extension - Prerequisites
● Build an array-based data layer
● Name it whatever you want
● Push events to the data layer
24Proprietary & Confidential
var measureCamp = window.measureCamp = || [ ];
Best Practices for Instantiating a Data Layer
Set the value of the variable
measureCamp...
… to whatever is already
globally named measureCamp.
If measureCamp doesn’t exist,
set it to an empty array.
25Proprietary & Confidential
PreventsOverwriting
var measureCamp = window.measureCamp = || [ ];
Prevents
Destruction
26Proprietary & Confidential
● Specify your data layer’s root object
Data Layer Manager Extension - Extension Configuration
● Specify your data layer events
27Proprietary & Confidential
● Easily access computed state of the
data layer variables (DLVs)
Data Layer Manager Extension - Data Elements I
28Proprietary & Confidential
● Use the Data Elements to populate custom analytics variables (eVars & sProps) in rules
Data Layer Manager Extension - Data Elements II
29Proprietary & Confidential
● Use the Data Layer Events as events to trigger your rules
Data Layer Manager Extension - Events
30Proprietary & Confidential
In Summary
1. The EDDL is great for
- asynchronous deployments
- modern, event-heavy analytics
implementations
- site performance
- SPAs
2. GA folks always liked the EDDL
3. AA folks also like the EDDL
31Proprietary & Confidential
Data Layer Articles
● https://bnteo.us/data-layer-for-developers
● https://bnteo.us/data-layer-for-non-developers
● https://developers.google.com/tag-manager/devguide
● https://www.simoahava.com/analytics/data-layer/
● https://tealium.com/resource/fundamentals/what-is-a
-data-layer/
● https://www.w3.org/2013/12/ceddl-201312.pdf
EDDL & Data Layer Manager Extension
● https://jimalytics.com/tag-management/the-event-dri
ven-data-layer/
● https://techdocs.searchdiscovery.com/adobe-solution
s/adobe-launch/launch-extensions/data-layer-manag
er
Resources
32Proprietary & Confidential
General (Adobe-) Analytics Knowledge
● https://www.measure.chat/
● https://forums.adobe.com/thread/2543670
● https://docs.adobe.com/content/help/en/analytics/lan
ding/home.html
● https://www.youtube.com/channel/UC8I6bqCk7gO6
YdoMz6W5fvw
General (Google-) Analytics Podcasts
● https://www.analyticshour.io/
● https://die-sendung-mit-der-metrik.de/
● https://www.termfrequenz.de/podcast/beyon
d-pageviews-podcast/
● https://analyticsfreak.com/podcast
Resources
We are hiring like crazy!
34Proprietary & Confidential
bnteo.us/analytics-career
● Adobe Analytics Consultant
● Adobe Analytics Engineer
● Google Analytics Consultant
Current Analytics Openings (All Locations)
At Measurecamp, you can meet incredibly
smart people!
36Proprietary & Confidential
Maik
So...make sure to meet with them!
Markus B. Markus V. Helen
GA - GADS
Webinars
Podcast: Die
Sendung mit der
Metrik
Audio Book:
Dein Weg zum
Webanalysten
Podcast: Beyond
Pageviews
ITP & ETP
Book: Google
Analytics - Das
umfassende
Handbuch
GMP Con
Thank You!
Adobe Analytics Technical Lead
Kevin Haag
Email: kevin.haag@bounteous.com
@kevalytics

About The Event-Driven Data Layer & Adobe Analytics

  • 1.
    ABOUT THE EVENT-DRIVENDATA LAYER & ADOBE ANALYTICS Measurecamp Berlin September 28, 2019
  • 2.
    2 Kevin Haag @kevalytics ● AdobeAnalytics Tech Lead at Bounteous ● Adobe Certified Expert (ACE) ● Adobe & Google Consulting
  • 3.
    Application Layer >>> DataLayer <<< Experience Layer
  • 4.
  • 5.
    5Proprietary & Confidential Google [...]a JavaScript object that is used to pass information from your website to your Tag Manager container.
  • 6.
    6Proprietary & Confidential Tealium [...]the behind-the-scenes structure that web sites and mobile apps tap into for timely and consistent visitor data.
  • 7.
    7Proprietary & Confidential W3C [...]a JavaScript Object which can be used for communicating [...] data to digital analytics and reporting servers.
  • 8.
    8Proprietary & Confidential [...]a JavaScript object that is used to pass information from your website to your Tag Manager container. They are all data layers. [...] the behind-the-scenes structure that web sites and mobile apps tap into for timely and consistent visitor data. [...] a JavaScript Object which can be used for communicating [...] data to digital analytics and reporting servers. dataLayer utag_data digitalData
  • 9.
    9Proprietary & Confidential dataLayer= [{ “pageName” : “Home Page” }]; They are all able to store contextual information. utag_data = { “pageName” : “Home Page” }; digitalData = { “pageName” : “Home Page” }; dataLayer utag_data digitalData
  • 10.
    10Proprietary & Confidential Youcan look at all of them in your browser’s console.
  • 11.
  • 12.
    12Proprietary & Confidential ●EDDL ● Event-Driven-Data Layer ● Array-based ● Populated by the TMS ● Retrieve DLVs and e.g. store them in Custom Dimensions ● Use events as triggers ● Good for asynchronous TMSs ● Good for SPAs ● CEDDL ● Customer Experience Digital Data Layer ● Object-based ● Populated by the dev team ● Retrieve DLVs and e.g. store them in Custom Conversion Variables (eVars) ● No events ● Not good for asynchronous TMSs ● Good for static data EDDL vs. CEDDL
  • 13.
  • 14.
    14Proprietary & Confidential Whenever avisitor successfully submits a form Let the data layer know Store relevant (non-pii) context data as data layer variables Use Case: Form Submit Last NameFirst Name Job TitleEmail Submit
  • 15.
    15Proprietary & Confidential dataLayer.push({ “event”:“formSubmit”, “jobTitle”: “Analyst” }); Setup in GTM Action Context
  • 16.
    Adobe’s TMSs (DTM& Launch) don’t have a built-in Data Layer Model.
  • 17.
    Up until recently,there was no standardized way of leveraging data layer events for AA.
  • 18.
  • 19.
    How did Adobefolks track non-standard events?
  • 20.
    20Proprietary & Confidential digitalData{ formData:{ jobTitle: “Analyst” } }; Context 1 Populate the data layer 2 Send a trigger to DTM/Launch 1. Direct Call Rule (DCR) _satellite.track(“formSubmit”); OR 2. Custom JS Event var event = new CustomEvent(“formSubmit”); Action So … how did Adobe folks track non-standard events? Then
  • 21.
    But now, thereis a better way.
  • 22.
    22Proprietary & Confidential ●Public Launch Extension ● Dispatches custom DL events ● Provides computed state for DLVs Data Layer Manager Extension
  • 23.
    23Proprietary & Confidential varmeasureCamp = window.measureCamp = || [ ]; measureCamp.push({ ‘event’: ‘formSubmit’, ‘jobTitle’: ‘Analyst’ }) Data Layer Manager Extension - Prerequisites ● Build an array-based data layer ● Name it whatever you want ● Push events to the data layer
  • 24.
    24Proprietary & Confidential varmeasureCamp = window.measureCamp = || [ ]; Best Practices for Instantiating a Data Layer Set the value of the variable measureCamp... … to whatever is already globally named measureCamp. If measureCamp doesn’t exist, set it to an empty array.
  • 25.
    25Proprietary & Confidential PreventsOverwriting varmeasureCamp = window.measureCamp = || [ ]; Prevents Destruction
  • 26.
    26Proprietary & Confidential ●Specify your data layer’s root object Data Layer Manager Extension - Extension Configuration ● Specify your data layer events
  • 27.
    27Proprietary & Confidential ●Easily access computed state of the data layer variables (DLVs) Data Layer Manager Extension - Data Elements I
  • 28.
    28Proprietary & Confidential ●Use the Data Elements to populate custom analytics variables (eVars & sProps) in rules Data Layer Manager Extension - Data Elements II
  • 29.
    29Proprietary & Confidential ●Use the Data Layer Events as events to trigger your rules Data Layer Manager Extension - Events
  • 30.
    30Proprietary & Confidential InSummary 1. The EDDL is great for - asynchronous deployments - modern, event-heavy analytics implementations - site performance - SPAs 2. GA folks always liked the EDDL 3. AA folks also like the EDDL
  • 31.
    31Proprietary & Confidential DataLayer Articles ● https://bnteo.us/data-layer-for-developers ● https://bnteo.us/data-layer-for-non-developers ● https://developers.google.com/tag-manager/devguide ● https://www.simoahava.com/analytics/data-layer/ ● https://tealium.com/resource/fundamentals/what-is-a -data-layer/ ● https://www.w3.org/2013/12/ceddl-201312.pdf EDDL & Data Layer Manager Extension ● https://jimalytics.com/tag-management/the-event-dri ven-data-layer/ ● https://techdocs.searchdiscovery.com/adobe-solution s/adobe-launch/launch-extensions/data-layer-manag er Resources
  • 32.
    32Proprietary & Confidential General(Adobe-) Analytics Knowledge ● https://www.measure.chat/ ● https://forums.adobe.com/thread/2543670 ● https://docs.adobe.com/content/help/en/analytics/lan ding/home.html ● https://www.youtube.com/channel/UC8I6bqCk7gO6 YdoMz6W5fvw General (Google-) Analytics Podcasts ● https://www.analyticshour.io/ ● https://die-sendung-mit-der-metrik.de/ ● https://www.termfrequenz.de/podcast/beyon d-pageviews-podcast/ ● https://analyticsfreak.com/podcast Resources
  • 33.
    We are hiringlike crazy!
  • 34.
    34Proprietary & Confidential bnteo.us/analytics-career ●Adobe Analytics Consultant ● Adobe Analytics Engineer ● Google Analytics Consultant Current Analytics Openings (All Locations)
  • 35.
    At Measurecamp, youcan meet incredibly smart people!
  • 36.
    36Proprietary & Confidential Maik So...makesure to meet with them! Markus B. Markus V. Helen GA - GADS Webinars Podcast: Die Sendung mit der Metrik Audio Book: Dein Weg zum Webanalysten Podcast: Beyond Pageviews ITP & ETP Book: Google Analytics - Das umfassende Handbuch GMP Con
  • 37.
    Thank You! Adobe AnalyticsTechnical Lead Kevin Haag Email: kevin.haag@bounteous.com @kevalytics