Posts

MoreMetrics imports additional Social Media metrics into Google Analytics

 * The service MoreMetrics has been discontinued * 

MoreMetrics is a new free service provided by the Italian startup Bryo to help you importing some core Social Media metrics like Facebook fans or Twitter followers into any Google Analytics property.

Wouldn’t be nice to have Facebook Page Fans stats in Google Analytics? Tired of checking your KPIs on different sites? Do you love Google Analytics as much as we do? Let’s give MoreMetrics a try.

At the moment of launch there are the following options: Facebook Likes/Fans, Twitter Followers and Youtube Views/Subscribers. MailChimp is expected soon.

more metrics options

MoreMetrics options available (June 2014)

Once such data is imported into your GA, you can then create a Widget in a custom GA Dashboard to show a timeline of your SM trends.

Here is a step-by-step guide:

  1. Click on Dashboards, choose a dashboard and click on Add Widget.
  2. Give a Widget title matching the type of SM metric, for example “Facebook fans”
  3. Choose Standard/Timeline
  4. Choose “Event Value” in Graph the following metric over time
  5. Filters using the following three conditions:
    a. Only show Event Category Exactly matching MoreMetrics
    b. Only show Event Action Exactly matching the type of metric you want to show (e.g. FB Fans)
    c. Only show Event Label Exactly matching the [Event Label]
  6. Save

Some additional notes:

  • normally such metrics are not available in Google Analytics, not even in the Acquisition/Social report.
  • data are sent once a day therefore data will be available in about 24 hours
  • Universal Analytics is needed since the tool uses Measurement Protocol
  • Event value is the sum of all likes (or followed) day by day therefore you need to look at the daily value, not its aggregate: you need a dashboard widget to explore such data into Google Analytics

Update – some examples of GA dashboard widgets built through MoreMetrics:

more-metrics-google-analytics-social-media-facebook-likes-twitter-followers

Timeline and daily amount

 

more-metrics-google-analytics-social-media-facebook-fans-twitter-stats

A comparison between Facebook and Twitter

Try MoreMetrics now.

periodic table of google analytics

Google Analytics under a chemical perspective: the periodic table (free pdf download)

Can periodic tables be considered infographics? Whatever your answer is, what I am going to present here reminds me of the SEO periodic table published some time ago (and constantly updated).
It is an useful overview that can help beginners to spot whatever has not been considered into their work/analysis/knowledge. 
Have a look at the elements of such an interesting visual guide about Google Analytics main features seen from a ‘chemical’ perspective. It has been made and published by the certified GA expert Jeff Sauer @ Jeffalytics.
GA elements have been splitted into four main categories: Product, Metrics, Reports, and Features.
Are you aware of all its elements? Anything missing?

Little update – On 20th Feb Google Analytics has  redesigned its UI again. Accounts are now listed on a dropdown menu placed in the top right corner.

Subdomain

Tidy up your subdomain and multidomain web metrics with Google Tag Manager

Subdomain

SITUATION Let’s suppose that you have two sites to track, a main site and its subdomain

  • www.mysite.xyz
  • thirdlevel.mysite.xyz (for example it can be a specific product minisite or an ecommerce platform, a campaign landing page, etc.)

OBJECTIVE You want to monitor both all visits under one main Google Analytics profile (now called view) and also each single site separately. So you are planning to have at least three GA views.

PROCEDURE A standard way to distinguish pages after multidomain tracking can be made through a view where the hostname is added to the URI: this way pages will be distinguished by their hostname (normally absent on GA) as follows:

  • www.mysite.xyz/index.php
  • thirdlevel.mysite.xyz/index.php
  • etc…

Here is an alternative approach through Google Tag Manager:

1. Create a GTM container for the whole web property

2. On the container create two different GATC tags, each bringing data to the same GA property ID (UA-xxxxxxxxx-x). You can call GATC-main and GATC-third-level (you can use spaces if you like)

3. Mind the Rules! Each GATC tag need to have a Rule that activate it only when the visitor is on the relative site. For example, GATC-third-level tag will have the following rule:

GTM Rule

The Rule fire the tag only when the visitor is on the thirdlevel domain

4. Now just one more step – the most important – add a virtual page to GATC-third-level:

4.1 Before doing that create a Macro called path (or any other name) to collect URL / Path

GTM URL Path Macro

Add a URL Path Macro on GTM

4.2 Then add it to the Virtual Page Path

GA virtual page path gtm

