Nov 23, 2014

Drawbacks of Using Time Metrics to Measure Blogs

When it comes to blogging, we all know that CONTENT is king. We also understand that SOCIAL interactions and readers ENGAGEMENT play a primary role for making the blog successful.

So far, so good.

But then it's time to analyse data and make decisions...and that's where we often fail.

We usually take a web analytics tool like Google Analytics, install basic tracking code on pages, and analyze the blog like any other website. We look at most common metrics and take them as standard references to evaluate future performance. But we forget about the unique features that differentiate blogs from other digital properties: content consumption and social interactions.

This post will help you understand one of the most misused metrics to measure blogs performance: I am talking about time on page and time on site. Most bloggers don't understand what time metrics actually measure. So, first of all I will try to explain how they are calculated in a typical web analytics tool (it might be different from what you think!).

I will then discuss some of the drawbacks of using time metrics to measure blog performance and finally suggest a couple of more solid KPI's to better measure content engagement.

After reading this post, I am sure you will start looking at time metrics with a bit more critical thinking than before. And perhaps shift your blog analytics focus to other more powerful metrics.

Let's go!

How time metrics are calculated?

Let's clarify here how Google Analytics calculate time on page and session duration:
The time on page for a particular page is calculated by subtracting the initial view time for a particular page, from the initial view time for the subsequent page.
From the above definition we get that, to calculate time on a specific page, it's necessary to have a subsequent page too.

But not always actually.

To get a more accurate measure, Google Analytics also uses the "engagement hits" concept.
An engagement hit is a hit that results from an event that does not have the opt_noninteraction parameter applied. 

Let's provide a 3 simple scenarios to understand calculation.

A Visit with More than One Pageview (and no engagement hits on the last page)

In the case of a multiple pageviews visit without any engagement hits on the last page, then the session duration metric is calculated as follows:

Session duration = Time of the first hit on the last page - time of the first hit on the first page

Here is a visual example of a 3 pageviews visit:

Time Calculation Google Analytics

So, when there is more than one pageview, Google Analytics measure the time between the first hit on the last page (11.10) and the first hit on the first page (11:00) to calculate session duration.

To calculate time on page it's the same process: time of the first hit on the subsecuent page minus time of the first hit on the previous page.

But what about Page 3 which is not followed by any other page (visitor exits the site on page 3)? Here is where we have trouble measuring time. Since there is no pageview after Page 3 (and no engagement hits), Google Analytics can't figure out the time spent on page. The user actually stayed a total of 15 min on Page 3, but Google Analytics can't calculate it. So, time on Page 3 is unknown and will be reported as 0 in Google Analytics reports.

Does it make sense so far? Let's move to second scenario.

A Visit with Only One Pageview (and no engagement hits)

If there is only one page viewed in a visit and no other engagement hit on the same page, then session duration is equal to zero, so time on page. Google Analytics does not find a subsequent page, so it can't figure out how much time the user actually spent on the page. Content reports (for that specific visit) will say "00:00:00".

THIS IS A COMMON SCENARIO FOR BLOGS, where often users land there just to check a speficic post (maybe the latest one published), and leave the blog without visiting other pages.

More on this later.

A Visit with Engagement Hits

In our last scenario, we assume that there is an engagement hit on the last page visited. Then the session duration metric is calculated as follows:

Session duration = Time of the last engagement hit on the last page - time first hit on the first page

Let's rearrange our previous 3 pageviews example with an engagement hit on Page 3:

Time Calculation with Engagement Hit Google Analytics

In this scenario, we can get a more accurate measure of Time on Page 3 as well as of Session Duration, since there is an engagement hit happening at 11.20 AM. Let say for example you have configured an event (with no opt_noninteraction parameter applied) firing when the user scrolls 100% of the page. Google Analytics can take this piece of data and use it to better calculate time metrics.

Got the the logic behind calculation? I hope this makes time metrics interpretation a bit more clearer.

Drawbacks of using time metrics

When comes to measure blogs, it's tempting to use time metrics as main KPI's or even set them as Goals in Google Analytics (e.g. count a Goal when user session reach 120 sec).

