Track Your Onsite Banners and Buttons Like a Pro (Using Google Analytics)


Tracking the banner promotions and button calls to action on your own website properties is extremely easy. Read on if you want to know how to generate tracking tags, add them to your buttons and banners, and watch the clicks, impressions and conversions mount as your visitors engage with them.

In this brief tutorial, I am going to show you how I tagged 2 of our homepage buttons and how I was able to view the clicks and views these buttons generated in just a few hours, right in my Google Analytics reports. Really exciting!

1. Why Track the Buttons and Banners on Your Website?

If you look at your website, you will see that you have numerous buttons, calls to action and banners. Do you know which one is the best performing one? Which asset is bringing you the best conversions?

You want to track how your assets are performing, so that you can replicate your successes and drive even better results in a cost-effective way.

You also want to see if your offer and promotion optimization efforts work – if people click on your optimized assets, if they engage, and – in case you are running an eCommerce site – if these assets generate greater conversions and even revenue.

2. How to Track Internal Promotions on Your Web Properties?

If you are looking to generate analytics insights regarding your button and banner performance across your owned sites, here is your quick recipe for success – the three steps are described in detail further down in this blog.

a. Tag the link of your banner/button with the special Promo tags that are available to you

You will want to do that using the Promo tags listed below, which track performance in Google Analytics in just a few steps.

b. Make sue you have access to Internal Promotions via the eCommerce suite in Google Analytics so you can set up the tracking and reporting

Although Google Analytics is offering the Internal Promotions as part of their eCommerce suite, you don’t need to have an eCommerce site to be able to track your promotional buttons and banners. And you don’t have to pay extra to have this feature enabled.

c. Once set, watch how many views, clicks, conversions and even revenue your banners and buttons are generating

Whether running an eCommerce or a lead generation site, Internal promotions are an opportunity for you to check whether your visitors engage with the creative assets on your website, which calls to action are the most effective ones, and more. Especially with the latest features offered by Google Analytics, your options for invaluable visitor insights are virtually unlimited.

Tracking internal campaigns is made possible by adding the following tags at the end of your banner or button links:

  1. promo_name=enter your banner name
  2. promo_id=enter your banner id
  3. promo_creative=enter your creative type
  4. promo_position=enter the position of your banner

Please note that the above tags are used with the GA Global Tracking Tag –  Gtag.js tracking setup.

According to Google: If you have configured Google Analytics in gtag.js and you have enhanced ecommerce enabled in Google Analytics, you can use gtag.js to send impression data, product data, promotion data, and action data to Google Analytics.

If you are using the universal analytics.js tracking setup, then the values are different.

Find out how you can set up your banner tagging and tracking when using the enhanced ecommerce plugin here.

A word of caution:)  – internal campaign tagging is not to be confused with external campaign tagging, which always employs the use of UTM tags. If you are unsure about the difference between the two, please check out this quick and easy-peasy presentation.

3. How to actually add these tags to your links?

Super easy. Let me show you how I added the above internal tags to the 2 buttons on the top banner of’s home page.

  • Here are the buttons that I decided to track – I wanted to see if people were clicking on them:



  • Here is a short animated gif that shows you how, using the CampaignTrackly app, I generated my tagged links in no time and added them to our website:

How to Track Internal Campaigns

  • Once your links are ready, make sure that you replace your links with these tracking links that have the right internal promo tags.

4. Where do you find the relevant reports to find out if your buttons are performing?

In your Google Analytics Reports, of course. Just go to Home>Conversions>eCommerce>Marketing>Internal Promotions – as you will see from the image below, the Create New Account button gets clicked all the time, whereas the brochure button did not get any clicks in the last couple of ours. This tells me that I probably need to change my offering or remove it altogether:

Internal Promotion Button Tracking Report


5. Very Important – before you start tagging your banners and buttons, there are a few must-have prerequisites:

  1. You need to make sure that you do enable your Enhanced eCommerce feature. Even if you don’t use eCommerce, you need to set it up to be able to track internal campaigns. This step requires that you have admin access – If you don’t, reach out to your Google Analyst or account owner and task hem to set up this functionality. See how to do that:


