SlideShare a Scribd company logo
1 of 68
Easier page
element tracking
with Kermit
Easier and faster
tagging with Kermit
Easier and faster
tagging with Kermit
Alban Gérôme
BrightonSEO April 7th, 2017
Web analytics tools are
Web analytics tools are
Easy to implement
Limited freedom for
bespoke
implementations
Web analytics tools are
Easy to implement
Limited freedom for
bespoke
implementations
Hard to implement
Very customisable
implementations
Web developers
• Do not consider that web analytics tagging is
part of their job because it was not taught as
part of the computer science curriculum
Web developers
• Do not consider that web analytics tagging is
part of their job because it was not taught as
part of the computer science curriculum
• Believe that tagging is either just copy and
paste or your code ends up broken up into
twenty files organised like Russian dolls
Web developers
• Do not consider that web analytics tagging is
part of their job because it was not taught as
part of the computer science curriculum
• Believe that tagging is either just copy and
paste or your code ends up broken up into
twenty files organised like Russian dolls
• Bless them
QA testers
QA testers
• If there were no Javascript errors the web
analytics implementation is assumed to be
correct
QA testers
• If there were no Javascript errors the web
analytics implementation is assumed to be
correct
• We need our own web analytics QA scripts
included in their tests suites
QA testers
• If there were no Javascript errors the web
analytics implementation is assumed to be
correct
• We need our own web analytics QA scripts
included in their tests suites
• Bless them too
Web analysts
• They cannot spend their time monitoring
reports to ensure that the developers latest
changes did not break anything
Web analysts
• They cannot spend their time monitoring
reports to ensure that the developers latest
changes did not break anything
• If the data suggests anything contrary to the
business stakeholders opinion someone will
invoke doubts about the data analysis and/or
collection, belief persistence perhaps
What we need
• Simple tagging for complex analytics tools
where defaults are enabled but can be
overridden
What we need
• Simple tagging for complex analytics tools
where defaults are enabled but can be
overridden
• Analytics code can be checked by looking at
the source code of the page
What we need
• Simple tagging for complex analytics tools
where defaults are enabled but can be
overridden
• Analytics code can be checked by looking at
the source code of the page
• Throw errors if the analytics code no longer
matches the expected web page structure
Page views and interactions
• We only really care about page views and
interactions with page elements
Page views and interactions
• We only really care about page views and
interactions with page elements
• We need support for:
– Single page applications and virtual page views
– The click, change and blur Javascript events
Page views and virtual page views
• Virtual page views are screen updates which
did not result in a page load. The URL might
not even change
Page views and virtual page views
• Virtual page views are screen updates which
did not result in a page load. The URL might
not even change
• These screen updates can be detected
automatically and treated like ordinary page
views
Javascript events
The click, change and blur events can be
inferred from the element that was interacted
with automatically:
Javascript events
The click, change and blur events can be
inferred from the element that was interacted
with automatically:
– Buttons: click event
– Drop-down menus: change event
– Text fields: blur event
Tagging default settings
• So we can handle all types of page views
automatically
Tagging default settings
• So we can handle all types of page views
automatically
• We can handle the page element interactions
without caring which Javascript we need
Tagging default settings
• So we can handle all types of page views
automatically
• We can handle the page element interactions
without caring which Javascript we need
• We still need to mark these pages and page
element interactions and provide the values
we need in our reports
HTML5 data- attributes
• With HTML5 you can provide custom
additional information
HTML5 data- attributes
• With HTML5 you can provide custom
additional information
• This information will be visible in the source
code or your browser developer tools
HTML5 data- attributes
• With HTML5 you can provide custom
additional information
• This information will be visible in the source
code or your browser developer tools
• We can leverage these to describe a page
view or an interaction with a page element
HTML5 data- attributes examples
<input value="B" type="button" data-analytics-
interaction-description="Button XYZ was
clicked" />
HTML5 data- attributes examples
<input value="B" type="button" data-analytics-
interaction-description="Button XYZ was
clicked" />
<div data-analytics-pageview-description="
homepage" />
Quick data- attributes reference
• data-analytics-pageview-description
• data-analytics-pageview-key
• data-analytics-pageview-attribute-*
Quick data- attributes reference
• data-analytics-pageview-description
• data-analytics-pageview-key
• data-analytics-pageview-attribute-*
• data-analytics-interaction-description
• data-analytics-interaction-key
• data-analytics-interaction-attribute-*
• data-analytics-interaction-event
Kermit footprint
• Kermit provides clear visibility on all
elements where the data-analytics HTML5
attributes were used on the page:
Kermit footprint
• Kermit provides clear visibility on all
elements where the data-analytics HTML5
attributes were used on the page:
– kermit.utils.getSummary returns an array of all
elements using Kermit
Kermit footprint
• Kermit provides clear visibility on all
elements where the data-analytics HTML5
attributes were used on the page:
– kermit.utils.getSummary returns an array of all
elements using Kermit
– kermit.utils.getAttributes returns the complete
description of a given element and of the page
view it is related to
Extensible and modular architecture
Extensible and modular architecture
• If the property you need to describe a page
view or an interaction is not available you
can use:
Extensible and modular architecture
• If the property you need to describe a page
view or an interaction is not available you
can use:
– data-analytics-interaction-attribute-*
– data-analytics-pageview-attribute-*
Extensible and modular architecture
• If the property you need to describe a page
view or an interaction is not available you
can use:
– data-analytics-interaction-attribute-*
– data-analytics-pageview-attribute-*
• Kermit also supports external modules to
provide additional capabilities. This way you
can use only what you need
Useful Kermit modules
• cookies – provides easy functions to
manipulate cookies
Useful Kermit modules
• cookies – provides easy functions to
manipulate cookies
• consent – requires the cookies module and
manages all things related to cookie consent
Useful Kermit modules
• cookies – provides easy functions to
manipulate cookies
• consent – requires the cookies module and
manages all things related to cookie consent
• md5 – generates unique identifiers and
checksums
Useful Kermit modules
• cookies – provides easy functions to
manipulate cookies
• consent – requires the cookies module and
manages all things related to cookie consent
• md5 – generates unique identifiers and
checksums
• beavis – uses the md5 module and provides
an automatic page name to your page views,
support for heatmaps and more…
Beavis module in one slide
• Page views require a description but beavis will
generate one for you that is unique, just declare
data-analytics-pageview-description without a
value. This will save you a ton of time early on
Beavis module in one slide
• Page views require a description but beavis will
generate one for you that is unique, just declare
data-analytics-pageview-description without a
value. This will save you a ton of time early on
• Interaction elements also get a unique id which
could help you implement a heatmap solution
Beavis module in one slide
• Page views require a description but beavis will
generate one for you that is unique, just declare
data-analytics-pageview-description without a
value. This will save you a ton of time early on
• Interaction elements also get a unique id which
could help you implement a heatmap solution
• A checksum you can use to detect any changes
to your implementation. If the developers made
a change the checksum will change too and no
longer match the expected checksum
Things to watch out for
• Your developers may just end up tagging
pages by themselves without a tagging guide
Things to watch out for
• Your developers may just end up tagging
pages by themselves without a tagging guide
• The web analysts will know what’s worth
tracking and what’s not, what will cause your
server calls to explode and land you in
trouble with your vendor and your finance
department
Kermit output
• On page view Kermit will generate a JSON
object where each property is one of your
data-analytics-pageview-* HTML5 attribute
values
Kermit output
• On page view Kermit will generate a JSON
object where each property is one of your
data-analytics-pageview-* HTML5 attribute
values
• On page element interactions Kermit will
generate another JSON object with the same
page view details as above plus a property
for each data-analytics-interaction-* HTML5
attribute values
Integration with web analytics tools
• The google module is currently in development.
For GA integration the JSON outputs from
Kermit should be in a format pretty close to
what Google Analytics Universal expects
Integration with web analytics tools
• The google module is currently in development.
For GA integration the JSON outputs from
Kermit should be in a format pretty close to
what Google Analytics Universal expects
• GTM integration might be ridiculously simple
since you can use autotracking and read the
data- attributes directly from within GTM
Integration with web analytics tools
• The google module is currently in development.
For GA integration the JSON outputs from
Kermit should be in a format pretty close to
what Google Analytics Universal expects
• GTM integration might be ridiculously simple
since you can use autotracking and read the
data- attributes directly from within GTM
• Adobe Analytics and DTM support is also in the
pipeline but not on the MIT licence/open-source
Demo and documentation links
• Code and documentation for Kermit v0.8 on
GitHub at https://github.com/alban-
gerome/kermit
Demo and documentation links
• Code and documentation for Kermit v0.8 on
GitHub at https://github.com/alban-
gerome/kermit
• Demo pages
– http://www.albangerome.com/kermit/demo.
php (uses AngularJS 1.x)
– http://www.albangerome.com/kermit/demo
2.php (same as demo.php but uses CSS to
hide and show the tabs instead of AngularJS)
Thank you!
http://www.albangerome.com
@albangerome