But now that we have clarified how time metrics are calculated, you should have no problem understanding their impact on blog analytics. Especially if you decide to configure them as Goals in Google Analytics.

So, what's wrong with using time metrics to measure your blog performance? Below I list which are in my opinion the 4 main drawbacks.

1. The Way they are Calculated (subsequent page rule)

What about those users who just visit one page and leave the site? This is quite a common behaviour for blog readers. They land to your blog to read your latest post (perhaps from an email subscription) and exit from the same page without interacting with any element.

No subsequent page and no engagement hits. One pageview, and time on page unknown (actually 0:00:00). Then what? Did they really spend no time on page or they actually read the post?

Google Analytics can't calculate time on page for a single pageview visit. Neither session duration. And this would also skew average time measures calculated on multiple sessions: my next drawback in this list.

2. They Average Potentially Very Different Values

Google Analytics offer average measures for various metrics, included time. While average values can be useful to understand trends in blog traffic, you should also be aware that any outlying value (good or bad) can badly skew your average time metrics.

I am particularly referring to relying on Avg. Session Duration metric as main KPI to measure your blog performance. Setting Avg. Session Duration as a Goal in Google Analytics, and analyse it at an aggregate level (no segmentation), could lead you to wrong decisions.

Average metrics can be dramatically skewed. However, they could be a good starting point for your analysis, if you find some way to "clean" them first. A good idea could be applying segments to the data in order to eliminate outliers and get more accurate data. For example analysing Avg. Session Duration for each individual traffic source.

3. They should measure engagement but we dont really know if it is good or bad engagement 

We generally consider more time spent on the site/blog as a sign of success. More time = higher visitor engagement.

But time metrics do not actually say anything about engagement!

The user spent more that 10 min on my blog and visited 5 pages. Is it good?? Maybe. Or maybe not. What if the user landed to my site from an organic search and looked all over the blog to find something without success. He wasted 10 min of his time navigating through my site and eventually left it disappointed. Wouldn't be better to call it bad engagement?

With this doubt in mind, I would not rely exclusively on time metrics to measure engagement. So, be cautios of setting time metrics as goals in Google Analytics and base your analysis only on that.

Nevertheless, there are cases where you can plan in advance what is good or bad engagement for you. It depends on your site business model. For support sites for example, you want visitors to find information quickly, then a short visit can be considered successful. On the other hand, if you have an advertising business and sell ad space on your site, you might want visitors to see as many pages as possible since you're paid by impressions.

4. They can be Biased by your Web Analytics Tool Implementation

As I mentioned on the previous section. Google Analytics uses also the concept of "engagement hits" to calculate time. This is certainly a great feature that can make time measurement more accurate in many cases, but it can also biase your data if wrongly applied. 

Depending on whether a particular user interaction (e.g. click to open a submenu) is tracked as an event (and opt_noninteraction applied) or not, time metrics can be dramaticaly biased. User behaviour is actually the same, but data can say two different stories.

Bottom line: make sure you know your implementation and think of potential consequences on metrics before configuring your web analytics tool.

More solid metrics to measure your blog performance

I am not going in detail on this section, since you can find a detailed list of KPI to use for measuring blogs, in my previous post.

To mention a few, you can measure your blog performance with more solid metrics such as:

  • # of subscriptions to your blog
  • # of social actions divided by # of posts published
  • # of comments divided by # of posts published
  • # of downloads (e.g. a post available to download in pdf format)
  • % of scrolling on posts
  • Depth of pages
  • Length of visit
  • Video play (completion rate)

The most important thing is to choose metrics that have a direct connection with your ultimate blog/website objectives. To make sure your metrics are solid enough, try to answer these questions:

> Do the metrics you chose, support your goals?

> Can you take actions on your blog using those metrics?

If your answer is YES, your metrics are solid enough to build a measurement plan from it. The metrics I mentioned in the list above, are good examples of great KPIs for blogs, because they focus on the essential aspects of blogging: content engagement and social interaction. 

In conclusion, you need to be careful and thorough when utilizing time metrics to make decisions. You must be aware of how they are calculated, and which are their limitations when it comes to understand user behaviour. Having clear in mind their limitations, time metrics can still be a good starting point to perform a web analysis. And perhaps, with some advanced segmentation you can get interesting insights.

