Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sourcing Medium

Sourcing Medium

Tracking SaaS Trial Conversions 
with Google Analytics via Google Tag Manager and Google Measurement Protocol

Lauren Ancona

May 29, 2014
Tweet

More Decks by Lauren Ancona

Other Decks in Business

Transcript

  1. “Well, we know where we're going, But we don't know

    where we've been.” Talking Heads, Road to Nowhere
  2. sites Using analytics Tools None GA Yandex.Metrika LiveInternet WP Stats

    3.2% 3.6% 3.7% 49.1% 39.3% W3Techs.com, 28 May 2014
  3. <script>! dataLayer = [{! 'Account ID': <%= current_account.id.to_s.to_json %>! }];!

    </script>! ! <% unless development? %>! <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-BLAH"! height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>! <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':! new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],! j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=! '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);! })(window,document,'script','dataLayer','GTM-BLAH');</script>! <% end %>! GTM + Data Layer EXAMPle
  4. HTTParty.post \! "http://www.google-analytics.com/collect", :body => {! :v => 1, :tid

    => ENV['google_analytics_tid'], :cid => data["Account ID"],! :t => 'transaction', :ti => data["Payment ID"],! :tr => data["Billing Amount"],! :ts => 0, :tt =>0, :cu => 'USD' }! ! # register one item in the transaction! HTTParty.post \! "http://www.google-analytics.com/collect", :body => {! :v => 1, :tid => ENV['google_analytics_tid'], :cid => data["Account ID"],! :t => 'item', :ti => data["Payment ID"],! :ip => data["Billing Amount"],:iq => 1,! :in => data["Plan Name"], :ic => data["Plan ID"], :cu => 'USD' } passing offline transactions to GA via Tag Manager