More Related Content

What's hot

Schema.org and the changing world of Rich Results - SEOEdinburgh Meetup
Schema.org and the changing world of Rich Results - SEOEdinburgh MeetupSchema.org and the changing world of Rich Results - SEOEdinburgh Meetup
Schema.org and the changing world of Rich Results - SEOEdinburgh MeetupGeoff Kennedy
 
Technical SEO Beyond the Audit - Brighton SEO April 2017 - Philip Gamble
Technical SEO Beyond the Audit - Brighton SEO April 2017 - Philip GambleTechnical SEO Beyond the Audit - Brighton SEO April 2017 - Philip Gamble
Technical SEO Beyond the Audit - Brighton SEO April 2017 - Philip GamblePhilip Gamble
 
We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!
We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!
We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!DanielCartland
 
WordPress SEO Mistakes that Kill - BigDigital 2017 - Peter Mead
WordPress SEO Mistakes that Kill - BigDigital 2017 - Peter MeadWordPress SEO Mistakes that Kill - BigDigital 2017 - Peter Mead
WordPress SEO Mistakes that Kill - BigDigital 2017 - Peter MeadPeter Mead
 
Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021
Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021
Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021DavidSmart53
 
Why You Should Invest in Technical SEO by Ruth Burr Reedy
Why You Should Invest in Technical SEO by Ruth Burr ReedyWhy You Should Invest in Technical SEO by Ruth Burr Reedy
Why You Should Invest in Technical SEO by Ruth Burr ReedyGlen Dimaandal
 
Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...
Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...
Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...DeepCrawl
 
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHODHOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHODChristoph C. Cemper
 