What's your experience with time metrics? Were you aware of the logic behind their calculation? Do you agree with the drawbacks I discussed on this post?

Feel free to comment, criticize, share it!


Oct 27, 2014

How I Measure Success for my Blog. A Framework using Google Analytics.

If you are serious about blogging, then you must have a measurement plan. No matter if you have just started and have only a dozen of visitors, or you already have a very popular blog whose primary purpose is making revenue from advertising. As long as you have some objectives for your blog, then you must decide what you need to measure.

Why? Because this is the only way to understand your blog performance and whether you are successful or not for your readers (I assume you are not writing only for yourself!).

Developing a measurement plan is the only way to understand whether you are successful or not for your readers.

In this post I am going to draft a measurement plan for MY BLOG and use it as a learning exercise to discuss critical aspects like choosing KPI's, (Key Performance Indicators) and segments to analyse performance. Google Analytics will be my reference platform for implementing the measurement plan.

By nature, blogs have some unique peculiarities that differentiate themselves from other digital properties like websites. Two main peculiarities are:
  1. the importance of CONTENT and the different way in which it is consumed by readers
  2. the emphasis put on SOCIAL CONVERSATION

Hence, developing a measurement plan for a blog require you to think more expansively and take these peculiarities into account.  You should understand what really is an effective KPI to measure your performance, and consider any technical limitation you might encounter when implementing it on a web analytics  tool.

As an example, the way time on site is calculated in Google Analytics (and web analytics tools in general), should make you conclude that "Avg. Session Time" might not be the best metric to measure engagement of your blog readers. I wil touch this issue later and probably will reserve an entire new post to discuss in details other blog measurement issues.

Let's go back to the objective of this post now.

First of all, I am going to give a brief theoretical background about digital measurement, by illustrating the model developed by Avinash Kaushik. If you have not done it yet, read his inspiring post on developing a digital marketing measurement model.

Once reviewed Avinash model, I will apply it to my blog, and also discuss some specific aspects to take into account when building a measurement plan for a blog.

Let's go!

Quick jump links:
1. The 5 steps digital measurement model
2. A tentative framework to measure my blog performance
3. Conclusions

The 5 steps digital measurement model

What Avinash recommends in his inspiring framework, is an HIERARCHICAL model with business objectives standing at the top and leading the other components of the model.

Web Analytics Measurement Model

#Step1: Document your business objectives

The first step to create your digital measurement plan is to define your business objectives. You should ask yourself questions like: Why does my blog/website exist? What are the 3 most important priorities for my blog?

Everything starts from declaring business objectives, or in other words, the mission of your blog. Hence, this is a very critical stage and you should dig really deep into your "digital motivations" in order to get it right.

And remember, your business objectives should be SMART (Specific, Measurable, Actionable, Realistic, and Timely)

#Step2: Identify strategies & tactics to support your objectives

I think many analysts find this step a bit confusing. What Avinash means here, is identifying specific strategies that you will leverage to accomplish your business objectives.

Let say your business objective in #Step1 was "Selling more products". #Step 2 will be the specicic strategies you will use to increase your sales, like: increasing the number of subscribers to your monthly promotion newsletter, reduce the abandonment rate in your checkout process, or increase the online engagement towards the content that is related to those products you aim to sell.

#Step3: Choose KPIs

Once defined business objectives and how you will intend to achieve them, the nest step is to choose Key Performance Indicators, also referred to as KPIs.

A KPI is a metric that helps you understand how you are doing against your objectives. In other words, KPI's they are the numbers (METRIC == NUMBER) that you'll analyze daily to understand how your business is performing.

For an objective such as selling products, great KPI's could be revenue, average order value or the average number of days/visits needed to make purchase.

Avinash stresses on the importance of choosing a few (3 to 5 ideally) meaningful and actionable KPI's. To do so, a KPI should follow 4 rules: it should be uncomplex, relevant, timely, and instant useful.

#Step4: Set targets

Nex you have to set targets for each of your KPI's. Targets are numerical values that you have pre-determined (with your business leadership, or simply by yourself in case you are the only one owner of the blog/website) as indicators of success or failure.

