Every online business presence has a goal. These goals (bookings, donations, subscribers, events, or purchases) are the reason for our efforts. But how many of us really track how our goals really perform? In this article, you will find out how to take these business goals and track them on Google Analytics with an ecommerce approach.

Tracking nonecommerce business with a ecommerce approach

This article is not about how to set up goals in Google Analytics, but if you are interested in finding out more about the setup or what there are, then read: Setting up a destination goal funnel in Google Analytics.

The advantage of using an ecommerce approach for non-ecommerce websites is that after the setup is done, you have a basis to develop correct marketing strategies. You will know what channels brings you money, you will know what channels interact with each other and you can adjust your budget to maximise the ROI.

If you’re in the business of selling tickets (planes, concerts, conferences), book medical exams or collect donations, this article concerns you! I will show you a step-by-step guide on where to implement the Enhanced Ecommerce features and I will provide links for each to find out how to implement them.

Let’s say you are Wizz Air. You sell flight tickets and book cars and so on.

Promotion impressions and promotion clicks

Capture promotions impressions and click

Each time Wizz Air displays a banner with some kind of marketing communication that banner can be tracked as a “promotion” in Google Analytics. In Google Analytics, you can see the performance of each banner and make decisions to replace them, change the order or even make them bigger based on the tracking you implement.

The technicalities: implementing via Google Tag Manager or implementing via Google Analytics.

After you implement the tracking and create the tags (for GTM) you will be able to see the data in Google Analytics under Ecommerce > Marketing > Internal Promotions

Track internal promotions

Based on the position, click-thru-rate, and revenue gained for each, Wizz Air can then rearrange banners, eliminate some of them or boost their visibility.

Ecommerce activities (catalogue views, service page views, click on call to actions)

Wizz Air provides multiple sections on the website where you can search for flights. These sections can be mapped as product lists. For WizzAir, the product lists are in the homepage section, timetable section, and maps section.

Product list views

Typically, Google Analytics and Google Tag Manager requests the fields below when sending a product list view (product impressions). I will provide you with a schema that will capture the flight booking particularities but you can use your own business specific examples.

When you click on a red point on the map, the customer can see the flights from a particular city. We will send all the flight information from that city as product impressions.
‘id’: ‘LTN – PRG’,                          // The departure airport code – The arrival airport code
‘name’: ‘London Luton – Prague’,             // City name of departure – City name for arrival
‘category’: ‘Flight’,                        // WizzAir offers flight booking along with car booking, and hotel booking
‘brand’: ‘WizzAir’,                          // If this would be a tourism agency instead of WizzAir will be other company.
‘variant’: ‘010117’,                      // If the page has the option to add the date we will add the date as a MMDDYY

When the search button is present, you send the action “click”.

ga(‘ec:setAction’, ‘click’, {                                    // click action.
‘list’: ‘Maps’                                                          // Product list (string).
});

After searching, the client can see the selection page from the product list. For Wizz Air customers, they can search the best price and see the package options.Booking page tracking

In the case of Wizz Air, these pages can be considered the product pages. The usual structure that needs to be sent to Google Analytics and Google Tag Manager is:

‘id’: ‘LTN – PRG’,                                    // The departure airport code – The arrival airport code
‘name’: ‘London Luton – Prague’,          // City name of departure – City name for arrival
‘category’: ‘Flight’,                                 // WizzAir offers flight booking along with car booking, and hotel booking
‘brand’: ‘WizzAir’,                               // If this would be a tourism agency instead of WizzAir will be other company.
‘variant’: ‘010117’,                             // If the page has the option to add the date we will add the date as a MMDDYY

Each time the client changes the day a new detail view should be sent.

Clicking on the price box will trigger an Add to cart action. The usual content of an Add To cart activity is:

‘name’: ‘London Luton – Prague’,    // The departure airport code – The arrival airport code
‘id’: ‘LTN – PRG’,                               // City name of departure – City name for arrival
‘price’: ‘61.99’,                                  // Selected price for the flight
‘brand’: ‘WizzAir’,                          // If this would be a tourism agency instead of WizzAir will be other company.
‘category’: ‘Flight’,                        // WizzAir offers flight booking along with car booking, and hotel booking
‘variant’: ‘010117’,                         //If the page has the option to add the date we will add the date as a MMDDYY
‘quantity’: 1′                                   // Person number
‘dimenstion1’: ‘LTN13432’,           // Flight number
‘dimenstion2’: ‘WizzGO’              // Package option (Basic, Wizz Go, Wizz Plus)

Check out steps and booking

Checkout steps for non-ecommerce websites

In the case of Wizz Air, each “continue” button will send a checkout step to Google Analytics. Sending the checkout steps will provide insights about where the customers drop off and what process steps can be improved. Wizz Air has a 4-steps checkout (choose flight, choose passengers, services, and payment). The final thing to send is the transaction (the booking). The structure and implementation details for Google Analytics and Google Tag Manager are in the links and the fields, in this case, will be:

‘ecommerce’: {
‘purchase’: {
‘actionField’: {
‘id’: ‘T12345’,                                           // Transaction ID. Required for purchases and refunds.
‘affiliation’: ‘booking.com’                    // Affiliation agent,
‘revenue’: ‘35.43’,                                 // Total booking value (incl. tax, airport fees etc)
‘tax’:’4.90′,
‘shipping’: ‘5.99’,                                 //can use this field to capture airport fees or thir party operators fees
‘coupon’: ‘SUMMER_SALE’              //if a discount cupon was used
},
‘products’: [{                                      //if the flight has a return flight then two products will be sent
‘name’: ‘London Luton – Prague’,     // The departure airport code – The arrival airport code
‘id’: ‘LTN – PRG’,                                // City name of departure – City name for arrival
‘price’: ‘61.99’,                                  // Selected price for the flight
‘brand’: ‘WizzAir’,                           // If this would be a tourism agency instead of WizzAir will be other company.
‘category’: ‘Flight’,                         // WizzAir offers flight booking along with car booking, and hotel booking
‘variant’: ‘010117’,                          //If the page has the option to add the date we will add the date as a MMDDYY
‘quantity’: 1′                                   // Person number
‘dimenstion1’: ‘LTN13432’,           // Fligh number
‘dimenstion2’: ‘WizzGO’               // Package option (Basic, Wizz Go, Wizz Plus)
‘coupon’: ‘SUMMER_SALE’         // Optional fields may be omitted or set to empty string.
},
{
‘name’: ‘Prague -London Luton’,    // The departure airport code – The arrival airport code
‘id’: ‘PRG -LTN’,                               // City name of departure – City name for arrival
‘price’: ‘61.99’,                                 // Selected price for the flight
‘brand’: ‘WizzAir’,                           // If this would be a tourism agency instead of WizzAir will be other company.
‘category’: ‘Flight’,                         // WizzAir offers flight booking along with car booking, and hotel booking
‘variant’: ‘150117’,                        //If the page has the option to add the date we will add the date as a MMDDYY
‘quantity’: 1′                                   // Person number
‘dimenstion1’: ‘LTN2143432’,        // Flight number
‘dimenstion2’: ‘WizzGO’             // Package option (Basic, Wizz Go, Wizz Plus)
‘coupon’: ‘SUMMER_SALE’        // Optional fields may be omitted or set to empty string.
}]
}
}

Sending all these steps to Google Analytics about the customer activity, on any kind of website, will provide you with information about return on marketing spends, improve page layout performance, improve conversion rate, find out insights about customer needs and a lot more.

Having the full enhanced ecommerce setup is very powerful and can bring many advantages. You can test the full setup on the Google Analytics demo account.

Have any questions or need some help? Please get in touch or comment below!