The Real Problems Behind Indexing | 5 Hours of Technical SEO
The Real Problems Behind Indexing | 5 Hours of Technical SEOThe Real Problems Behind Indexing | 5 Hours of Technical SEO
The Real Problems Behind Indexing | 5 Hours of Technical SEOOnely
 
Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...
Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...
Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...Rachel Costello
 
SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration
SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration
SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration Branded3
 
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...Faye Watt
 
Website SEO Audit WordPress Checks
Website SEO Audit WordPress Checks Website SEO Audit WordPress Checks
Website SEO Audit WordPress Checks Peter Mead
 
Paywall SEO: Digital First Print Second, From 0 to 35k subscribers in a year
Paywall SEO: Digital First Print Second, From 0 to 35k subscribers in a yearPaywall SEO: Digital First Print Second, From 0 to 35k subscribers in a year
Paywall SEO: Digital First Print Second, From 0 to 35k subscribers in a yearDaniel Smullen
 
BrightonSEO 2017 - SEO quick wins from a technical check
BrightonSEO 2017  - SEO quick wins from a technical checkBrightonSEO 2017  - SEO quick wins from a technical check
BrightonSEO 2017 - SEO quick wins from a technical checkChloe Bodard
 
[TurnDigi 2020] Getting Tech SEO Implemented
[TurnDigi 2020] Getting Tech SEO Implemented[TurnDigi 2020] Getting Tech SEO Implemented
[TurnDigi 2020] Getting Tech SEO ImplementedAreej AbuAli
 
Experimentation: A Superior Framework+Offering for SEO by Cyrus Shepard
Experimentation: A Superior Framework+Offering for SEO by Cyrus ShepardExperimentation: A Superior Framework+Offering for SEO by Cyrus Shepard
Experimentation: A Superior Framework+Offering for SEO by Cyrus ShepardGlen Dimaandal
 
Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...
Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...
Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...DeepCrawl
 
Technical SEO Auditing Tips for the Modern Marketer by Melody Petulla at Merkle
Technical SEO Auditing Tips for the Modern Marketer by Melody Petulla at MerkleTechnical SEO Auditing Tips for the Modern Marketer by Melody Petulla at Merkle
Technical SEO Auditing Tips for the Modern Marketer by Melody Petulla at MerkleBayAreaSearchSFMeetu
 

What's hot (20)

Schema.org and the changing world of Rich Results - SEOEdinburgh Meetup
Schema.org and the changing world of Rich Results - SEOEdinburgh MeetupSchema.org and the changing world of Rich Results - SEOEdinburgh Meetup
Schema.org and the changing world of Rich Results - SEOEdinburgh Meetup
 
Technical SEO Beyond the Audit - Brighton SEO April 2017 - Philip Gamble
Technical SEO Beyond the Audit - Brighton SEO April 2017 - Philip GambleTechnical SEO Beyond the Audit - Brighton SEO April 2017 - Philip Gamble
Technical SEO Beyond the Audit - Brighton SEO April 2017 - Philip Gamble
 
We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!
We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!
We’ve analysed the SEO of over 100 eCom sites - this is what we’ve learned!
 
WordPress SEO Mistakes that Kill - BigDigital 2017 - Peter Mead
WordPress SEO Mistakes that Kill - BigDigital 2017 - Peter MeadWordPress SEO Mistakes that Kill - BigDigital 2017 - Peter Mead
WordPress SEO Mistakes that Kill - BigDigital 2017 - Peter Mead
 
Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021
Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021
Crawling & Indexing for JavaScript Heavy Sites brightonSEO 2021
 
Why You Should Invest in Technical SEO by Ruth Burr Reedy
Why You Should Invest in Technical SEO by Ruth Burr ReedyWhy You Should Invest in Technical SEO by Ruth Burr Reedy
Why You Should Invest in Technical SEO by Ruth Burr Reedy
 
Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...
Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...
Conflicting Website Signals & Confused Search Engines | Raleigh SEO Conferenc...
 
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHODHOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
 
The Real Problems Behind Indexing | 5 Hours of Technical SEO
The Real Problems Behind Indexing | 5 Hours of Technical SEOThe Real Problems Behind Indexing | 5 Hours of Technical SEO
The Real Problems Behind Indexing | 5 Hours of Technical SEO
 
Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...
Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...
Conflicting Website Signals & Confused Search Engines - Rachel Costello, Tech...
 
SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration
SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration
SearchLeeds 2018 - Steve Chambers - Stickyeyes - How not to F**K up a Migration
 
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
 
Website SEO Audit WordPress Checks
Website SEO Audit WordPress Checks Website SEO Audit WordPress Checks
Website SEO Audit WordPress Checks
 