Collect subdomain metrics under a virtual folder on GA through GTM

PLEASE NOTE – If you don’t follow this step, your pageviews will merge together when having the same name (e.g. index.php pageviews from the main domain will be summed up to index.php pageviews from the subdomain). You can still create separate profiles (views) for each site using a filter that distinguish traffic to the hostname (e.g. mysite vs thirdlevel.mysite) but you will not be able to have the whole view under one profile (mysite + thirdlevel.mysite but differentiated with a virtual folder).

5. change the Rule TO GATC-main tag in order to activate it only when the visitor is on your main domain (not the third-level); no need to add Virtual Page Path to GATC-main tag.

6. Now let’s move from Tag Manager to Analytics and add two more Views to your web property. The default view will collect all metrics (main domain and third-level) whilst two more will be for each site separately.

6.1 You just have to create a new view, e.g. “Main site only” and Filter out all visits that starts with subfolder “/yoursiteonthirdlevel/”

6.2 For the other view “Third-level only” instead the FIlter has to include only subfolder starting with “/yoursiteonthirdlevel/” as shown above:

filter-subdomain

Apply a filter to your subdomain GA View

Done!

PROCEDURE FOR MULTIDOMAIN TRACKING The same procedure is valid also for multidomain tracking

  • mysite1.xyz
  • mysite2.xyz
  • subdomain.myxite2.xyz
  • etc.

CROSSDOMAIN Don’t forget to add also crossdomain tracking following the procedure suggested by Google to let cookies move across all your funnel. If you don’t take this step, you will not be able to measure campaign performance attributing value to each digital marketing channel. Good luck!

Google Tag Manager

Event Tracking Automation for Google Tag Manager: downloads, outbound links, email, podcasts

Update: with GTM v2 many things changed. You can have a look at a comprehensive article by Simo Ahava on how to setup event tracking on Google Tag Manager.


Google Tag Manager

Are you using Google Tag Manager? Great. There’s a way to automate the process of attributing GA Events to ALL your outbound links, downloads, email addresses, even podcasts and phone numbers with no effort, no further scripting needed on your code.

Here I will explain how to do it. A huge credit goes to Ryan @ Blastam that not long ago has written this interesting article with guidelines to automate the process on Google Analytics.

Step 0: GTM IN PLACE + JQUERY!

Open a GTM account and install the code immediately after the opening <body> tag of your website (just in case…)

Be sure to have jQuery JavaScript library working on your site (most CMS already have it, check HTML if you are not sure, it does not have to be the last version).

If jQuery is not installed… don’t worry, we can still do it (see Step 3).

 

Step 1: RULES

Create the general All Pages rule if not already present

url matches RegEx .*

Create another rule that I call Activate Outbound

event equals outbound

Add a rule to tell when GTM has to flash a Tag

Add a rule to tell when GTM has to flash a Tag

Step 2: MACROS

Create the following three  JavaScript Variable:

Name: CategoryGlobal Variable Name: cat
Name: Action; Global Variable Name: act
Name: Label; Global Variable Name: lab

Step 3: TAGS

Create two tags, one for the event tracking and another one for the magic script

Event tracking will be as follow:

GA Event Tracking on Google Tag Manager

GA Event Tracking on Google Tag Manager

(remember to add your GA account code)

The Firing Rule will be Activate Outbound (the one set in Step 1)

Now let’s add the following Script on a new Custom HTML Tag

ONLY if the jQuery library is not on loaded on your site add the following line BEFORE the main code:

<script src=”//code.jquery.com/jquery-1.7.2.js”></script>

If jQuery was already present on your pages then ignore the above code and proceed just adding what follows:

<script type="text/javascript">
if (typeof jQuery != 'undefined') {
 jQuery(document).ready(function($) {
 var filetypes = /.(zip|exe|dmg|pdf|doc.*|xls.*|ppt.*|mp3|txt|rar|wma|mov|avi|wmv|flv|wav)$/i;
 var baseHref = '';
 if (jQuery('base').attr('href') != undefined) baseHref = jQuery('base').attr('href');

 jQuery('a').on('click', function(event) {
 var el = jQuery(this);
 var track = true;
 var href = (typeof(el.attr('href')) != 'undefined' ) ? el.attr('href') :"";
 var isThisDomain = href.match(document.domain.split('.').reverse()[1] + '.' + document.domain.split('.').reverse()[0]);
 if (!href.match(/^javascript:/i)) {
 var elEv = []; elEv.value=0, elEv.non_i=false;
 if (href.match(/^mailto:/i)) {
 cat = "email";
 act = "click";
 lab = href.replace(/^mailto:/i, '');
 elEv.loc = href;
 }
 else if (href.match(filetypes)) {
 var extension = (/[.]/.exec(href)) ? /[^.]+$/.exec(href) : undefined;
 cat = "download";
 act = "click-" + extension[0];
 lab = href.replace(/ /g,"-");
 elEv.loc = baseHref + href;
 }
 else if (href.match(/^https?:/i) && !isThisDomain) {
 cat = "outbound";
 act = "click";
 lab = href.replace(/^https?:///i, '');
 elEv.non_i = true;
 elEv.loc = href;
 }
 else if (href.match(/^tel:/i)) {
 cat = "telephone";
 act = "click";
 lab = href.replace(/^tel:/i, '');
 elEv.loc = href;
 }
 else track = false;

 if (track) {
 dataLayer.push({'event':'trackoutbound'});

 if ( el.attr('target') == undefined || el.attr('target').toLowerCase() != '_blank') {
 setTimeout(function() { location.href = elEv.loc; }, 400);
 return false;
 }
 }
 }
 });
 });
}
</script>
 

Step 4: SAVE AND PUBLISH!

Always save after each step taken and at the end Save a new container version and Publish – you can even preview and debug it to check if all tags are firing on the right place (or after the right event).

Is it working?

To check the implementation just go on your website, click on an external link or email or pdf download and at the same time on another browser window check your Google Analytics Real-Time reports on the Events section. You should see, after a few seconds, your event correctly appearing. Later, Events will be properly recorded also under GA Content section and you can create any kind of report/advanced segment/goal with them.

 

Monitor real-time events on GA

Monitor real-time events on GA

Important: to make it work you need jQuery library to be loaded before the above mentioned scripts. So if you don’t have it, download, load on your server and call in the header section. Or you can still avoid this implementation and manually tag each single link/download the old way.

A note: you can change name of variables, rules, tags and macro, but consider to adapt the whole implementation accordingly.

Why it is useful

For example you can measure how many downloads of a pdf enrolment form or clicks to an external website that does not have multi-domain tracking.

The good point of such implementation is that you don’t need to hardcode anything on your pages/posts: it magically does the job for you. It’s been tested on WordPress but it should work on all CMS.

Find out more about GTM…

Update: October 2013

New system to automate tracking all links and form buttons through GTM has been launched. In my view it’s a bit more complex than the above solution, and it needs more work to distinguish between different elements (e.g. a pdf from an outbound link), but it’s the new standard. Detailed post by Lunametrics here or by Justin Cutroni here.

Import Google Analytics conversion goals into AdWords

Google Analytics conversion goals now available on AdWords

Import Google Analytics conversion goals into AdWords

Google Analytics conversion goals now available on AdWords

In a post published on 29 April 2013, Google announced that

Starting in mid June, you’ll be able to import your Google Analytics goals into AdWords shortly after they’re configured. As usual, data for those goals will be available about two days later.

Google suggests that it’s better to track Goals through Analytics rather than AdWords for the following reasons:

Google Analytics Conversion Goals

AdWords Conversion Tracking

  • More complex, but provides more information about where your clicks are coming from.
  • Ideal if you’re interested in the entire flow of customers through your site, not just conversions.
  • Can include conversions from non-AdWords sources, so it’s a great comparison tool.
  • Less complex, but provides less information about where your clicks are coming from.
  • Ideal if you’re interested only in conversions.
  • Tracks conversions only from AdWords sources.

GA Goals will still be uniquely manageable from GA Admin. There can be discrepancies between the two, as Google explains here together with everything needed to let GA goals appear under your AdWords campaigns conversions list.

You can use both, they will not interfere each other so no need to change configuration.

Google Analytics custom filters to tidy up your metrics: how to split up social media from referrals

Note: The Google URL Builder has been updated therefore I advice to have a look to this interesting guide written by Prateek Agarwal.


This post is about adding a custom filter to refine your Medium report on Google Analytics.

I am not going to talk about the “direct / none” aggregate that unfortunately include also visits that are not direct accesses like a user typing your URL or a bookmark, but any other session missing server data information. There is a wide literature about, but the problem remains unsolved.

Let’s talk about another medium category, referrals, that includes also visits coming from social media. Why not taking social media visits away from referrals?

Custom filters are a very useful tool for aggregating or adjusting some metrics before they appear on reports. In this post I’ll show you how to use custom filters to assign all visits coming from social media sources to a Medium category called “social“. Just follow this step:

Filter to separate social sources from referral on GA

Filter to separate social sources from referral on GA

The source for visits from FB mobile is “m.facebook.com” whilst Twitter is “t.co”. You can add all social media together by using Regular Expressions (RegEx). In this case you might need to do some testing. A RegEx for social filter can be this one:

(facebook.com|m.facebook.com|facebook|vk|vk.com|t.co|twitter|hootsuite|tweetdeck|plus.url.google.com|youtube|linkedin|reddit|digg|delicious|stumbleupon|myspace|flickr|popurls|friendfeed)

Remember to add also “field b = referral” because you don’t want to tas as social whatever is tagged not referral, for example a CPC campaign run through Facebook or LinkedIn.

After applying the filter don’t be impatient with Real-Time stats as custom filters might take a short while to apply properly.

A suggestion to speed up your RegEx learning process is to create a test profile (never play with the main profile!) and apply different filters there, assigning categories called social1, social2, etc. for different RegEx’s so you will reckon which is working and which is not by looking at the variable appearing on reports few hours after applying the filters.

Let’s go back to my proposals. Here’re the filters applied taken:

  1. visits from social media whose source is “facebook”, “twitter” or “google plus” have been all automatically categorised as “referrals” and will now be categorised as “social”
  2. using another custom filter, all medium assigned to “rss” will be renamed “feed” in order to join another existing category:  there is no need to have two different categories of the same type (distinction will be still available under Sources)

Here is what I had before (15/05/2013)

Before the filter...

Before the filter: no social!

and this is what I had after applying the filter (19/05/2013)

...after the filter

…after the filter, social appears!

Observations:

  • visits from social media are taken off from “referral” and placed into a new category called “social” that will also include all future social media activity tagged through the URL builder to be taken away from the “(none)”
  • RSS disappear and joins “feed” for more clarity
  • the site does not have benefit of any paid advertising source
  • direct/none stable (14% / 15%)
  • organic stable (11%)

Filters above apply only to Campaign Medium, but what about organising also Sources by aggregating at least the most relevant URL’s under just few categories? For example you can join www.facebook.com and m.facebook.com under just “facebook”.

Again, to be precise, you can use RegEx but mind that if you select all domains that contain the word “facebook” or “twitter” you might end up in adding sites that are not facebook and still link to you. For example think of the service “twitterfeed” which is not Twitter. My suggestion here is to narrow aggregation just to the most relevant categories: if you’re embracing let’s say 95% of your visits that could be enough, isn’t it?

A further action: tag your incoming links with the URL builder whenever possible

If you want to reduce the amount of “(none)” among your media, start tagging all your social media posting that links to your website using the URL builder. In this case, I suggest to keep “social” as Campaign Medium for non paid (e.g. a Tweet or a Facebook post on wall or tab) and “cpc” or “paid” for paid (e.g. Facebook advertising) aligning it to other paid sources if any (e.g. AdWords).

You can use URL shorteners, but be sure that they keep tags or your link end up in the meaningless “direct/none” category. To manage non-paid incoming links from your own social sources Lunametrics has built a simple but still useful Google spreadsheet, using the shortener bit.ly

Be consistent with tags

If many people have access to your social media stream and run digital campaigns you should do some efforts to align tagging policies otherwise you might end up in a mess on GA reports. I’ve seen reports including many similar tags all together such as CPC, cpc, PPC, paid, ads, advertising, social, socialmedia, facebook, fb, etc.

Why separating social from referrals?

Ok they are all referrals, but usually visits coming from social media come from piece of content that links to your website (e.g. a post on Facebook wall). I say ‘usually’ because such links might be also placed on social media areas such as notes, tabs, twitter profile description, about sections, etc. together with other links, but such places are less relevant than the mainstream. Other referrals (traditional, let’s say), most of the times are link placed on websites (e.g. blogs), either because they like you/find your content relevant/worth mentioning or because of your link building activity. I’m not engaging in a debate if it’s better to have “social signals” or referrals from a pure SEO perspective during the Penguin era. Let’s say that it’s important to be noticed both by search engines and (yes, apparently we’re still humans) real people, but this post helps you to distinguish among digital type of  place where you’ve been spotted on: making a parallel with geography, if the source is the name of the place, the medium is the type of place.

A filter also for email

Usually newsletters/DEM are tagged with “email” medium. Why not doing the same with a custom filter that attributes “email” medium to all sources that contain the word “mail”? It can be mail.yahoo.com, gmail.com, etc. You might also add other relevant email providers like outlook, hotmail, etc. with a RegEx like (mail|outlook|hotmail|etc….). Again, if you want to preserve other medium like cpc, add a field b=referral – this way you will be pretty sure that all links to your site placed on email content will be tagged with “email” medium instead of referral.

Remember: it’s never too late to tidy your reports and to adopt a consistent and constant “tagging policy”.

 

How to track each Google country search engine on Universal Analytics

Google Universal Analytics

Have you tested the Universal Analytics by Google? If you haven’t (yet) just create a new free GA profile and you will now have the option to choose between the old and the new route – which not surprisingly is still in beta.

You will not see big differences on the User Interface, but some changes are in the Admin section and are related to the wider flexibility in terms of customisation that such new system allows, including multi-platform tracking. I am not going to list the new features, you can find them here and you can even watch a brief showcasing video at the end of this post.

I just want to focus on an interesting finding that happened by chance (let’s say so…) Among the other things that differentiate it from “traditional” GA, you can set up as much search engines as you want. There’s already  a list with the main search engine available – it obviously includes also all Google search engines and they will appear, as usual, under one single voice “google”.

Let’s say that your friend has just launched the new Google enemy (!) and you want to treat it as organic rather than a classic referral: you just have to add it using the following simple form located on:

Admin – Account – Tracking Info – Organic Search sources – Add Search Engine

How to add a search engine on Universal Analytics

How to add a search engine on Universal Analytics

Now, despite Google is already in the predefined UA list, why not configuring a few single country search engines, just to test? Of course, your site should be indexed there and you should run some test (and wait a bit for statistics to show up in reports). Don’t be impatient: just sow your seeds as follows and wait…

 

Track each single Google search engine on UA

Tracking each single Google search engine on UA

Now that you have set up all accounts and waited for data on the Sources reports, have a look at this!

Metrics divided by country
What you find on Universal Analytics: not just one single “google” anymore

Interesting, isn’t it?

Now, why don’t you get a bit deeper trying to track also visits from single Google bits like Images or Maps? I haven’t tested it fully yet, but you can try either using a domain like images.google.com or just google.com and another word on the optional path field, just like this:

How to set up Google country engines on Universal Analytics

How to set up Google maps and images engines on Universal Analytics

This system is still far from tracking local searches as it should, but if you will be able to distinguish between pure organic and maps, you can certainly enrich your reports with meaningful metrics. And what about finding out data only for images? Such data are highly relevant for photobloggers, but also for news/magazines/blogzines/etc.

Unfortunately you cannot upload all Google “search products” in bulk so if your plan is to add them all… good luck! Differently, why not adding just a few relevant for your business? All the others will still appear under the same old “google” category so you are not going to miss anything.

A solution for Not-Provided keywords …or at least a little cure?

A final consideration to add concerns the sadly famous “not provided” keywords affair: I’ve added two different GA tracking codes onto the same site – ok it’s not the best practice suggested but this way it still works and allows checking differences between two different ways of measuring things.

Starting from October 2011, Google has increased encrypting search queries so you end up by not knowing anymore about 30% (or more) of search queries that brought visits to your site. Official reason is privacy, such as protecting users logged in with their Google account – it might be for privacy but also for a future possible strategy to sell relevant, precious information for SEO and marketing people.
There are some solutions to understand what’s hidden behind the “not provided” variable, here’s a popular hack proposed by Dan Baker on eConsultancy. I’ve tested it, it’s very helpful but unfortunately not resolutive.

In my recent test, the “old” GA shows about 30% of not-provided keywords (it’s more or less the recent standard that wiped the smile off SEO-people’s faces), whilst (apparently good news) UA shows just 5% of not-provided on average. On a website, for a local search engine set up on the admin panel as shown above, I still haven’t seen any “not-provided” kw! Is that just my (wrong) impression or a subtle Google strategy to move people from the “old” GA to UA?

Update: that was my wrong impression: few data don’t bring good assumptions. In fact the problem of not-provided kw’s remains unsolved (it would have been too easy/revolutionary)

Now, if you (still) haven’t heard of UA, this video gives an idea of its capabilities.

Or if you fancy caffeine…