You can create yearly targets, monthly, quarterly, etc. You decide it. In our example of sales, it could be "Target: Revenue = $125 per month".

#Step5: Choose segments of analysis

Finally, you should document which segments of data are important to measure for your business.  You might want to analyse your KPI's by traffic channel (Organic vs Paid vs Direct, etc.), by returning users, or by users who converted to a spefific goal you set in Google Analytics. It's up to you and to the nature of your business.

What you have to remember, is that segmentation provides context to your data and it allows you to take action on your data. As Avinsh says..."Segment or die!".

A tentative framework to measure my blog performance

Let's walk through the measurement plan for my personal blog (if you want to familiarize with my blog objectives, here you can find a bit of background on how I started

#Step1: Business Objectives

Why does my blog exist? I would summarize my blog mission with 3 business objectives:

  1. Delight my readers with helpful data analysis tutorials and tips
  2. Raise my professional profile within the digital analytics community
  3. Encourage me to learn and stay up to date with latest trends in digital analytics

Measure a Blog Business Objectives

#Step2: Strategies to accomplish my objectives

To accomplish objective 1 that is "Delight my Readers", I will need to create valuable content for my readers and engage them.

To raise my professional profile (objective 2), I plan to execute 3 strategies: increase the number of people who subscribe to my newsletter, develop businees connections and also increase the number of posts shared over other social networks.

Does it make sense so far?

How to Measure Blogs - Strategies

Finally, another important business objective of my blog is to encourage me to learn and gain more expertise. I am going to spend a few words on this, to make it clear.

An important reason why I started this blog, and I am still investing on it, is to "speed up" my learning process in the analytics field. Behind each post I write, there is a research activity which include reading many other blogger posts, articles, etc. until I come up with an idea. Other times the idea comes directly from some projects I am currently working on and again I start doing research to gain more knowledge about the subject.

Another very important role in blogging, is also played by planning all my blog activities, including writing.

These are all activities that enrich my professional experience in the long term. Hence, having a blog for me works like an incentive to keep learning and gain more expertise in the field. Sure, it also steal some of my free time! ;)

So to deliver on my last blog objective, I need to: first of all publish new posts on a regular basis, then increase my readers base (subscriptions is a great incentove to keep working on my blog) and finally receive valuable feedback (comments work like another great incentive).

I hope my argument makes sense. I will provide a few more examples in next paragraph.

#Step3: KPI's to measure my blog performance   

Below are a list of potential KPI's I could use to measure my blog objectives. I've identified a total of 8 unique KPI's (note that some of them get repeated among different objectives and strategies). I am a bit over the 3 to 5 recommended earlier, but this just want to be an example from which you can get some ideas.

How to Measure Blogs - KPI

To measure my ability to create valuable content, first of all I need to measure my effort in terms of number of posts published. To obtain success you first need to deserve it baby...Here the bad news: succcess for bloggers comes with lots of dedication and perseverance, and this means publishing great content regularly. Then, before looking at any other awesome metric offered by Google Analytics, you should look at your contribution as a blogger: are you publishing enough posts each month/week? (I am not, but you wait to answer after having set a target!).

The next question I'd like to answer is whether people actually read my posts. Or, for some reasons, they just land to a page and leave it without even giving me a chance to show them what I have say. 

This is a very tricky user behaviour when it comes to measure it with Google Analytics as well as most web analytics tools. Especially for BLOGS, where readers might land to your blog just to consume your latest article and don't interact with any element of your page. Only 1 page consumed, no interactions with content, and Bounce Rate equal to 100%. Then what?

How can you distinguish users who landed to your blog and left immediately (without reading any content) from readers who actually consumed some content? Tricky! 

The idea is to use some metrics that allow you to capture readers who actually consumed some content. Then you might say: "All right, people bounce on this post but most of them actually read the article (or some of it)" [Note: this does not mean we should not try to optimize the page. Bounce rate is still important measure and ideally the user should continue his/her journey through the blog by visiting other pages].

