Saturday, 16 June 2012

How to Integrate Ecommerce Tracking in Analytics

General Process

The basic process for tracking ecommerce using Google Analytics can best be described by summarizing the three methods required for tracking ecommerce transactions on your site. These methods are described in the order in which you should invoke them in your shopping cart or ecommerce software.
  1. Create a transaction object.
    Use the _addTrans() method to intialize a transaction object. The transaction object stores all the related information about a single transaction, such as the order ID, shipping charges, and billing address. The information in the transaction object is associated with its items by means of the order IDs for the transaction and all items, which should be the same ID.
  2. Add items to the transaction.
    The _addItem() method tracks information about each individual item in the user's shopping cart and associates the item with each transaction via the orderId field. This method tracks the details about a particular item, such as SKU, price, category, and quantity.
  3. Submit the transaction to the Analytics servers.
    The _trackTrans() method confirms that a purchase has occurred, and all data that has been built up in the transaction object is finalized as a transaction.
There are many ways that this information can be retrieved from the ecommerce engine. Some ecommerce engines write the purchase information to a hidden form that you can use, others keep the information in a database that you can retrieve, and others store the information in a cookie. Some of the more popular ecommerce engines that recognize Google Analytics provide their own modules to simplify order tracking for Analytics.

Guidelines

Keep in mind the following when implementing ecommerce tracking.
  • The SKU code is a required parameter for every item that is added to the transaction. 
    If a transaction contains multiple items and the SKU is not supplied for every item, a GIF request is sent only for the last item added to the transaction for which a SKU is provided. In addition, if your inventory has different items with the same SKU, and a visitor purchases both of them, you will receive data for only the most recently added. For this reason, you should make sure that each item you offer has a unique SKU.
  • The argument list for _addTrans() and _addItem() is matched by position. 
    While not all arguments are required, you should supply an empty placeholder for unspecified arguments to avoid errors. For example, you would add an item containing only order ID, sku, price, and quantity like this:
    _addItem("54321", "12345", "", "", "55.95", "1");
  • The values for the price and total parameters do not respect any currency formatting. 
    For both parameters, the first instance of either a comma or a period indicates a fractional value. So, for example, if you provide 1,996.00 as the value for the totalparameter, it is recorded as 1.996, not as $1,996.00. Because the value is not affiliated with any currency, your ecommerce software must handle any currency conversion before you pass the data to Analytics.
  • If you are implementing ecommerce tracking and using a 3rd-party shopping cart, you will likely need to configure cross-domain tracking as well. 
    See the section on "Cross Domain Tracking" for details.
  • While not strictly required, it is a good idea to call _trackPageview() on your receipt page if you want to associate that particular page with the transaction data.

Complete Example

The following example illustrates a sample configuration of ecommerce tracking on a receipt page using all three methods. The use of _trackPageview() associates the transaction with the page entitled Receipt for your clothing purchase from Acme Clothing.

3 comments:

  1. warm Greeting




    Have you been thinking about the power sources and the tiles whom use blocks
    I wanted to thank you for this great read!! I definitely enjoyed every little bit of it and I have you bookmarked to check out the new stuff you post.





    Single Phase Motor

    ReplyDelete
  2. warm Greeting


    These kind of post are always inspiring and I prefer to read quality content so
    I happy to find many good point here in the post, writing is simply great, thank you for the blog.


    vacuum pumps






    vacuum pumps

    ReplyDelete
  3. This is my first time i visit here and I found so many interesting stuff in your blog especially it's discussion, thank you. 먹튀보증업체

    ReplyDelete