2. You will need to tell your Google Analytics suite to track these internal variables, otherwise, nothing will happen in your reports dashboard. There are several ways to “tell” GA to do that – it very much depends on the tracking technique you are using.

  • You can do that via Google Tag Manager (fast, efficient, recommended) – here is a quick example that I found very helpful.
  • You can also manually add your values to your tracking code – like I did, just so I am able to quickly set up this example for you (I don’t really recommend this option if you juggle many campaigns on your website.)
  • You can use the enhanced eCommerce tracker is you are using the analytics.js tracking script for your site. If you are unsure what method of tracking yoru site is using, please speak with your analyst – but here is a quick how-to if you want to give it a try.
  • Here is my code – which is boring, haha, unless you are like me and enjoy tinkering with stuff like this:) and you can happily skip if you have an analytics specialist to support you:

The Global Tracking Tag

!– Global site tag (gtag.js) – Google Analytics –>
<script src=””></script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag(‘js’, new Date());

gtag(‘config’, ‘UA-4EnterYourAccountNumbers’ , {
‘linker’: {
‘domains’: [‘EnterCrosslinkingDomainifYouHaveOne’]

Adding underneath it (before the </script> closing bracket this sample code fir my 2 buttons:

// Identify the promotion that was clicked.
gtag(‘event’, ‘view_promotion’, {
“promotions”: [
“id”: “subscriptions”,
“name”: “create-new-account”,
“creative_name” : “button”,
“creative_slot” : “homepage-top-banner”
“id”: “features”,
“name”: “view-35-features”,
“creative_name” : “button2”,
“creative_slot” : “top-banner”
// Send the promo_click action with an event.
gtag(‘event’, ‘select_content’, {
“promotions”: [
“id”: “subscriptions”,
“name”: “create-new-account”
{ “id”: “features”,
“name”: “view-35-features”}

6. Note that if you are using the Enhanced eCommerce tracker for Analytics.js, your tags will be slightly different. And your code will be different as well. 

  • // Identify the promotion that was clicked.
    ga(‘ec:addPromo’, {
    “id”: “subscriptions”,
    “name”: “create-new-account”,
    “creative” : “button”,
    “position” : “homepage-top-banner”
    “id”: “features”,
    name”: “view-35-features”,
    “creative” : “button2”,
    “position” : “top-banner”
    // Send the promo_click action with an event.
    ga(‘ec:setAction’, ‘promo_click’);
    ga(‘send’, ‘event’, ‘Internal Promotions’, ‘click’, ‘create-new-account’);
    ga(‘send’, ‘event’, ‘Internal Promotions’, ‘click’, ‘view-35-features’);

7. In Conclusion

As you saw from the example above, you need to track your internal promotions and campaigns if you want to understand if they are engaging or not. Many a time, we depend on IT to hard-code some of our banners and links, but in my opinion, owning your taggs and links is the best, fastest and most flexible way to swiftly and effectively track your internal promotions.

It is a necessary part of a marketer’s work and can be extremely valuable in identifying what your audiences need so that you can cater to them better. You can add your tags manually using an Excel spreadsheet or leverage a product like CampaignTrackly, that will enable you to automate the whole process and make it error- and typo-proof.

Any questions, catch me on Quora or email me at

Need to start tagging links, but concerned about the learning curve? Try our easy-peasy tracking app. No codes, minimal learning, no manual work.
Milena Mitova, MBA

Dynamic, data-driven senior marketing professional with global expertise in B2B sales revenues, go-to-market strategies and market growth. Has worked for Shell, Nestle, Honeywell, ARM, Equinix, FalconStor & other exciting organizations. Co-founder of CampaignTrackly. Blogger, technologist, & automation expert. In numbers: 256 digital projects. 6 awards. 15 professional certifications, including:

  • Google Analytics and Google eCommerce Analytics Certifications;
  • Social Media & Hootsuite Certifications
  • Hubspot Inbound Marketing, MarketMotive SEO, PPC, Optimization Certifications & more.
Have analytics or ROI questions? Catch me on Quora or email me directly.