Paywall SEO: Digital First Print Second, From 0 to 35k subscribers in a year
Paywall SEO: Digital First Print Second, From 0 to 35k subscribers in a yearPaywall SEO: Digital First Print Second, From 0 to 35k subscribers in a year
Paywall SEO: Digital First Print Second, From 0 to 35k subscribers in a year
 
BrightonSEO 2017 - SEO quick wins from a technical check
BrightonSEO 2017  - SEO quick wins from a technical checkBrightonSEO 2017  - SEO quick wins from a technical check
BrightonSEO 2017 - SEO quick wins from a technical check
 
[TurnDigi 2020] Getting Tech SEO Implemented
[TurnDigi 2020] Getting Tech SEO Implemented[TurnDigi 2020] Getting Tech SEO Implemented
[TurnDigi 2020] Getting Tech SEO Implemented
 
Experimentation: A Superior Framework+Offering for SEO by Cyrus Shepard
Experimentation: A Superior Framework+Offering for SEO by Cyrus ShepardExperimentation: A Superior Framework+Offering for SEO by Cyrus Shepard
Experimentation: A Superior Framework+Offering for SEO by Cyrus Shepard
 
Enterprise SEO
Enterprise SEOEnterprise SEO
Enterprise SEO
 
Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...
Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...
Speed & Performance Optimisation: How to Meet Users' High Expectations - Rach...
 
Technical SEO Auditing Tips for the Modern Marketer by Melody Petulla at Merkle
Technical SEO Auditing Tips for the Modern Marketer by Melody Petulla at MerkleTechnical SEO Auditing Tips for the Modern Marketer by Melody Petulla at Merkle
Technical SEO Auditing Tips for the Modern Marketer by Melody Petulla at Merkle
 

Similar to Easier web analytics tracking with Kermit's HTML5 data attributes

SEO for Ecommerce: A Comprehensive Guide
SEO for Ecommerce: A Comprehensive GuideSEO for Ecommerce: A Comprehensive Guide
SEO for Ecommerce: A Comprehensive GuideAdam Audette
 
Technical SEO - An Introduction to Core Aspects of Technical SEO Best-Practise
Technical SEO - An Introduction to Core Aspects of Technical SEO Best-PractiseTechnical SEO - An Introduction to Core Aspects of Technical SEO Best-Practise
Technical SEO - An Introduction to Core Aspects of Technical SEO Best-PractiseErudite
 
Build your own analytics power tools
Build your own analytics power toolsBuild your own analytics power tools
Build your own analytics power toolsAlban Gérôme
 
Five SEO Strategies Every Company Needs to Master
Five SEO Strategies Every Company Needs to MasterFive SEO Strategies Every Company Needs to Master
Five SEO Strategies Every Company Needs to MasterAct-On Software
 
Search Engine Optimization (Seo) for Developers
Search Engine Optimization (Seo) for DevelopersSearch Engine Optimization (Seo) for Developers
Search Engine Optimization (Seo) for DevelopersMatthew Robinson
 
SEO for Beginners Feb 2020 - Bristol Media
SEO for Beginners Feb 2020  - Bristol MediaSEO for Beginners Feb 2020  - Bristol Media
SEO for Beginners Feb 2020 - Bristol MediaJon Payne
 
Website Optimization How to Increase Page Performance and More
Website Optimization How to Increase Page Performance and More Website Optimization How to Increase Page Performance and More
Website Optimization How to Increase Page Performance and More Boundify
 
Getting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmetaGetting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmetaWill Haire
 
SEO & Large websites - Search University 2012
SEO & Large websites - Search University 2012SEO & Large websites - Search University 2012
SEO & Large websites - Search University 2012Sven De Meyere
 
Website Optimization -SEO - Step By Step
Website Optimization -SEO - Step By StepWebsite Optimization -SEO - Step By Step
Website Optimization -SEO - Step By StepMia Lee
 
Technical SEO Checklist for Beginners
Technical SEO Checklist for BeginnersTechnical SEO Checklist for Beginners
Technical SEO Checklist for BeginnersBristolSEO
 
Search Engine Optimisation Basics
Search Engine Optimisation BasicsSearch Engine Optimisation Basics
Search Engine Optimisation BasicsRyan Jones
 
Complete Ga Power User Web
Complete Ga Power User WebComplete Ga Power User Web
Complete Ga Power User WebRoman Zykov
 
Javascript Tracking or Web Log Analytics?
Javascript Tracking or Web Log Analytics? Javascript Tracking or Web Log Analytics?
Javascript Tracking or Web Log Analytics? Piwik PRO
 
Don't F*ck Up Your Site Migration - Serena Pearson
Don't F*ck Up Your Site Migration - Serena PearsonDon't F*ck Up Your Site Migration - Serena Pearson
Don't F*ck Up Your Site Migration - Serena PearsonSerenaPearson2
 
Magento SEO - ThinkVis Sept 2012
Magento SEO - ThinkVis Sept 2012Magento SEO - ThinkVis Sept 2012
Magento SEO - ThinkVis Sept 2012paulnrogers
 
