As web analysts we live and die by segmentation. Without the ability to segment traffic we can not isolate which segments are producing and which need improvement.
Google Analytics offers many different ways to segment data. Each has pros and cons but there is always a way to get the data you need…. well, almost always.
There are 6 different ways to segment data in Google Analytics:
1. Using certain reports
2. Dimension drop down
3. Report filters
4. Advanced segmentation
5. Custom reports
6. Profile filters
Bet you didn’t think there were SIX ways to segment data. :)
Using Certain Reports
Ok, you may think this form of segmentation is lame, but it’s not!
Many reports in Google Analytics are segmented by some default piece of information. There’s nothing for you to do.
For example, the Browsers report segments your data based on the different web browsers that visitors use to access your site. Google Analytics automatically identifies this information when collecting visitor data.
Other segments that are automatically include in Google Analytics include:
* Visitor type (new and returning)
* Geographic information
* Operating system (and many other “nerd” segments)
Marketing segments are not AUTOMATICALLY segmented. You need to configure Google Analytics to track campaigns (i.e. link tagging) in order to get correct traffic source segmentation.
Pros:
* Easy
Cons:
* You better make sure you’ve got your campaigns tagged correctly ;)
Dimension Drop Down
Many reports have a dimension drop down that allows for segmentation right in the report. This is a handy way to quickly drill down into a piece of data.
For example, let’s say I want to see the most popular landing pages in a particular state. I can navigate to the state in the Visitors > Map Overlay > Regions report, click on the state I’m interested in, and then choose Landing Page from the Dimension drop down.
You can see in the image above that you can segment based on campaign information, some technical information and some visitor information (visitor type, language).
Overall, this is a good way to go when you’re drilling down and want to segment a single data point by some dimension.
Pros:
* Quick for one-off segmentation
Cons:
* Can trigger sampling
* Limited number of dimensions and no metrics
* A pain if you need to segment a lot of things, like top landing pages for every US state
Report Filters
Bet you don’t think of filtering as segmenting, but it is!
Any report displaying tabular data has a filter tool at the bottom of the data. This let’s you quickly view data that matches, or does not match, some condition. The condition is the pattern, or regular expression, that you enter into the filter. Using a regular expression you can add lists to the filter.
Here’s an example. Suppose I want to quickly view traffic coming from the Pacific sales region. I can apply the following filter to the Visitors > Map Overlay > Regions report:
California|Oregon|Washington
[The above is a regular expression matching California OR Oregon OR Washington]
Notice that the Scorecard (the top row of data in the table) indicates how our segment, i.e. the data that matches our filter, compares to the overall site? We can now compare the Pacific sales region to the entire site.
And here’s a neat trick, if you add the filtered report to your dashboard the filter will persist in your dashboard widget. I call it a sticky filter.
Pros:
* Quick and relatively easy
* Can be applied to historical data
* Will not trigger sampling
Cons:
* Restricted to one report and the data in that report
* You should know some basic regular expressions
* Can not be shared easily
Advanced Segments
There has been a lot of conversation over the last few months about Advanced segments and rightly so. This analysis tool is really powerful and let’s you slice the data many different ways using different dimensions and metrics. Want to see all visits that generated more than $100, coming from paid search and occurring after 8 AM? No problem with an advanced segment.
But there are some downsides. First, sampling. Because Advanced segments re-process data in real time there is a sampling algorithm applied to minimize the load on Google’s servers.
You can’t segment more than 200k visits. If sampling is applied you’ll see a confidence interval next to your data.
Again, the problem is that small segments of data will be really inaccurate when the sampling algorithm is applied. There is no way to disable sampling.
The most common ways to get around sampling are segmenting using profile filters or potentially a report filter. It really depends on the exact situation.
The second issue is that not all reports can be segmented. Due to the segmentation technology certain reports can not be segmented, like the Absolute Unique Visitors report and the Funnel visualization report. Those reports can only be segmented with profile filter (see below).
Pros:
* Can be applied to historical data
* LOTS of flexibility, can segment based on a huge number of dimensions and metrics using different combination of both
Cons:
* Sampling will be applied if trying to segment more than 200,000 visits
* Not all reports can be segmented
* Specific to your username, can not be shared with other users
Custom Reports
Another beta feature that can be used for segmentation is the Custom Reporting tool. This tool is more than just pretty reports. It allows you to create 5 levels of segmentation in a report.
In a previous post I talked about segmenting campaigns by time of day to better understand day parting.
We could take that example one step further by adding geographic region to the report. The result would be a report that has Campaigns data that could be segmented by time of day and then by geographic location.
The problem is that not all dimensions can be used together. The reason is that only certain metrics are related in the Google Analytics data architecture. You can find a complete list of combinations in the GA support docs.
Pros:
* 5 levels of segmentation
* Advanced segments can be applied to a custom report
* Can be shared using automated email feature
Cons:
* Can only segment using dimensions, not metrics
* Limited number of dimension combinations
* Can only drill into one data point at a time
Filtered Profiles
Filtered profiles are the nuclear bomb of segmentation. They are permanent, segment every report in a profile, and can easily be shared.
In case you’re not familiar with filtered profiles, you can include and exclude data from a profile using a filter. Google applies the filter during data processing, thus segmenting the data.
Once the data has been processed it can never be changed. This means that you can filter historical data AND if you mess up the configuration of a filter you could have really crappy data.
Another issue with filtered profiles is not all data can be filtered. For example, transactional data is different than pageview data. This can cause some funky information in campaign reports and commerce reports.
If you need to filer pageview data then you’ll need to filter your commerce data with different include or exclude filters. Also note that Event data can not be filtered.
But, on the up side, you can use filters to segment things like Absolute Unique Visitors and the Funnel Visualization report. Neither can be done with an Advanced Segment.
Pros:
* Segmentation of every report in Google Analytics
* Can control access by assigning users to filtered profiles
Cons:
* Only effective from date of implementation forward
* Limited number of dimensions
* Issues with filtering other types of data, like events and transactions
I hope this inspired you to come implement different segments using different techniques. As I said in the beginning, there are a lot of ways to slice data in Google Analytics. Find the technique to suit your needs and start segmenting!
Justin
Thanks for the guide (Added to my Favourites). Google Analytics is pretty amazing these days. I think they must be listening to Avinash and the result is a damn good analytics package.
I didn’t understand your point about filters: “not all data can be filtered”. What do you mean by transactional data (Goals? Events? Ecommerce transactions?).
Anthony
Good, well rounded high level overview of the ways to segment data in GA.
I submitted it to sphinn: http://sphinn.com/story/110621
Hope you don’t mind! :)
James,
Thanks for submitting, that’s great! I’m always excited to get more traffic!
Anthony,
The problem with filters, like an include filter, is that it will only effect the click stream data, like Visits, Pageviews, etc. It will not affect things like transactions.
Example: if I create an exclude filter on the hostname, it will remove visits, PV, etc that come from the hostname. But it will not remove the transactions that come from that hostname. GA treats transaction data different than visits, PV, etc.
The same applies to events.
Hope that helps and thanks to everyone for the comments!
Justin
Hi Justin. Thanks for the very clear explanation about the effect of filters on transactional data.
I have a problem with events. Can I create a report that includes all events and another one that ignores some or even all events?
I would appriciate your help.
Carsten,
Filter events sucks. Because they are a different type of data (ie an event not a pageview) the filters don’t behave the same way. If you need to segment events the best thing to do is use different profiles to collect different events.
Hope that helps and thanks for the question.
Justin
Hey Justin – Great post!
I specifically liked all the pros and cons you shared for each method. Its funny how you can spend so much time in a tool but never get around to articulate some of methodologies behind why you may want to use a filter vs. custom report.
Jeremy
You forgot segmenting visitors by user defined variable. I think used correctly this is one of the most powerful ways to understand visitor behaviour.
One of the simplest ways to implement this is on an E-commerce site. When someone makes a purchase you can segment them as an existing customer.
How many of your customers are returning? How many are new?
Not sure if I’m taking it off topic here, but I know you were talking about segmenting data in Analytics, but I prefer to think of segmenting visitors. Who are my visitors? :)
So my list would be:
1. Using certain reports
2. Dimension drop down
3. Report filters
4. Advanced segmentation
5. Custom reports
6. Profile filters
7. Visitor type (User defined)
Gavin,
Thanks for the comment. I tried to highlight how you can segment in Google Analytics and not by which dimensions you can segment. You’re absolutely correct, segmenting by the user defined dimension is very insightful. But you can do it using every technique I describe above.
Thanks for the comment!
Justin
Thank you Justin for your reply,
I just don’t see how I can make an event show up only in one profile.
Help needed :)
Carsten
I’m a few months in with GA and still learning tons every day. This blog is a lot of help, so thanks!
On a somewhat-related GA topic, I’m curious to know what I can learn about who’s linking to my pages through GA? Right now, all referring urls go to my home page, which I assume is a function of being an all-flash site. Once we transition away from flash, will I be able to see who’s linking to me page by page?
Thanks again!
You said “But, on the up side, you can use filters to segment things like Absolute Unique Visitors and the Funnel Visualization report. Neither can be done with an Advanced Segment.” I have applied ‘include’ filters to create sub properties, but the filters only work for Page Views. Unique Visitors, Visits, Avg Time Spent, etc is too high on these sub properties (similar to the property with no filters). Do you have a solution?
Jeff
GA will capture the referral information in the Referrs report. Once you move to the new site you’ll be able to see the exact path of all referring sites. However, GA will not show any query string parameters in the referring path.
Chan
An Include filter will segment ALL data, not just pageviews. There must be something else happening for those other metrics to be incorrect. It’s really hard to say what the problem is, it may be an issue with the filter, or, if the site uses sub domains, it may be a problem with the tracking code. Sorry I can not be more specific!
Thanks for the questions,
Justin
Great post, however I have noticed that for some reason GA custom reporting behaves differently depending on your web browser: I am using Mozilla Firefox and IE and can see that if a dimension is not dragable in IE it is dragable in FF… and the way around.
SEM Expert,
I haven’t heard about any issues with Custom Reports and the browser. IT may be due to a plugin or some extension that you have.
Sorry I could not be more help,
Justin
I could use your help.
Within our GA account, we started with profile ‘www.fraserinstitute.org’, which was set up by our developer, and has no filtering at all so includes all traffic (internal and external).
A few weeks ago I created a new profile, which filters all traffic from our IP address and named it ‘All External Traffic’.
Since that time, I noticed this morning that profile ‘www.fraserinstitute.org’ started flatlining on July 29 and profile ‘All External Taffic’ started tracking on July 30th.
Shouldn’t profile ‘www.fraserinstitute.org’ still be tracking all traffic, internal and external? I thought you could create a maximum of 100 profiles, with a max of 5 filters per profile to give you a quick snapshot of different website activity?? HELP!
@phil: Advanced segmentation is visit level segmentation. GA is pulling back all data from all visits that include the pages that you specified. If you need to create a department specific report use a filter and a new profile.
@ Yazmin: You should change your approach and use the new custom variables to track the different product categories.
@Wendy: Yes, your original profile should still have data. I would make sure that you did not add the filter to the wrong profile. Also make sure that the filter is correct. But you’re approach is spot on and the right way to do it.
Justin –
Thanks so much for your ShortCut book. It’s really helped me out a lot.
I do still have a question regarding segmentation. Gavin above mentioned the user defined variable which is what reminded me of it.
I have a site that has different types of product categories. In trying to track the traffic to these pages, however, the URLs don’t have any category specific text such that I can create a filter for these categories.
What I did was set the category in the cookie via ‘pageTracker._setVar(“category”);’ and then reset it with ‘pageTracker._setVar(“”);’. Since the variable doesn’t automatically get reset in the cookie when a user visits a page with a different variable, I felt I had to manually reset it.
Problem is, I’m not sure I’m getting good information and when I look at the data I’m collecting in my User Defined Report, I’m seeing a portion being reported as “(not set)”.
Do you think I’m going about this segmentation correctly?
Thanks!
I attempted to create a custom advanced segment to filter pages who’s path contains specific words. For example ParksRecreationArts.
I look at the results and find pages like /police/.
These pages don’t have the term I asked for and don’t contain information or links with the term.
Any Idea why this is happening and how I can get around it.
My goal is to create Department specific reports on internet traffic.
Thankyou Justin,
your post help me know more about analytics. Hope it help more and more people.
Hi Justin,
We thought this was a really good blog post – so good, in fact, that we referenced it in our post entitled “9 resources explaining when to use segmentation or filters in Google Analytics”. You can find the post at http://analytics.bimehq.com/ if you’re interested to read it!
Whoa! Thanks for sharing this interesting post about the effect of filters on transactional data. I wish all posts are just like this – very informative. Two thumbs up.