Tracking PayPal with Google Analytics and Google AdWords

Setting up ecommerce tracking is essential if you are selling online (if you don't sell online check out Monetizing Non-Ecommerce Sites). But not all ecommerce systems integrate with Google Analytics. And if you are selling online chances are you accept PayPal® as a method of payment. So how do  track visitors who have purchased via PayPal?


First step, create a thank you page for successful PayPal transactions and set that URL within PayPal so visitors are returned to your site.



The problem is that when the visitor returns to your site after payment has been received (or cancelled) PayPal gets the credit for the conversion and not the original way the visitor found your site.

Steps For Tracking PayPal With Google Analytics:

1. Log into PayPal.

2. Under the 'My Account' tab click on the 'Profile' link.

3. Click on 'Website Payment Preferences' (under 'Selling Preferences' in the right column).

4. Turn 'Auto Return' on and enter the URL of your PayPal thank you page.

Then add ?utm_nooverride=1 to the end of your URL (highlighted in blue below), this will ensure that transactions (i.e. conversions) are credited to the original traffic source, rather than PayPal.



For example, if a visitor came from a Google search for 'gardening book' the conversion will be credited to Google, organic, gardening book (and not PayPal, referral).

At this point if you simply want to track the conversions using goals you can setup a new goal for the thank you page within Google Analytics. However, if you want to also get Google Analytics ecommerce tracking up and running you will need to get a little more technical.

PayPal's payment data transfer allows you to receive transaction details once a visitor is back on your site (visit the PayPal technical overview article for details).

Getting Advanced With Ecommerce Tracking:

6. Turn 'Payment Data Transfer' on.



Please note that once you turn on 'Payment Data Transfer' it will be applied to all Auto Return payments unless otherwise specified within the button or link for that Website Payment.

7. You will now either have to create your 'Buy Now' buttons or modify your existing buttons.

If you are creating new 'Buy Now' buttons leave the return URL blank (or if you specify a different URL ensure it has ?utm_nooverride=1 at the end).

If you already have buttons on your site you will need to look for the following code:

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">

And add the following before the </form> element (with your correct thank you page URL):

<input name="return" type="hidden" value="http://www.site.com/paypal-thanks.php?utm_nooverride=1" />

8. Finally you will need to modify your thank you page to grab the PayPal data being transfered using either the POST of GET methods (you will have to talk to your web developer or IT person if you are not familiar with the coding of your site).

Basically, you will need the Google Analytics ecommerce tracking code to automatically (or dynamically) grab the correct values and place them in the code. You will be able to get total price, tax, shipping, transaction id, item name, quantity, etc.

Example Google Analytics Ecommerce Tracking Code:

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-XXXXX-1");
pageTracker._trackPageview();
pageTracker._addTrans(
"6NB836968U296223E", // Order ID
"", // Affiliation
"20.00", // Total
"2.00", // Tax
"0.0", // Shipping
"", // City
"", // State
"" // Country
);
pageTracker._addItem(
"6NB836968U296223E", // Order ID
"ProductId123", // SKU
"Green T-shirt", // Product Name 
"T-Shirts", // Category
"20.0", // Price
"1" // Quantity
);
pageTracker._trackTrans();
} catch(err) {}
</script>

For Google AdWords conversion tracking you simply need to grab the total value and pass that into the conversion script as the value.

Example Google AdWords Conversion Tracking Code:

<script type="text/javascript">
<!--
var google_conversion_id = 12345678;
var google_conversion_language = "en";
var google_conversion_format = "2";
var google_conversion_color = "ffffff";
var google_conversion_label = "U10bCNfstvhghO6gM";
var google_conversion_value = 0;
if (20) {
  google_conversion_value = 20;
}
//-->
</script>
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/12345678/?value=20&label=U10bCNfstvhghO6gM&guid=ON&script=0"/>
</div>
</noscript>

Read about Google Analytics ecommerce tracking

Read about Google AdWords conversion tracking

Finally, we strongly recommend that you test everything out using the PayPal Sandbox.


If you have any questions please feel free to contact us directly and if you are located in Australia check out our Google Seminars for Success for the best Google Analytics training available!

Thanks to ROI Revolution for inspiring this post who originally discussed Google Analytics and PayPal back in 2007.

Labels: , ,

Share

Posted on Tuesday, February 2, 2010

8 Comments:

Blogger Omar Ead said...

GREAT article! Thats all i can say...

February 21, 2010 3:07 AM  
Blogger Jeremy said...

Wonderful! Thank you for posting this.

March 5, 2010 3:15 AM  
Anonymous Anonymous said...

Can you use this information for "add to cart" buttons or simply "buy now" buttons?

Rick

March 9, 2010 10:09 AM  
Blogger Benjamin Mangold said...

Hi Rick,

Thanks for the question.

It shouldn't be a problem. Try adding the code to your "add to cart" button.

If you have any problems feel free to get in touch (www.mangoldsengers.com/contact-us).

Regards,
Benjamin Mangold

March 9, 2010 1:58 PM  
Anonymous Anonymous said...

The e-commerce tracking code is working fine, however all the data comes as referrer (Paypal). Is there a way where i can actually track and separate paid and non paid data or organic and non organic data. Any help would be grateful.

March 9, 2010 8:23 PM  
Blogger Benjamin Mangold said...

Hi Anonymous,

It sounds like you haven't added ?utm_nooverride=1 to the end of your thank you page URL.

Ensure you have completed step 7 in the post.

Regards,
Benjamin Mangold

March 10, 2010 8:03 AM  
Anonymous Anonymous said...

Hi Benjamin,

Thanks for the quick response.

In the form variable do we need to include the return URL as we have mentioned it in the paypal account settings which is in the following format - http://www.yoursite.com/thankyou.html?utm_nooverride=1.

Will this help us to get traffic data i.e. direct or organic or paid and not only as referral traffic.

March 10, 2010 5:57 PM  
Blogger Benjamin Mangold said...

I believe that should do the trick.

basically adding ?utm_nooverride=1 will ensure the credit for the conversion goes to the original source/medium for the visitor (rather than being overwritten by PayPal as a referral).

Let me know how you go!

Regards,
Benjamin

March 10, 2010 7:42 PM  

Post a Comment

Links to this post:

Create a Link

Mangold Sengers provides Google Analytics consulting, Google Analytics onsite training and Google Analytics online training. Contact us to discuss your needs.