Nikki rae Google Analytics Audit at BrightonSEO
Nikki rae Google Analytics Audit at BrightonSEONikki rae Google Analytics Audit at BrightonSEO
Nikki rae Google Analytics Audit at BrightonSEOanalyticstraining
 
How To Construct A Search Engine Friendly Website
How To Construct A Search Engine Friendly WebsiteHow To Construct A Search Engine Friendly Website
How To Construct A Search Engine Friendly WebsiteMatt Siltala
 
Web analyticspres -am-long
Web analyticspres -am-longWeb analyticspres -am-long
Web analyticspres -am-longAnna Long
 

Similar to Easier web analytics tracking with Kermit's HTML5 data attributes (20)

SEO for Ecommerce: A Comprehensive Guide
SEO for Ecommerce: A Comprehensive GuideSEO for Ecommerce: A Comprehensive Guide
SEO for Ecommerce: A Comprehensive Guide
 
Technical SEO - An Introduction to Core Aspects of Technical SEO Best-Practise
Technical SEO - An Introduction to Core Aspects of Technical SEO Best-PractiseTechnical SEO - An Introduction to Core Aspects of Technical SEO Best-Practise
Technical SEO - An Introduction to Core Aspects of Technical SEO Best-Practise
 
Build your own analytics power tools
Build your own analytics power toolsBuild your own analytics power tools
Build your own analytics power tools
 
Five SEO Strategies Every Company Needs to Master
Five SEO Strategies Every Company Needs to MasterFive SEO Strategies Every Company Needs to Master
Five SEO Strategies Every Company Needs to Master
 
Search Engine Optimization (Seo) for Developers
Search Engine Optimization (Seo) for DevelopersSearch Engine Optimization (Seo) for Developers
Search Engine Optimization (Seo) for Developers
 
SEO for Beginners Feb 2020 - Bristol Media
SEO for Beginners Feb 2020  - Bristol MediaSEO for Beginners Feb 2020  - Bristol Media
SEO for Beginners Feb 2020 - Bristol Media
 
Website Optimization How to Increase Page Performance and More
Website Optimization How to Increase Page Performance and More Website Optimization How to Increase Page Performance and More
Website Optimization How to Increase Page Performance and More
 
Getting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmetaGetting SEO performance in Angular Meteor with ngmeta
Getting SEO performance in Angular Meteor with ngmeta
 
SEO & Large websites - Search University 2012
SEO & Large websites - Search University 2012SEO & Large websites - Search University 2012
SEO & Large websites - Search University 2012
 
Website Optimization -SEO - Step By Step
Website Optimization -SEO - Step By StepWebsite Optimization -SEO - Step By Step
Website Optimization -SEO - Step By Step
 
Technical SEO Checklist for Beginners
Technical SEO Checklist for BeginnersTechnical SEO Checklist for Beginners
Technical SEO Checklist for Beginners
 
Search Engine Optimisation Basics
Search Engine Optimisation BasicsSearch Engine Optimisation Basics
Search Engine Optimisation Basics
 
Complete Ga Power User Web
Complete Ga Power User WebComplete Ga Power User Web
Complete Ga Power User Web
 
Javascript Tracking or Web Log Analytics?
Javascript Tracking or Web Log Analytics? Javascript Tracking or Web Log Analytics?
Javascript Tracking or Web Log Analytics?
 
Don't F*ck Up Your Site Migration - Serena Pearson
Don't F*ck Up Your Site Migration - Serena PearsonDon't F*ck Up Your Site Migration - Serena Pearson
Don't F*ck Up Your Site Migration - Serena Pearson
 
Magento SEO - ThinkVis Sept 2012
Magento SEO - ThinkVis Sept 2012Magento SEO - ThinkVis Sept 2012
Magento SEO - ThinkVis Sept 2012
 
Google Data Highlighter
Google Data HighlighterGoogle Data Highlighter
Google Data Highlighter
 
Nikki rae Google Analytics Audit at BrightonSEO
Nikki rae Google Analytics Audit at BrightonSEONikki rae Google Analytics Audit at BrightonSEO
Nikki rae Google Analytics Audit at BrightonSEO
 
How To Construct A Search Engine Friendly Website
How To Construct A Search Engine Friendly WebsiteHow To Construct A Search Engine Friendly Website
How To Construct A Search Engine Friendly Website
 
Web analyticspres -am-long
Web analyticspres -am-longWeb analyticspres -am-long
Web analyticspres -am-long
 

More from Alban Gérôme

Avoir de l’impact, autrement
Avoir de l’impact, autrementAvoir de l’impact, autrement
Avoir de l’impact, autrementAlban Gérôme
 
Earning more as a Digital or Web Analyst
Earning more as a Digital or Web AnalystEarning more as a Digital or Web Analyst
Earning more as a Digital or Web AnalystAlban Gérôme
 
Is it just me, or the C-suite doesn't care about data?
Is it just me, or the C-suite doesn't care about data?Is it just me, or the C-suite doesn't care about data?
Is it just me, or the C-suite doesn't care about data?Alban Gérôme
 
Cracking trading cards packs and web analytics
Cracking trading cards packs and web analyticsCracking trading cards packs and web analytics
Cracking trading cards packs and web analyticsAlban Gérôme
 