To measure content consumption, you will need a bit of coding to implement it in Google Analytics. I recommend you to check out the scroll tracking solutions suggested by Optimize Smart or the advanced content tracking post of Justin Cutroni. Both implementations, allow you to measure content consumption by tracking users scroll on your page (e.g.: just opened the page, 25% , 50%, 75% or 100% scroll which means the user has got to the end of your page, hurra!). 

The second strategy is engaging my readers.  To measure it, the main KPI I use is the number of users who decided to subscribe to my posts and receive them directly into their email. I think that this is a superb measure of engagement, and I actually consider it a macro-conversion for my blog. To me, subscriptions means something like "Cool, I loved your blog...I don't want to miss any of your future posts, please drop me an email every time you will publish new content!"

That's real engagement. And also a lot of joy for any blogger! 

Another solid metric I use to measure engagement is page depth. Page depth measures the distribution of the number of pages in each visit to my blog, during a given reporting period. In Google Analytics you can find this metric under Audience > Behaviour > Engagement. 

In the same Google Analytics report, you can also find his "sister metric": session duration. This is another good measure of engagement for websites, though for blogs is a bit less reliable since people often read only one post and do not click on a second page. Page depth is more solid metric in this sense.

Let's move to second objective: raise my professional profile within the digital analytics community.

First of all I need to increase the number of subscribers. Subscribers metric, here we go again!

Secondly, I aim to develop business connections through my blog. In particular, I hope that people look at my Linkedin profile or perhaps learn more about my professional experience by entering the "About this Blog" page. I consider both of them signs of interest towards me as a professional in the digital analytics community.

A good way to develop a KPI for this, it can be measuring the percentage of people looking into my Linkedin page (or About page) over the total visits. In Google Analytics, you can easily set this KPI as a GOAL, and  automatically get a conversion rate for these type of readers. [Note: visiting my Linkedin connection does not imply building a new connection. Nevertheless, I consider it a demonstration of "professional" interest].

Another strategy I use to accomplish objective 2, is making people share my posts through social networks. My KPI here would be the percentage of posts shared over the total number of posts published at that time on the blog. This KPI is also referred to as "amplification rate".

You could calculate this KPI separately for each social network or you might want to use an aggregate measure.

All right we are almost done.

My last - but not least - objective is to encourage me to learn.

As I already said, having a blog for me works like an incentive to keep learning, come up with new ideas and ultimately gain more expertise in the analytics field. How can I accomplish this?

Easy: first of all publishing more and more posts. KPI: number of posts published per month/week.

But I just writing for myself? No. I need readers. I need to see them participating in my conversations. Readers will encourage me to write new content. It's kind of a VIRTUOUS CIRCLE.

The more readers engage (subscribe) and participate (leave comments) to my blog, the more I will be motivated to write new content for them.

My KPIs will be the number of subscribers and the percentage of people commenting over the total number of posts published. The second KPI is also referred to as conversation rate.

An alternative way to measure conversation rate, might be the total number of words written in comments, divided by the total number of words I wrote on the post.

#Step4: Targets

If you have got till this point, great. Your measurement plan is almost complete, you have resolved the most "conceptual part" of the model.

Now it's time to set a target for each your KPI's, so that you will be able to decide whether you were successful or not at blogging.

Every company/organization sets some targets at the beginning of the year/trimester/etc. and decide where they aim the get at the end of the period. Why shouldn't you do the same for your blog?

Targets add context to your data and allows you to understand where you are at the moment versus where you need to be.

How to Measure Blogs - Targets

I have not included here my personal targets.

