Web Design & Development Forum

Web Developers Zone
  • FB
  • TW
  • LND
  • G+

Accurately reporting referrer from payments made with PayPal in Google Analytics

open
Public

In our Google Analytics ecommerce PayPal is getting credit as the referrer. I’ve found many articles outlining use on the utmnooveride to ensure PayPal transactions pass the data so that the original referrer gets credit.
We use PayPal to process our credit cards as well as allow people to pay with their PayPal account. When a visitor pays with credit card they never leave our site, so we are only seeing this inaccuracy when a user leaves our site to pay with their PayPal account.
More accurately we are using PayPal express checkout and using NVP (name value pair) API. https://developer.paypal.com/docs/classic/api/NVPAPIOverview/
We’ve implemented the suggestions and code changes we have found but PayPal is still getting credit. We’ve even talked with PayPal and Google techs and aren’t getting any thing more from them than what we are finding online.
Is anyone else encountering this issue, have you found a solution or have any suggestions? Your help is much appreciated.
– Solution Update –
After several months of seeking a solution, implementing changes, testing and tweaking we finally (it appears) have a solution.
Based on some various articles on how to improve accuracy of data reporting I just happened to be messing with property settings in Analytics and came across the Referral Exclusion List. I’ve mostly used this to just cancel out links from other sites in our domain structure; subdoimain.foosite.com -> foosite.com, but decided to investigate adding PayPal to this and came across this support doc from Google.
After reading that article I wondered what would happen. The result = NO MORE PAYPAL referrals and referrals from the original source without having to worry about

utm=nooverride=1

usage.
I have verified with a Google support specialist that the below has no negative effects on ecommerce reporting and they have submitted my case to their help team for future use. He also mentioned that this methodology actually recently added which is why there is little documentation about it.
Here is how.

  1. Make sure you are using Universal Analytics
  2. Admin -> Property Settings -> Tracking Info -> Referral Exclusion List
    • Add Referral Exclusion
  3. Insert referral domain – my case was paypal.com but you may have this issue with others – key here is to identify any domain that might be hijacking ecommerce transactions. So if you are seeing anything that has ecommerce credit that you don’t think should; add it

This should solve the problem but I would suggest taking things a few steps further.

  1. Adjust your session settings. Admin -> Property Settings -> Tracking Info -> Session Settings
  • A few notes about session settings- depending on your site and how users engage I would initially adjust the session timeout so that session is longer than 30 mins. I set mine to 2 hours for testing. Then for campaign timeout I set it 1 day (much shorter time than our normal campaigns.
  • This allowed me to initially see that it was indeed eliminating PayPal from the referral source and but that my transactions in GA matched my internal reports.
  • After verification I set the session timeout to 45 mins – 15 mins longer than our site session settings and set the campaign timeout to 7 days.
  • Make use of Google URL builder and add parameters to your URLs.
    • This is not only good practice it saves you tons of time trying to segment out your referral sources in GA. It is especially helpful if you collect acquisition source in your internal reports or logs because you can compare those to GA to ensure you are getting accurate ecomm numbers from GA.
  1. WDZ Admin Staff June 19, 2014
    This stuff is really implementation specific, so it's very difficult to give specific instructions without knowing a lot of details. How did you implement the utm_nooverride param? – kasper pedersen Jan 7 at 22:10


    Two different uses inside our cart code: in the new two comments for readability – Cory Jan 7 at 22:47


    'return url'=> $server_name.'/cart/paypal?utm_nooverride=1' – Cory Jan 7 at 22:50


    'Zend_Session::namespaceUnset('ordercomplete'); $ordercomplete_session = new Zend_Session_Namespace('ordercomplete'); $ordercomplete_session->order_id = $order->id; $redirect = '/ordercomplete/'.$order->id.'?utm_nooverride=1'; return $this->_redirect($redirect); – Cory Jan 7 at 22:52


    So /cart/paypal?utm_nooverride=1 never renders, but HTTP redirects to /ordercomplete/SOME-ORDER-ID?utm_nooverride=1, right? In GA, what landing pages are you seeing from Paypal traffic (if it's only utm_nooverride not working, it should be just a bunch of /ordercomplete/...)? – kasper pedersen Jan 7 at 23:07

1 answer

Staff June 19, 2014

This stuff is really implementation specific, so it’s very difficult to give specific instructions without knowing a lot of details. How did you implement the

utm_nooverride

param? –  kasper pedersen Jan 7 at 22:10

  
 

Two different uses inside our cart code: in the new two comments for readability –  Cory Jan 7 at 22:47

  
 

'return url'=> $server_name.'/cart/paypal?utm_nooverride=1'

–  Cory Jan 7 at 22:50

  
 

'Zend_Session::namespaceUnset('ordercomplete'); $ordercomplete_session = new Zend_Session_Namespace('ordercomplete'); $ordercomplete_session->order_id = $order->id; $redirect = '/ordercomplete/'.$order->id.'?utm_nooverride=1'; return $this->_redirect($redirect);

–  Cory Jan 7 at 22:52

  
 

So

/cart/paypal?utm_nooverride=1

never renders, but HTTP redirects to

/ordercomplete/SOME-ORDER-ID?utm_nooverride=1

, right? In GA, what landing pages are you seeing from Paypal traffic (if it’s only

utm_nooverride

not working, it should be just a bunch of

/ordercomplete/...

)? –  kasper pedersen Jan 7 at 23:07

#1

Please login or Register to Submit Answer