Spicy javascript: Create your first Chrome extension for web analytics QA
Spicy javascript: Create your first Chrome extension for web analytics QASpicy javascript: Create your first Chrome extension for web analytics QA
Spicy javascript: Create your first Chrome extension for web analytics QAAlban Gérôme
 
The us vs the uk web analytics job slideshare
The us vs the uk web analytics job slideshareThe us vs the uk web analytics job slideshare
The us vs the uk web analytics job slideshareAlban Gérôme
 
Implementing Web Analytics on Single Page Applications
Implementing Web Analytics on Single Page ApplicationsImplementing Web Analytics on Single Page Applications
Implementing Web Analytics on Single Page ApplicationsAlban Gérôme
 
Automating boring tasks with Powershell
Automating boring tasks with PowershellAutomating boring tasks with Powershell
Automating boring tasks with PowershellAlban Gérôme
 
Influence and Persuasion
Influence and PersuasionInfluence and Persuasion
Influence and PersuasionAlban Gérôme
 
Reshaping the Hype Cycle
Reshaping the Hype CycleReshaping the Hype Cycle
Reshaping the Hype CycleAlban Gérôme
 
Claiming credit for being data-driven
Claiming credit for being data-drivenClaiming credit for being data-driven
Claiming credit for being data-drivenAlban Gérôme
 
Acceptance, Accessible, Applicable et Auditable
Acceptance, Accessible, Applicable et AuditableAcceptance, Accessible, Applicable et Auditable
Acceptance, Accessible, Applicable et AuditableAlban Gérôme
 
Acceptance, Accessible, Actionable and Auditable
Acceptance, Accessible, Actionable and AuditableAcceptance, Accessible, Actionable and Auditable
Acceptance, Accessible, Actionable and AuditableAlban Gérôme
 
Are you still working for a data justified company?
Are you still working for a data justified company?Are you still working for a data justified company?
Are you still working for a data justified company?Alban Gérôme
 
Is data visualisation bullshit?
Is data visualisation bullshit?Is data visualisation bullshit?
Is data visualisation bullshit?Alban Gérôme
 
Acceptance, accessible, actionable and auditable
Acceptance, accessible, actionable and auditableAcceptance, accessible, actionable and auditable
Acceptance, accessible, actionable and auditableAlban Gérôme
 

More from Alban Gérôme (20)

Avoir de l’impact, autrement
Avoir de l’impact, autrementAvoir de l’impact, autrement
Avoir de l’impact, autrement
 
Earning more as a Digital or Web Analyst
Earning more as a Digital or Web AnalystEarning more as a Digital or Web Analyst
Earning more as a Digital or Web Analyst
 
Is it just me, or the C-suite doesn't care about data?
Is it just me, or the C-suite doesn't care about data?Is it just me, or the C-suite doesn't care about data?
Is it just me, or the C-suite doesn't care about data?
 
Cracking trading cards packs and web analytics
Cracking trading cards packs and web analyticsCracking trading cards packs and web analytics
Cracking trading cards packs and web analytics
 
Spicy javascript: Create your first Chrome extension for web analytics QA
Spicy javascript: Create your first Chrome extension for web analytics QASpicy javascript: Create your first Chrome extension for web analytics QA
Spicy javascript: Create your first Chrome extension for web analytics QA
 
The us vs the uk web analytics job slideshare
The us vs the uk web analytics job slideshareThe us vs the uk web analytics job slideshare
The us vs the uk web analytics job slideshare
 
Implementing Web Analytics on Single Page Applications
Implementing Web Analytics on Single Page ApplicationsImplementing Web Analytics on Single Page Applications
Implementing Web Analytics on Single Page Applications
 
Tagging differently
Tagging differentlyTagging differently
Tagging differently
 
Automating boring tasks with Powershell
Automating boring tasks with PowershellAutomating boring tasks with Powershell
Automating boring tasks with Powershell
 
Influence and Persuasion
Influence and PersuasionInfluence and Persuasion
Influence and Persuasion
 
Reshaping the Hype Cycle
Reshaping the Hype CycleReshaping the Hype Cycle
Reshaping the Hype Cycle
 
Claiming credit for being data-driven
Claiming credit for being data-drivenClaiming credit for being data-driven
Claiming credit for being data-driven
 
Acceptance, Accessible, Applicable et Auditable
Acceptance, Accessible, Applicable et AuditableAcceptance, Accessible, Applicable et Auditable
Acceptance, Accessible, Applicable et Auditable
 
Acceptance, Accessible, Actionable and Auditable
Acceptance, Accessible, Actionable and AuditableAcceptance, Accessible, Actionable and Auditable
Acceptance, Accessible, Actionable and Auditable
 
Logic or emotions
Logic or emotionsLogic or emotions
Logic or emotions
 
Hub and spoke model
Hub and spoke modelHub and spoke model
Hub and spoke model
 
Are you still working for a data justified company?
Are you still working for a data justified company?Are you still working for a data justified company?
Are you still working for a data justified company?
 
Persuasion
PersuasionPersuasion
Persuasion
 