What is important though, is to understand how to set targets. For your blog, you could decide to set targets based on one of these 3 methods:

  1. use your historical data (straightway from your web analytics tool)
  2. use competition data (rquire much more effort to get it) 
  3. use your web analytics benchmarking data, if they offer any (Google Analytics recently released a very interesting Benchmarking Report where you can compare your data with other similar industry/persoormance sites. There is also a category called "Blogging Resources and Services".

If you want to learn more on how to set targets for your web analytics data, there is a fresh new post written by Avinash Kaushik on benchmarking performance.  

#Step5: Segments

A segment can be defined as a group of people who have some attributes in common. Segments are a key part of your measurement plan because they allow you to take action on your data.

For example, it's  interesting to understand where most of my subscribers come from in terms of traffic channel. Or whether they tend to land to my blog to read a specific type of content (e.g. google analytics related posts) or not.

To analyse my blog, I would segment my KPI's something like this:

How to Measure Blogs - Segments

So for "Delight my Readers", my segments of analysis are:

- Traffic Sources: which traffic sources bring me quality traffic? Do engaged readers and subscribers tend to arrive from a speficic source or channel?

- Content Type: my posts can be divided into 2 main categories of content, posts about web analytics and posts about data analysis with R. So I want to analyse which type of content engage the most (I can see from my data that R readers tend to spend more time on the blog and visit more pages, though this could be realted to the fact that R posts might contain some coding)

- Geographic locations: the large majority of my readers come from US, but other countries (still generating relevant traffic) present a stronger engagement looking at the KPI's above. What can I do with this data?

For second objective, my list of segments looks like this:

- Traffic Sources: again I want to understand where subscibers come from, whether there is a pattern. But I might also want to know traffic sources for those readers who share my content over social networks.

- Engaged readers: here the idea is to analyse those readers who resulted engaged for my first objective. For example, I could create a GOAL in Google Analytics for readers who explore a minimum number of 3 pages within their visit. And classify them as CONVERTED. I will then use use this segment to analyse subscribers (are readers who convert, also more likely to subscribe to my posts?). And to analyse readers who demonstrate interest in building a business connection (do they tend to convert to my engagement goal first?).

- Subscribed readers: are subscribed reader interested in building business connection with me?

- Returning vs new readers: do users need to come back to demonstrate professional interest? How long does it take to mature a "lead"?

Last, I want to analyse my 3rd objective through these segments:

- Content Type: how many posts am I publishing for each type of content? Am I receiving more comments when I write about web analytics or when I use R language to analyse data?

- Traffic Sources: again, I would like to know where subscribers come from as well as readers who left cooments to my posts.

- Engaged readers: this could be another way to analyse people who converted to my prior engagement goal. Do people need to engage (spend some significant time/visit a min number of pages) before leaving some comments? If so, can I take specific actions to improve engagement rate and encourage their participation?


Ooh, that was quite a long post. I hope you found it of value and could use some of these ideas for developing your own blog measurement strategy.

At this point, you should have clear the importance of establishing objectives and how to create a measurement plan from there. And you should have also got a sense of some critical measurement issues due to the unique nature of blogs. Measuring a blog needs you to think more extensively and consider important aspects such as content consumption and social sharing, that make blogs different from websites.

A big benefit of setting up a measurement plan, is that reporting and data analysis activities will become much easier. You will now know what you need to look at, which KPI's and make decisions faster.

Most of the KPI's I suggested in this post, can be easily measured with a basic implementation of Google Analytics (pageview tracking). Others require a bit of coding (like in the case of content consuption via page scrolling, social share buttons or comments). Others might need you to refer to your external tool data, like to measure the people who subscribed to your posts.

The idea is to first produce a measurement plan, and next assess implementation on your web analytics tool. Pretty much everything can be implemented with Google Analytics. You might need some help from a technical person, but you are the owner of your plan and you know what is important for you.

With Google Analytics you can also set goals for some of your KPI's. And if you like,  you can also create a custom dashboard and monitor your KPI's/goals all in one place.

Tha's about it. Please share your thoughts, critiques and feel free to suggest additional ideas, KPI's, segments we can use to develop a better plan for measuring blogs.

Sep 6, 2014

All Data Journalism Graduates in a Map

This week I got my certificate of completion from the course "Doing Journalism with Data: First Steps, Skills and Tools"(if you like to know more about data journalism check out my post "3 Great Examples of Data Journalism Stories"). I enjoyed the course a lot, and I am proud of being one of the 1250 people who successfully completed the course. I was a bit surprised we were only 1250 graduates!

So, where did we come from and who we are? Above is a map I built using the R programming language, and in particular the GoogleVis package. GoogleVis is a great package that provides an interface to the Gogle Vis API, and make creating interactive plots quite easy. Interactive means that users can manipulate data and look for the info they need. Here a list of visualizations you can do with Google Charts.

The other great thing about this visualization, is that you can make it available over HTML, like I did above (you can edit the HTML if you like). No more static charts on your desktop then, but beautiful, interactive visualization shared on the web!

Below is the simple R code I used to prepare the data and plot the charts. To plot the data about graduates titles (the title people indicated when they enrolled to the course) I used Google Refine and some of its cluster methods to clean/group data (e.g.: "journalist" or journalists" or "periodista" falled into the general category of "Journalist"). Then I load it into R as a .csv file.

ddj<-  read.csv("ddjCleaned.csv")
names(studCountry)<- c("country","graduates")



C<- gvisGeoChart(studCountry, locationvar = "country", colorvar = "graduates", options = list(width = 500, height = 400))

T<- gvisPieChart(head(studTitle[order(studTitle$graduates, decreasing =TRUE),],10), labelvar = "title", numvar="graduates",options = list(width = 500, height = 300))

CT <- gvisMerge(D,T, horizontal=FALSE)

# to get the HTML code of your visualization you can either print execute the following command:

print(CT)  #print the Object you have just created

# or you can click on the Chart ID link below your visualization.

Aug 12, 2014

How to Test Universal Analytics Before Upgrading: via Google Tag Manager

Test Universal Analytics with Google Tag Manager

Since Universal Analytics came out of beta last April, more and more users have been starting the upgrade process from classic Google Analytics. Altough Google strongly encourages to do the upgrade, and reassure that the migration will not cause any loss of data (perhaps just a few seconds of traffic), some of us still remain a bit worried about the change. This is especially true in the case of big websites with a large number of tags already implemented through classic Google Analytics.

Will there be any significant difference in data after the complete migration? Will Universal Analytics inflate/reduce some metrics compared to classing tracking code? These questions should motivate you to perform some testing before moving completely to a new standard.

In this post I am going to suggest a step by step process to conduct your upgrade to Universal Analytics, with the help of Google Tag Manager. Yes, this post is also about Google Tag Manager. It´s actually about taking the opportunity of the transition to a new standard (Universal Analytics) and make it in the most efficient and safest way (Google Tag Manager).

The main idea of this step by step process is to keep the upgrade "under control" and make sure you are going to get the same quality of data as before.

Jul 15, 2014

3 Great Examples of Data Journalism Stories

Over the last month I've been spending part of my free time learning about an emerging discipline in the areas of data analytics: Data Journalism. I am doing it, firstly because I find the combination "data analysis + journalism" very fascinating, but also because, as a Web Analyst I believe that there are some very important skills I can absorb from Data Journalists (here is a post where I talk about Web Analyst skills).

The aim of this post is to introduce you to this emerging discipline, and show you a couple of practical examples of data journalism. To do so, I've selected 3 published data journalism stories and analysed each of them by answering four key questions:
  1. What does the story do?
  2. How was it created (methodology)? 
  3. How was it illustrated?
  4. What technologies were used to create and present the story to readers?   

Jun 23, 2014

Performing ANOVA Test in R: Results and Interpretation

ANOVA test with R

When testing an hypothesis with a categorical explanatory variable and a quantitative response variable, the tool normally used in statistics is Analysis of Variances, also called ANOVA.

In this post I am performing an ANOVA test using the R programming language, to a dataset of breast cancer new cases across continents.

The objective of the ANOVA test is to analyse if there  is a (statistically) significant difference in breast cancer, between different continents. In other words, I am interested to see whether new episodes of breast cancer are more likely to take place in some regions rather than others.

Beyond analysing this specific breast cancer dataset, I hope with this post to create a short tutorial about ANOVA and how to do simple linear models in R.

May 13, 2014

Web Scraping for Non-Programmers: 3 easy Tools to Extract Data from Websites

If you work with data and use the web as your main source for datasets, then you might have heard the words "web scraping". If you have not come across it yet, well surely you happened to find some interesting data on the web, but no available download options. No csv file or excel download. Nothing. Nada. Niente. And even your desperate copy-and-paste attempt has failed you. This is where web scraping comes in handy.

This post is about introducing web scraping, and I am going to present 3 tools anyone of us can use to "scrape" the web. Two of them can be used directly from your browser, while the other option is available through Google Spreadsheets. But, most importantly, they are all free, very quick and easy to use and do not require programming skills.

All right, let's define the topic of this post first. What the heck is Web Scraping?

web scraping

Apr 29, 2014

How to Move your Blog from Tumblr to Blogger in 10 Steps

Premise: this post is not about web analytics. Still I've decided to include it here as this is the place where I am present online. At the end of the day I am a blogger too. And like all bloggers, sooner or later we have to get knowledgeable of diffferent blogging platforms, choose the most suitable for our own objectives, and focus on writing about the things we like. Hope you find it useful!

move from tumblr to blogger

Less than two months ago I decided to move all my blog posts from Tumblr to Blogger. Why? There were actually things I really enjoyed about being part of the Tumblr community. But I had clearly more reasons (I am not going in details here) to make a move and get into a simple and popular platform as Blogger.

Here below I am reporting tha main steps I took (sussessfully, thanks god) to move my blog posts from Tumblr to Blogger. I will try to do it in a very quick and simple way, as I hope your migration will be. For each step I provide the link of the tool/tutorial you can refer to for more info. Ok, let's start. Good luck.


Mar 26, 2014

Gathering Business Requirements for a Google Analytics Project. A quick Template.

Every business has unique objectives and data needs. Because of that, a good Web Analytics project should always start with an audit aimed at understanding and gathering these unique business requirements.

Infact, it´s only by capturing the objectives of the website/online business that we will be able to create and implement an effective measurement plan and eventualy take action on data. Using Avinash Kaushik words:
There is one difference between winners and losers when it comes to web analytcs. Winners, well before they think data or tool, have a well structured Digital Marketing & Measurement Model. Losers don´t.
In this post I suggest a simple and quick template that will help you capturing business and technical requirements for a web analytics project. And so being able, later, to develop an implementation plan.  I am in particular thinking about digital analysts/agencies who offer Google Analytics consulting services to their clients.

The following template can be useful when you sit down for the first time with a client (or prospect one), and you know very little or nothing about their business on the web. Of course you should complement this initial audit with:
  1. A visit to the website (do it before meeting the client!): see how it looks, go to product pages, navigate as you were a potential customer. And try to identify yourself their business objectives and potential technical requirements.
  2. A more detailed analysis into their Web Analytics tool (if they are currently using one, and clearly if you have been given access previously). This step will let you audit the type of implementation they currently have and get first a picture of the data.    
Scroll down the form to keep reading.

A couple of notes about the above template, before closing this post:

- the above questions were formulated with a Google Analytics audit in mind (especially questions about GA implementation features). However, I believe most of them could be replicated for any Web Analytics tool;

- I created the template using Google Forms, though it is not intended to collect answers (Google Form it is used to create and send surveys for example). I simply used it because I liked the format and I could incorporate it easily in my post;

- the template could be sent to clients by email, instead of filling it out during a face to face meeting;

- some of the questions will need more detailed answers than the ones I put on the template. I didn´t leave a blank space in the form, but I encourage you to do it. The more detailed info you can get from the client, the better you will deliver your measurement and implementation plans.

I hope this simple template will be of use in your daily work. Please feel free to share advice, critique or other question you reckon I could add to the template.

Thank you.

Mar 11, 2014

Free Analytics Education? My Personal Development Plan for 2014

analytics education skills

It seems that 2014 will be a great year for analytics professionals. It's not me saying that, but several authoritative sources in the world business. To mention a few of them:

For us, digital analysts, I guess this is all great news. But the other EVEN NICER NEWS - and that's the topic of this post - is that lot of this analytics education is freely available through the internet. Ever heard about MOOCs? I have taken a couple of those courses, and beside the zero cost required to enroll, the QUALITY was the thing impressed me the most. A couple of my previous posts actually came from some fantastic assignments I was given as part of the courses.

Going back to 2014, I'd like to suggest 3 courses starting right this month. I have enrolled to all of them, they look very promising and hopefully will be able to complete them all.

1) Google Analytics Platform Principles
2) Making Sense of Data
3) Doing Journalism with Data