Is data visualisation bullshit?
Is data visualisation bullshit?Is data visualisation bullshit?
Is data visualisation bullshit?
 
Acceptance, accessible, actionable and auditable
Acceptance, accessible, actionable and auditableAcceptance, accessible, actionable and auditable
Acceptance, accessible, actionable and auditable
 

Recently uploaded

Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsstephieert
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGAPNIC
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Roomgirls4nights
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...Diya Sharma
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...aditipandeya
 
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With RoomVIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Roomdivyansh0kumar0
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girladitipandeya
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
Gram Darshan PPT cyber rural in villages of india
Gram Darshan PPT cyber rural  in villages of indiaGram Darshan PPT cyber rural  in villages of india
Gram Darshan PPT cyber rural in villages of indiaimessage0108
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024APNIC
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Sheetaleventcompany
 

Recently uploaded (20)

Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girls
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOG
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
 
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With RoomVIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Gram Darshan PPT cyber rural in villages of india
Gram Darshan PPT cyber rural  in villages of indiaGram Darshan PPT cyber rural  in villages of india
Gram Darshan PPT cyber rural in villages of india
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
 

Easier web analytics tracking with Kermit's HTML5 data attributes

  • 1.
  • 4. Easier and faster tagging with Kermit Alban Gérôme BrightonSEO April 7th, 2017
  • 5.
  • 7. Web analytics tools are Easy to implement Limited freedom for bespoke implementations
  • 8. Web analytics tools are Easy to implement Limited freedom for bespoke implementations Hard to implement Very customisable implementations
  • 9.
  • 10. Web developers • Do not consider that web analytics tagging is part of their job because it was not taught as part of the computer science curriculum
  • 11. Web developers • Do not consider that web analytics tagging is part of their job because it was not taught as part of the computer science curriculum • Believe that tagging is either just copy and paste or your code ends up broken up into twenty files organised like Russian dolls
  • 12. Web developers • Do not consider that web analytics tagging is part of their job because it was not taught as part of the computer science curriculum • Believe that tagging is either just copy and paste or your code ends up broken up into twenty files organised like Russian dolls • Bless them
  • 14. QA testers • If there were no Javascript errors the web analytics implementation is assumed to be correct
  • 15. QA testers • If there were no Javascript errors the web analytics implementation is assumed to be correct • We need our own web analytics QA scripts included in their tests suites
  • 16. QA testers • If there were no Javascript errors the web analytics implementation is assumed to be correct • We need our own web analytics QA scripts included in their tests suites • Bless them too
  • 17.
  • 18. Web analysts • They cannot spend their time monitoring reports to ensure that the developers latest changes did not break anything
  • 19. Web analysts • They cannot spend their time monitoring reports to ensure that the developers latest changes did not break anything • If the data suggests anything contrary to the business stakeholders opinion someone will invoke doubts about the data analysis and/or collection, belief persistence perhaps
  • 20.
  • 21. What we need • Simple tagging for complex analytics tools where defaults are enabled but can be overridden
  • 22. What we need • Simple tagging for complex analytics tools where defaults are enabled but can be overridden • Analytics code can be checked by looking at the source code of the page
  • 23. What we need • Simple tagging for complex analytics tools where defaults are enabled but can be overridden • Analytics code can be checked by looking at the source code of the page • Throw errors if the analytics code no longer matches the expected web page structure
  • 24.
  • 25. Page views and interactions • We only really care about page views and interactions with page elements
  • 26. Page views and interactions • We only really care about page views and interactions with page elements • We need support for: – Single page applications and virtual page views – The click, change and blur Javascript events
  • 27. Page views and virtual page views • Virtual page views are screen updates which did not result in a page load. The URL might not even change
  • 28. Page views and virtual page views • Virtual page views are screen updates which did not result in a page load. The URL might not even change • These screen updates can be detected automatically and treated like ordinary page views
  • 29. Javascript events The click, change and blur events can be inferred from the element that was interacted with automatically:
  • 30. Javascript events The click, change and blur events can be inferred from the element that was interacted with automatically: – Buttons: click event – Drop-down menus: change event – Text fields: blur event
  • 31. Tagging default settings • So we can handle all types of page views automatically
  • 32. Tagging default settings • So we can handle all types of page views automatically • We can handle the page element interactions without caring which Javascript we need
  • 33. Tagging default settings • So we can handle all types of page views automatically • We can handle the page element interactions without caring which Javascript we need • We still need to mark these pages and page element interactions and provide the values we need in our reports
  • 34.
  • 35. HTML5 data- attributes • With HTML5 you can provide custom additional information
  • 36. HTML5 data- attributes • With HTML5 you can provide custom additional information • This information will be visible in the source code or your browser developer tools
  • 37. HTML5 data- attributes • With HTML5 you can provide custom additional information • This information will be visible in the source code or your browser developer tools • We can leverage these to describe a page view or an interaction with a page element
  • 38. HTML5 data- attributes examples <input value="B" type="button" data-analytics- interaction-description="Button XYZ was clicked" />
  • 39. HTML5 data- attributes examples <input value="B" type="button" data-analytics- interaction-description="Button XYZ was clicked" /> <div data-analytics-pageview-description=" homepage" />
  • 40. Quick data- attributes reference • data-analytics-pageview-description • data-analytics-pageview-key • data-analytics-pageview-attribute-*
  • 41. Quick data- attributes reference • data-analytics-pageview-description • data-analytics-pageview-key • data-analytics-pageview-attribute-* • data-analytics-interaction-description • data-analytics-interaction-key • data-analytics-interaction-attribute-* • data-analytics-interaction-event
  • 42. Kermit footprint • Kermit provides clear visibility on all elements where the data-analytics HTML5 attributes were used on the page:
  • 43. Kermit footprint • Kermit provides clear visibility on all elements where the data-analytics HTML5 attributes were used on the page: – kermit.utils.getSummary returns an array of all elements using Kermit
  • 44. Kermit footprint • Kermit provides clear visibility on all elements where the data-analytics HTML5 attributes were used on the page: – kermit.utils.getSummary returns an array of all elements using Kermit – kermit.utils.getAttributes returns the complete description of a given element and of the page view it is related to
  • 45. Extensible and modular architecture
  • 46. Extensible and modular architecture • If the property you need to describe a page view or an interaction is not available you can use:
  • 47. Extensible and modular architecture • If the property you need to describe a page view or an interaction is not available you can use: – data-analytics-interaction-attribute-* – data-analytics-pageview-attribute-*
  • 48. Extensible and modular architecture • If the property you need to describe a page view or an interaction is not available you can use: – data-analytics-interaction-attribute-* – data-analytics-pageview-attribute-* • Kermit also supports external modules to provide additional capabilities. This way you can use only what you need
  • 49. Useful Kermit modules • cookies – provides easy functions to manipulate cookies
  • 50. Useful Kermit modules • cookies – provides easy functions to manipulate cookies • consent – requires the cookies module and manages all things related to cookie consent
  • 51. Useful Kermit modules • cookies – provides easy functions to manipulate cookies • consent – requires the cookies module and manages all things related to cookie consent • md5 – generates unique identifiers and checksums
  • 52. Useful Kermit modules • cookies – provides easy functions to manipulate cookies • consent – requires the cookies module and manages all things related to cookie consent • md5 – generates unique identifiers and checksums • beavis – uses the md5 module and provides an automatic page name to your page views, support for heatmaps and more…
  • 53. Beavis module in one slide • Page views require a description but beavis will generate one for you that is unique, just declare data-analytics-pageview-description without a value. This will save you a ton of time early on
  • 54. Beavis module in one slide • Page views require a description but beavis will generate one for you that is unique, just declare data-analytics-pageview-description without a value. This will save you a ton of time early on • Interaction elements also get a unique id which could help you implement a heatmap solution
  • 55. Beavis module in one slide • Page views require a description but beavis will generate one for you that is unique, just declare data-analytics-pageview-description without a value. This will save you a ton of time early on • Interaction elements also get a unique id which could help you implement a heatmap solution • A checksum you can use to detect any changes to your implementation. If the developers made a change the checksum will change too and no longer match the expected checksum
  • 56.
  • 57. Things to watch out for • Your developers may just end up tagging pages by themselves without a tagging guide
  • 58. Things to watch out for • Your developers may just end up tagging pages by themselves without a tagging guide • The web analysts will know what’s worth tracking and what’s not, what will cause your server calls to explode and land you in trouble with your vendor and your finance department
  • 59.
  • 60. Kermit output • On page view Kermit will generate a JSON object where each property is one of your data-analytics-pageview-* HTML5 attribute values
  • 61. Kermit output • On page view Kermit will generate a JSON object where each property is one of your data-analytics-pageview-* HTML5 attribute values • On page element interactions Kermit will generate another JSON object with the same page view details as above plus a property for each data-analytics-interaction-* HTML5 attribute values
  • 62. Integration with web analytics tools • The google module is currently in development. For GA integration the JSON outputs from Kermit should be in a format pretty close to what Google Analytics Universal expects
  • 63. Integration with web analytics tools • The google module is currently in development. For GA integration the JSON outputs from Kermit should be in a format pretty close to what Google Analytics Universal expects • GTM integration might be ridiculously simple since you can use autotracking and read the data- attributes directly from within GTM
  • 64. Integration with web analytics tools • The google module is currently in development. For GA integration the JSON outputs from Kermit should be in a format pretty close to what Google Analytics Universal expects • GTM integration might be ridiculously simple since you can use autotracking and read the data- attributes directly from within GTM • Adobe Analytics and DTM support is also in the pipeline but not on the MIT licence/open-source
  • 65.
  • 66. Demo and documentation links • Code and documentation for Kermit v0.8 on GitHub at https://github.com/alban- gerome/kermit
  • 67. Demo and documentation links • Code and documentation for Kermit v0.8 on GitHub at https://github.com/alban- gerome/kermit • Demo pages – http://www.albangerome.com/kermit/demo. php (uses AngularJS 1.x) – http://www.albangerome.com/kermit/demo 2.php (same as demo.php but uses CSS to hide and show the tabs instead of AngularJS)