Archive for the ‘Analytics’ Category

Inbound Marketing: The Premise

Published May 28th, 2013 Analytics, SEO 10 Comments

Part one of a two-part series

What Is Inbound Marketing, Anyway?

And How is it Different from, You Know, Marketing?

This is what traditional marketing feels like now. Traditional marketing is the science of consumer communication, which basically consists of a research process of finding a market for a product, followed by a strategic process of figuring out how to target that market in advertisements. It basically amounts to sociology applied in the service of capitalism: in an effort to sell something, companies divide the human race into groups defined by their wants and needs (based principally on demographics, usually), and then try to determine what kind of group contains the people most likely to want or need what they have. This research then becomes the foundation of an advertising campaign, working on the reasonable principle that the better you understand the people most likely to buy your product, the better you can tailor your product’s image to appeal to them. Accordingly, you then train your advertising campaign on your chosen target market as carefully as you can, and wait to see who it brings in. In short: traditional marketing is about finding customers. This practice has pretty recently come to acquire the retronym “outbound marketing” because we now have this newer thing called “inbound marketing”. This is where, in lieu of putting out a call to the general public via advertising—informing everyone in earshot of the product’s existence/quality and waiting to see who bites the hook—companies focus on successfully attracting and converting the high-value customers, i.e. the ones that they know for certain to be already interested in exactly the kind of product they make. That’s why it’s called “inbound” marketing: because it’s predicated on an economic model where the demand is already manifest and demonstrable—i.e. headed “in”—rather than something that needs to be found, teased out, or created. Inbound marketing is not about finding customers. It’s about helping customers find you.

How Is Inbound Marketing Possible?

The inbound wizardI admit, it sounds pretty fantastical. Imagine you launched a new manufacturing company, and just as you were on your way to to convene your first marketing meeting, a wizard appeared and freely offered you a scroll that contained the name and address of everyone who would be a perfect fit for your product, whether they already knew about it or not. Privacy ethics and limitations of space-time aside, imagine how different—specifically, how much more gratifying—your marketing effort could be if you had this information in hand. Imagine what it would be like to approach these people and talk to them about the product. You wouldn’t feel any temptation to distort its vital information to make it more appealing, because you’d know that they already were pretty sure to like it for what it was. You certainly wouldn’t have to work very hard to earn a conversion; if they truly liked the product and could afford it, you’d be pretty well free to let it speak for itself. Also, because you’d be dealing exclusively with people who had a genuine need of the product, you’d probably find yourself on the receiving end of some genuine enthusiasm and appreciation, as opposed to the mass neglect and contempt often engendered by an ad blitz. And by talking to real individuals rather than just theorizing about groups, you might be able to learn something about the real “market” that your customers constitute; what’s more, you’d likely learn something about the product itself in the process. Can you imagine marketing being that effective, that emotionally healthy, that constructive? So, yeah, there’s no such wizard (that I know of, anyway). Sorry for leading you on like that. But could there be a way, maybe, conceivably, to approximate that wizard fantasy scenario? How could somebody in a product market conceivably prove that there were people out there looking for exactly the product that they offered, and then be able to find them and steer them in the product’s direction? Businesses have always held to ways of incentivizing the return of customers who have converted before (’10% Off Your Next Purchase at Hammerface Hardware!’) and rewarding customers who have spread the word on their behalf (‘Refer a Friend and Get Half Off Your Next Adjustment at Cucamonga Chiropractic!’). There are just too many internets.Customers who try the product once and come back are a sure thing; they know for a certainty what they’re going to get, and they know they want it. But what was long missing was a way to know what kinds of folks might be out in the world, unfamiliar your company by name, but forever wanting a product like the one your company made, and maybe even going from store to store fairly often in pursuit of such a product but always shuffling away disappointed. It’s probably no surprise that what changed all that was the appearance of our dear friends the INTERNETS.

Inbound Marketing = Internet Marketing

OK, maybe they’re not exactly synonymous, but inbound marketing as we know it is simply not viable without the internet (I’ll henceforth use the traditional spelling, rather than the Bushian variant). The internet, in transforming both the consumer experience of the retailer and the retailer’s experience of the consumer, transformed the whole premise of marketing. I’ll unpack the two sides of the change one at a time.

Shopping Online: Memoirs of an Invisible Man

APTOPIX China EconomyThe convenience of shopping from home hardly needs to be explained, and this was almost certainly the primary reason why online shopping became really popular really fast, even in the dial-up days. But there was another effect of this migration to ecommerce beyond just the suffering of our local retailers: we consumers were suddenly exposed to a lot more products after we started shopping online than we ever had been before, both by volume and by diversity, and we started looking at more products as a result. This is in part because ecommerce site design was always good at shoving products under your nose, but more because—speaking for myself—I visited way more store websites than I ever did brick-and-mortar stores, not just because the process was so shockingly fast and easy, but because visiting a website was, for me, way less psychologically complicated than walking into a store. Maybe you good folks reading this aren’t as socially fragile as your humble, introverted author, so allow me to regale you with an account of the thoughts that run through my mind when I prepare to visit a store.

  • people might look at me when I walk in;
  • employees might accost me to ask if I need help;
  • employees might push unwanted products on me (offers of free samples or speeches about special promotions);
  • the cashier is maybe going to try to start a conversation with me and that conversation might involve further pushes for impulse items (I’m one of the few who fell in love with those U-Scan stations at grocery stores, despite the blow they dealt to the customer service sector).

These experiences make me nervous, and expecting them has traditionally, tragically, discouraged emotionally sensitive people like me from shopping unless we a.) know exactly what we are looking for and stand a good chance of running the “get in, get out,” for minimal social trauma, and/or b.) are shopping at a store so large that our presence might stand a greater chance of going unnoticed. Point b is particularly unfortunate, given that it disproportionately punishes small businesses as well as any other businesses that reach out and talk to their customers like they’re told they’re supposed to, but the whole thing is kinda unfortunate because our social phobia is forever limiting our engagement with product representatives and even with old-fashioned browsing, which in turn limits our ability to communicate our wants and needs as consumers and learn how well or badly the market serves those needs. But in browsing products on a website, we feel beautifully, blessedly invisible. We can browse all day because no one is going to bother us and there’s no pressure to buy. The first time I visited Amazon.com in ’96-ish, I can remember how excited I felt not just at the prospect of having total knowledge of what books, CDs, and movies were in print, period (rather than knowing little beyond what was in stock at the various stores I frequented), but at being able to read all the relevant information about all of them for as long as I wanted without getting uncomfortable. This was before Wikipedia, and accordingly, there had never really been a resource online before Amazon for all this information that I given my position as culture/media geek was hopelessly bound to crave. I bought stuff once in a while, but I didn’t feel like I had to purchase something in order to justify my being there. I could treat it like a library, and I did. I looked at a lot of stuff on Amazon and pretty much every other ecommerce site—way more stuff than I had ever intended to buy—because I felt free to. Unlike in a store, nobody knew I was there! Turns out I was wrong on that last point.

Web Analytics: Somebody’s Watching Me

rockwell-watching-me-analytics I may have enjoyed the emotional security that came with feeling invisible by shopping online, but that invisibility was truly only a feeling. I may not have been able to “see” “anyone” while I was in there, but through the then-emerging field of web analytics, the store could very much “see” me. Web analytics is the practice of collecting, measuring, tracking, and sorting a website’s traffic data, and every website with something to sell has been doing it for as long as it’s existed, and you can probably guess why: because they want to know everything about their customers. And guess what? They can know pretty much everything. They can know whether you arrived on the site directly, via a referral, or via search (more on that to come). They can know your entire click-path through the site: every page you looked at and the order in which you did so. They can know whether you converted—i.e. bought something—and if so, when you decided to do so. So, hey, turns out I was way more visible on a store’s website that I ever had been in a physical store. How many in-store experiences did I ever have where an employee was standing behind me and taking note of everything I looked at? Websites like Amazon were doing that to all of us, and I probably don’t have to explain that there’s a high correlation between the things we look at at the things that interest us. Little did lurkers like me know that in all that time we were clicking around these sites to browse, we were basically voluntarily conducting retailers’ market research for them. When a site knows what interests us, there’s no end to what they can do with that knowledge. It’s not quite the wizard scenario because they’re not going to be able to knock on our doors, but they will be able to:

  • generally speaking have a much more refined, granular, and thorough understanding of the kinds of products we like;
  • know what we looked at but didn’t buy so they can point it back at us when we land on the site the next time (thanks also in part to cookies);
  • study the relationships between the things we looked at in succession, or bought in succession, and use that information to refine their product targeting going forward.

Never before had consumer data of this kind of precision and accuracy been available, and we consumers were giving it of ourselves—i.e. communicating our wants and needs—without even having to talk to anybody. Though it’s not a strategic marketing tool, the advent of web analytics as a research tool arguably effected the introduction of the whole concept of individualized consumer data, i.e. highly refined information about specific consumers that enabled a much more sophisticated level of insight into their preferences. This was maybe the single most profound development that made inbound marketing possible.

Search Marketing: Please, Please, Please, Let Me Get What I Want

Around the same time that ecommerce started to wax, another feature of that there internet—namely, the Google—began growing immensely in popularity as a starting point for people’s websurfing (we used to call it that, once). Unsurprisingly, the broad and skyrocketing adoption of the search engine as a navigational tool was felt powerfully in ecommerce, as droves of consumers took to kicking off their product hunts on search engines, and increasingly thinking of Google as the real portal to the product, not caring so much about which site it would ultimately be delivered from as long as it was affordable and looked it would arrive intact. This practice—launching an ecommerce experience with search—has only grown more commonplace over the years; in fact, search is now the number one traffic driver for online commerce. The upshot of this development for marketing is that within the sea of data that site owners can access through analytics lives search data, and access to this data makes search a two-way street: not only can users type their way to finding sites; sites can see what it was that users typed that led them there. So the more people use search to figure out and locate what they want to buy, the more companies can learn about how people talk about what they want to buy. When the people who run an ecommerce site learn how many customers are coming from search, they think “wow, there might be even more customers like them to be gained from search! We’d better find a way to grab them!” When those same people then learn exactly how consumers most often word their searches for products like the ones that they sell, they think, “hey, we need to use that same language so that people will find us based on the searches they’re already performing.” Then they start looking for opportunities to work that language into their site’s content. I’ve just described the concept of the keyword, and the practice of keyword research and targeting. It was this concept and these practices that birthed the second great tool of inbound marketing: SEO. This in sum is the premise of inbound marketing: that there are people out there on the web who will prove to you that they are interested in your product, and that you can steer them in your site’s direction. The tactics of inbound marketing are numerous and ever-expanding, and will be explored in a post to follow, but I hope that merely knowing that this kind of marketing is possible will leave you feeling a little more wizard-like.

Google Analytics – Universal Analytics Cheat Sheet

Published May 22nd, 2013 Analytics 42 Comments

If you couldn’t tell by now, I’m a big fan of simplifying and automating processes. As we’ve been starting to implement Universal Analytics alongside our clients’ current ga.js implementations, I’ve been spending a lot of time looking at Google’s analytics.js Dev Guide and Reference pages. Naturally, I wanted to have the analytics.js methods and fields closer and easier to find, so I thought it’d be helpful to create a Google spreadsheet cheat sheet for Universal Analytics.

View the Universal Analytics Cheat Sheet

The spreadsheet consists of three worksheets: Dev Guide, Method & Field Reference, and Limits & Quotas. Basically, I wanted a quick way to get the information I needed and get on with my life. Granted, I could have just as easily Googled the method or have bookmarked the dev guide (which I still do), I still like having a simple spreadsheet of all the possible options in a single location.

For the Universal Analytics Dev Guide Cheat Sheet, you’ll find references for: Advanced Configuration, Page Tracking, Event Tracking, Ecommerce, Social Interactions, User Timings, Custom Dimensions & Metrics, and Domains & Cookies. I didn’t include Cross Domain Tracking as it’s very different from ga.js, and I recommend you read Googles documentation on Cross Domain Tracking.

The Universal Analytics Method & Field Reference Cheat Sheet contains information on Object Methods, Create Only Fields, Traffic Sources, System Info, Hit, Content Information, App Tracking, Event Tracking, Social Interactions, Timing, and Custom Dimensions/Metrics.

Lastly, the Universal Analytics Limits & Quotas Cheat Sheet contains both property specific and client library quotas and limits.

Again, I’m not creating anything new here. I’m just putting the information that is readily available in Google’s Universal Analytics documentation into a Universal Analytics Cheat Sheet for easy reference.

Note: This my first attempt at a Universal Analytics Cheat Sheet, so if you have any recommendations, or would like permission to organize/add content, please reach out to me.

Google Analytics Report Automation using Google Spreadsheets and Scripts

Published April 24th, 2013 Analytics 13 Comments

 

Last month, I talked about how to configure the Google Analytics Core API Report Automation Script, and how to run a query using it. In this post, I’ll show you different tricks to clean up the Google Analytics data and how to automate your Google Analytics reports.

Report Automation Overview: Starting with the End

The way I think about automating is: how do I get the data I want, in the format I want, by simply pressing a button, or even easier yet, having a report emailed directly to me automatically on the day I need it? Well, in the words of Jack Dorsey, “It’s really complex to make something simple.” Automating isn’t necessarily “easy” to do, honestly, it can be very complex at times, but once it is setup, you gain a tremendous amount of time back from efforts.

I’ve only been working with Google Analytics for a few months, but one thing I learned early when putting together analytics strategies with our team is that, in complex situations, you start with the report and work backwards to figure out how you’re going to collect the data. For example, sometimes we start with just pencil and paper, and sketch out the report with the dimensions/metrics we want to find. From the sketch, we can begin to think strategically about how we need to implement Google Analytics tracking on the website to give us that data.

Really, automating your report is a very similar approach: start with the end result (usually a table or graph), and work backwards until you get to the data in the API. However, 99% of the time, the API will give us raw data, that is ugly and hard to digest. It’s not until that data is put into a table or graph, that we can begin to gain insights. I call this process of putting raw data into a readable form, “cleaning,” so I may refer to it as such.

The first half of this blog post will give you a practical example of how I “clean” data to be readable and usable. The second half of the post will show you how to automate and send report to your email on the first of every month. Let’s get started.

How to get Articles with largest increase (by volume): Month over month

 

Google Analytics Report Automation

Report: Client is looking for the top five articles with the greatest increase over the last month.

What queries we’ll need to run: Articles for previous month, articles for current month

Overview: So you’ll have noticed by now, that when you create a new Core API report, it creates a corresponding tab in the spreadsheet.

*Note: I use spreadsheet and tab interchangeably.

However, every time you run a query, the data in this tab gets overwritten, so we’ll want to create a new spreadsheet that we can reference our queried data. I usually call this spreadsheet something like Articles w/ Increases. In this new Articles w/ Increases spreadsheet, we’ll be bringing in data from both articles for previous month, and articles for current month.

The Setup:

Google Analytics Report Automation

Column 1 (ga:pageTitle): Referencing the pageTitle column in the articles for current month.
- Example: =’articles for current month’!A13

Column 2 (ga:pageview): References the, you guessed it, current month pageview. So this will correlate with article in column 1.
- Example: =’articles for current month’!B13 (not too hard)

Column 3 (ga:pageview): References the, you guessed it again, previous month pageviews. However, it’s not that easy. We will need to do a VLOOKUP to correctly match the pageTitle to the pageview.
- Example: =VLOOKUP(A3,’articles for previous month’!$A11:$E$260,2,false)

*To break this down even further, A3 references Awesome Article you’d like to find the pageview for; ’articles for previous month’!$A11:$E$260 references the table array you’d like the vlookup to look for your pageview (Note: you’ll see that I went up to row 260, if you have more than 260 articles, this number will be higher, possibly significantly higher); 2 references the pageview column in the array; and false tells the vlookup that we’re looking for an exact match, not an approximate.

Column 4 (difference): This is a simple subtraction of the current month pageview from the previous month pageviews.
- Example: =B3-C3

Alrighty, we’re getting our articles and we are able to see the differences between pageviews, month-over-month; however, we still need to sort (hint, hint) ascendingly by difference.

Google Spreadsheets SORT function: =SORT(Array, key_1, ascending_1,…)
- Example: =SORT(C13:F22,4,false)

Google Analytics Report Automation

This function creates a new table, sorted by column 4 in ascending (false) order. Conversely, to get Articles with largest decrease (by volume): Month over month, we can simply create a new sort function, reference the same array and key, and just sort by descending (true).
- Example: =SORT(C13:F22,4,true)

Google Analytics Report Automation

 

*Note: I say create a new sort function because this will create another table. If we’d like this automated, we don’t want to be changing the tables every time we have to run the report. The column on the left is the from our first table, and is not apart of the sort.

Granted this example may seem pretty simple on the Google Spreadsheets function-side, I really just wanted to get you thinking on how we can use queries and spreadsheets to start automating your data.

Using Triggers and Classes to Automate your Google Analytics Spreadsheet Delivery

Recently (like yesterday), I got the chance to play with some of the Google’s Script Services Classes to do some very helpful and slick automation.

I wouldn’t call myself lazy, but I like being as efficient as possible. So I started to think, instead of logging into all of these reports and updating the dates and clicking run, why can’t the report just get sent to my email when it’s ready.

Here is what I needed it to do:

1. Update the dates in the report to do a month-over-month analysis.
2. Send me an email with a link to the completed report.
3. Setup a trigger to run on the first of every month

First Step: Update the dates

To do this, I used a few Google Spreadsheet functions: TODAY, EDATE and EOMONTH. Let’s look at these a little more closely:

TODAY: Today is seems pretty obvious, and it is. To use it, just type =TODAY(); and this will return 4/23/2013.

EDATE: The result is a date a number of Months away from the given Start_date. Only months are considered, days are not used for calculation. To use it (I’ll reference the cell that has the TODAY function i.e. A1), type =EDATE(A1, -1). This will return 3/23/2013. Pretty sweet for doing month-over-month reporting, eh?

EOMONTH: This is a beaut! This functions returns the last day of the month for the month entered. To use it (referencing TODAY again), type =EOMONTH(TODAY,-1). This will return 3/31/2013. Awesome! Super close to having our month-over-month comparison.

5

Note: I’ve provided both the dates and the formulas, so you can see how this is working. I’ve also manually set the TODAY() date to 5/1/2013 to better illustrate how this would run.

So, it’s the first of the month and we’d like our data to do our analysis. We can easily open up the spreadsheet on the first and click ‘Get Data’, and our tables would propagate with fresh data. Done. But I want to take it a step further, and have the report come to me.

Second Step: Send me an email with a link to the report
Alright, so you may need a little coding experience for the next part, but it’s completely doable for you beginners. Heck, I still consider myself to be a beginner.

I’ll start with the function:

6

So, I created a new function and put it at the bottom of our Google Analytics Report Automation (magic) script.

What the function is doing is getting the URL of the spreadsheet; getting the email of the owner of the spreadsheet; *Note: you could use getEditors, to send to all the folks who have access to edit the spreadsheet, and finally, using GmailApp to send us an email.

7

 

Now, we want to call the function. This call will go in the getData function, as we’d like to call it after we’ve gotten the data. That is it. Just remember to save.

Sweet, so once that is setup, we can actually go back into to the spreadsheet and go up to the Google Analytics toolbar menu item, and click “Get Data”.

Viola! An email in our inbox with a link to the report:

8

Third Step: Setup a trigger to run on the first of every month
Hang in there, we’re almost ready to set it and forget it, but first we need to setup a trigger that will run our getData function on the first of every month.

This is the easiest step by far. You’ll need to go into your Google Analytics Report Automation (magic) script and go to the “Resources” tab > “Current project’s triggers”.

9

Next, we’ll set up trigger. So click the ‘Add a new trigger’, and select the ‘getData’ function.

Because this is a trigger that we only need to run every month, we’re going to select the Time-driven trigger, and specify month and the day of the month, in our case the first of the month, or 1. Next, set the time interval you’d like the trigger to run between. I choose 6am to 7am, so it’s sitting in my inbox when I check my email in the morning.

10

Bam, we’re done! Yes, it was really that easy. However, if you’re not convinced, you can set up a report to run for tomorrow using the data I’ve provided. It’s so cool getting to work in the morning and seeing a link to a fully automated report.

Conclusion:

If you’ve read this far, then I hope you were able to take away something new about automating your reporting using Google Spreadsheets and the Google Analytics Report Automation (magic) script. I’m fascinated with automating. It provides efficiencies and valuable time-savings for marketing managers to digital strategists to developers. Happy automating!

Resources for Learning About Universal Analytics

Published April 11th, 2013 Analytics 21 Comments

 

I’m giving a talk tonight to the Portland Google Analytics Users Group, and I’ll be covering Google Analyitcs’ new Universal Analytics. Universal Analytics is a new user-centric approach to analytics, that is funamentally and technically far more advanced than the current version of Google Analytics. It is the combination of 4 key elements:

    1. User ID Override: The ability to override the User ID, enabling you track users across sites, devices, and mediums by tying their visits to your own backend ID.
    2. The Measurement Protocol: a series of methods that enables the sending of data to Google Analytics from sites, mobile apps, and any other device that connects to the internet.
    3. Offline Conversions: Really something made possible by #1 and #2, but a big-enough deal to stand on it’s own.
    4. Custom Dimensions & Metrics, and Dimension Widening: The ability to define your own dimensions and metrics, and then actually key off dimensions to upload external data and “widen” those dimensions.

Universal-AnalyticsI won’t go into details on these in this post, but I will tonight. If you’re not in Portland or can’t make it though, no worries. I’m listing out what I have found to be the best resources on Universal Analytics that I have found in the last few months. Here we go!

Google Developers Google Analytics Site

This is the source for all the technical knowledge you need to gather on Universal Analytics. It’s not a site for those without an appetite for technical explanations and detailed information. It is the best resource for answers related to best practices, protocols, limits and other things you need to know before implementing UA.

Google Analytics Help Site – Set up Universal Analytics

A simpler approach to setting up Universal Analytics, and less to wade through. If you have some technical chops, and just want to figure out the basics of implementing UA, then check this out. It’s also a great primer if you’re just going to evaluate potentially implementing UA.

SEO Takeaways - Beginners Guide to Universal Analytics

This post is awesome. Highly recommended as a good first or second read on the subject. It covers so much information. It’s a little random in terms of what is explained in greater detail, but overall it is a wealth of information on the subject.

Universal Analytics – The Next Generation of Analytics

Justin Cutroni’s relatively simple overview of Universal Analytics. Send this to the people you know are going to have a short attention span for the technical details, but a longer one for learning about the capabilities of Universal Analytics and the solutions it can provide.

Tracking Ecommerce Transactions with Universal Analytics

You didn’t think  Cutroni was going to just give you some high-level look at UA? No way! This post covers some of the nitty gritty on tracking ecommerce transactions with Universal Analytics. You like analytics, you sell stuff on your site – you want to read this.

Migrating to Universal Analytics

Careful on this one – some of this may be out of date already. Definitely read up on some other posts before you migrate. Nevertheless, more good info from Justin on this. A good read to cover what is in and what is not-yet-in with Universal Analytics, and other considerations with migration.

Nurturing Your Customers & Business with Universal Analytics

Justin Cutroni, the one-man band with all things Unversal Analytics. This is the post you send to the business user. Don’t get in the weeds technically, but get in your head and start thinking of the powerful ways you’ll be able to use UA to learn more about your customers.

Using Google Analytics To Track WeMo Switch + Motion

This post comes via Ed Brocklebank’s and his comment below. Thanks Ed!  A good demo on how UA can be used with devices outside of phones, tablets and PCs. Ed hooks up UA to a WeMo switch. While as Ed says “no practical application” for this maybe, it helps gets you thinking about tracking user activity across the internet of things and connected devices in our daily lives.

That should be plenty to get you started on Universal Analytics. I’ll post my slides up from the talk as well, but these articles will cover far more than the slides will convey. If you are planning on implementing Universal Analytics, I highly recommend reading most of the posts above, and scanning through the two Google sites. Happy customer tracking!

[Edit] If you have additional resource you think are good, please add them in the comments below, and I’ll update this post with the relevant ones. [Edit]

[Edit 2] Here are the slides from my talk. Also, someone asked about tracking responsive sites with GA, and this is the post I mentioned: Google Analytics and Responsive Web Design – Introducing Responsive Tracking. [Edit 2]

 

Pinterest Analytics Tool is Here

Published April 9th, 2013 Analytics, Social Media 20 Comments

 

The biggest news of late in social has been the updated Pinterest look, as well as the addition of analytics (WOOHOO!). If you perform any social measurement this is big and exciting news.  Why is this so exiting? Before an integrated analytics feature brands were forced to use third party analytic services. Here at SwellPath, we were using Curalate, which is not particularly easy to navigate and their metrics are somewhat elusive.

The launch of the Pinterest Analytics Tool means big things for the platform as it provides the ability for businesses to understand how Pinners engage with their content.  I believe more marketers will jump on Pinterest wagon since they now have the ability to measure metrics more effectively and track the number of visitors Pinterest refers to their website.

The Most Interesting Man in the World Says Use Pinterest Analytics

If you’re a marketer and are interested in using the Pinterest Analytic Tool, there are a few elements needed to get started:

Once you have these elements in place, you’ll see an Analytics option on the top right dropdown menu.

Pinterest Analytics Dropdown Menu

 

In the Analytics Tool of your Pinterest Business Page you’ll see a tool bar with the following data collection tabs. All of the following pages offer the ability to export the data into an CSV file to easily analyze. 

Pinterest Analytics Toolbar

Site Metrics: This view provides comparison charts including “Pins and Pinners”, “Repins and Repinners”, “Impressions and Reach” and “Clicks and Visitors”. You can select a custom date range or use one of their quick select options (7 Days, 14 Days or last 30 days). The export of this page offers a simple data collection of your Pinterest page metrics including: Total Pins, Pinners, Repins, Repinners, Impressions, Reach, Clicks and Visitors for the date range selected.

Pinterest defines their metrics as the following:

  • Pins: the daily average number of things pinned from your website between Date 1 and Date 2
  • Pinners: the daily average number of unique people who pinned from your website between Date 1 and Date 2
  • Repins: the daily average number of times pins from your website were repinned on Pinterest between Date 1 – Date 2
  • Repinners: the daily average number of unique people who repinned your pins on Pinterest between x and y Date 1 – Date 2
  • Impressions: the daily average number of times your pins appeared in feed, search or boards on the web, iOS and Android between Date 1 – Date 2
  • Reach: the daily average number of unique people who saw your pins on Pinterest between Date 1 – Date 2
  • Clicks: the daily average number of clicks to your website from Pinterest between Date 1 – Date 2
  • Visitors: the daily average number of unique people who visit your website from Pinterest between Date 1 – Date 2
  • +/- %: Percent increase or decrease from your current date range to the previous date range

Most Recent: Provides a selection of your most recent pins from your website. When exported, you have the abilty to see the Pin URL, the link how many Repins that image acquired and the number of Like and Comments. One thing to note  is that  you’re unable to select a date in this tab since it’s a live feed.

Most Repined: This tab offers the top 100 most repined images for the date you select.

Most Clicked:  This tab reveals the most clicked pin images. This is great for seeing what images types or categories drive the most traffic to your webpage. When exported this page provides the Pin, Link, Total Repins , Likes, Comments, and Clicks during the timeframe selected.

The data goes back as far as November 1st 2012. So, unfortunately for those early Pinterest adopters, you are unable to see any data before that time period.

As with any platform in which you have a brand presence, it’s essential to evaluate what messaging is effective, and how your audience interacts with your content. By continually evaluating and measuring you can make better content decisions and also optimize on successful tactics. It is correct to assume that as the Pinterest Analytics Tool matures, they receive feedback on the KPIs which are most helpful to marketers, and they grow as a social platform, Pinterest will be able to provide even greater analysis of how a brand’s audience interacts on Pinterest. With that said, I believe that there is big things brewing for Pinterest and the Analytics Tool is just the start of something even bigger- stay tuned!

 

SwellPath Upcoming April Speaking Engagements

Published April 4th, 2013 Analytics, Authorship & AuthorRank, SwellPath 8 Comments

We’re out and about again, hitting the town (and the web) to share some of our SwellPath knowledge.

SwellPath and Google Analytics

First up, SwellPath’s CEO Adam Ware will be speaking at the latest Portland Google Analytics User Group meetup on Thursday, April 11 at the ISITE Design office. He’ll be covering the topic “Measure Customers and Content – Not Visitors and Page Views.”

Time: Thursday April 11 | 5:15 PM for networking, 5:45 PM for presentations

Address: ISITE Design, 2030 NW Pettygrove St. Portland, OR

The event is free to attend and you can RSVP on the Portland Google Analytics User Group meetup site.

Speaking engagementsSwellPath on SEOmoz

For those not in the Portland area, you can catch our Senior SEO Analyst, Mike Arnesen sharing his insights on Google AuthorRank in a Mozinar over on SEOmoz. Catch his session on “Advanced AuthorRank: 25 Tactics for the Individual to the Enterprise Level” on Tuesday, April 16  at 10:30 AM PDT.

The session will cover specific tactics that you can use to boost your AuthorRank as an individual agent, help enterprise-level sites benefit from AuthorRank, sell the idea into your clients and/or bosses, and creative use-cases from the trenches at SwellPath. If you’re unfamiliar with Google Authorship, you can brush up on the subject with Mike’s original post on the SEOmoz blog.

Don’t miss out. Register for the Mozinar today!

Tutorial: Google Analytics Core Reporting API using Magic Script

Published March 28th, 2013 Analytics 23 Comments

Recently, I’ve had the opportunity to use the Google Analytics Core Reporting API, Nick Mihailovsk’s Google Analytics Report Automation (Magic) script, and Google Spreadsheets to automate a few of our clients’ monthly reports. Wow. What a time saver. Sure, the initial setup and configuration of the queries takes a little time, but it’s time that is recouped instantly when you go to run the report for the first time, and subsequent times, thereafter.

In this blog tutorial, I’m going to cover the configuration of the Google Analytics Core API Report Automation Script, and how to run a query using it. In my next blog post, I’ll show you different tricks to clean up the data and automate your Google Analytics reports.

Configuring Google Analytics Core API Report Automation (Magic) Script

If you’re new to words like API, scripts and spreadsheets, fear not! If you can write an email, you can use the Google Analytics Core Reporting API, Google Analytics Report Automation (Magic) script and Google Spreadsheets.

Let’s start with Google Spreadsheets as that’s where we are going to be pulling in our Google Analytics data. Start by creating a new spreadsheet and going to Tools > Script Gallery. From here you’ll search for the term “Google Analytics” and look for the Google Analytics Report Automation (Magic) script, and install.

Once you’ve install the script, you’ll want to configure it. To do this, let’s go back up to the Tools > Script Editor, and once the Script Editor has loaded, let’s go to Resources > Use Google APIs. Scroll down and find the Google Analytics API; turn it on.



Before you click OK and continue, click the Google APIs Console link. This will direct you to the Google APIs Dashboard where you can create a new project and generate a new API key. Let’s create a new project by clicking the dropdown and selecting Create. Once you selected a name for your project, you’ll be directed to the Google API services page, and from here, toggle on the Google Analytics API. Once you’ve toggled it on, click on the API Access item in the left column and copy the API key.



Go back to the Google APIs Services window and paste the API key into the API Key field and click OK. *Note: you can close the Google Script Editor and Google API console windows. Viola! You’re now ready to use the Google Core Reporting API.

Building your Google Analytics Core API Report

You’ve successfully installed and configured the Google Analytics (Magic) Script. Now what?

Let’s get some data. I’m assuming you’re back at the Google Spreadsheet where you started. Refresh your browser or open a new worksheet. For some reason this is needed to trigger the new Google Analytics menu item. You should now see the new menu item: Google Analytics. Schweet, there it is.

Before I create a new report, I create a master sheet. This is where I will reference the different report (queries) sheets and format the report so it’s not just raw data. The master sheet is also where I setup the data range from where I want to pull the data from in GA (I’ll come back to this point).

Account ID (*required)

So let’s click on the new Google Analytics menu and ‘Create Core Report’. This creates your core report underneath the gaconfig spreadsheet. The first thing you’re going to need is an account ID. This is how the API knows which account to grab data from. Luckily, the (Magic) script comes with a ‘Find Profile/IDs’ option underneath the Google Analytics menu. Once your ID is in place, you’re ready to start fleshing out the rest of the report.

Start Date/End Date (*required)

PRO TIP: For both start-date and end-date, I reference the date range cells on the master sheet. (Thanks Mike!) This will save you from having to go to the gaconfig sheet and editing each query start-date and end-date individually. And believe me, once you have 30 queries, you’ll want it to be as easy as possible to edit your data.


  Screen Shot 2013-03-27 at 4.03.57 PM

Metrics (*required)

For metrics and dimension, I found the Google Analytics Dimensions & Reference guide an absolute necessity. For this example, let’s start with Visits, or ga:visitors, in Google API terms. Just about every metric in Google Analytics has a corresponding API metric, so reference the Google Analytics Dimensions & Reference frequently.

Dimension

Now, if we wanted to run the report, we could do so by going up to the Google Analytics tab and clicking Get Data, and this would return the number of visits for the date range. Kinda boring. So let’s add some dimensions to the data we’d like to pull. I’ve gone and added Country, or ga:country, in Google API terms.

Sort

By default, after we run the report, the data return is returned and sorted alphabetically. However, say we don’t want it alphabetically, we want it to sort by ascending value. Let’s add -ga:visitors to the sort query, and run the report. Note: If we wanted to sort descending we’d put ga:visitors into the sort query.

Filters

Nice. We’re getting the data we want and it’s sorted ascending. However, we’re seeing the value of (not set). We don’t want this. So let’s filter out (not set). We can do this by setting the filter to ga:country!=(not set). What this is telling GA is, that we’d like all countries that are not (not set). There are a lot of ways you can filter your metrics and dimensions outlined in Google’s Core Reporting API.

I tend to use RegEx to filter through data. However,  one issue I’ve run into is the 128 character limit, so you’ll have to get creative when you write your RegEx.

Max Results

So we’re getting our countries without the (not set) value. However, we’re seeing 127 countries returned. In this instance, 127 rows isn’t a lot; however, other queries can return up to 1000 rows, by default, and thus would slow down the time it takes to run the query. So for this example, let’s say we just want the top 10 countries.



Segment

Because a lot of the queries I have had to run have been relatively simple, I’ve only had to use the segment query once, and I was unable to get the segment work. I knew I was entering in the segment ID correctly, however when I went to get the data, it returned an error “(403) User does not have permission to perform operation for this advanced segment”.  After talking with some coworkers, I realized that I was trying to access a custom segment that was built by somebody else. So remember, that when you’re trying to access an advanced segment, make sure you have permissions.

So, continuing on with Segments, there are two ways to query segments. The first way is to use the numeric ID for that custom segment. I use the awesome Google Analytics Query Explorer 2 tool to get the ID. The second way to segment is to use a dynamic parameter query, which allows you to use expressions and operators to segment the data. For our example, let’s say we only want to get direct traffic, or gaid::-7 in Google Analytics API terms.



Start Index

This is another query I haven’t had to use quite yet. However, it would prove useful if you were looking to grab data for a specific range. For this example, let’s say we’d like to grab the range after the top ten counties i.e. eleven through twenty. *Note: The index does not start at zero, it starts at one. I started our start-index at eleven.


 

Once we have our queries, we can run our report. To do that, go up to the Google Analytics tab and click Get Data. What this does is goes to GA and gets your data. After the data has been return, you’ll see a message window like this:



This window just shows you that your query has been successful and that the script is done running. However, sometimes you’ll overlook a query, and you’ll see an error being returned in the report. For example:



The script doesn’t give you the best information for debugging your query, so what I normally do is to check that all of the metrics and dimensions are spelled correctly, or that I am actually using the correct metric. For example, when I was writing this post, I used ga:visit instead of ga:visitors. Usually the most troublesome query I have problems with is the filter using RegEx. So it’s good to test the RegEx, either in GA or using regexpal. Also, using Google Analytics Query Explorer 2 to test the query before you begin writing it does wonders for saving time.

Conclusion

So to recap, I’ve gone over how to configure Google Analytics Core API Report Automation (Magic) Script via Google Spreadsheet, and how to run your first Google Analytics Core Reporting query. In my following post next month, I’ll show you different Google Spreadsheet formulas to clean up your data and automate your Google Analytics reports.

Google Tag Manager Overview

Published October 1st, 2012 Analytics, Featured, Industry, News 17 Comments

Google Tag Manager is Here

Google publicly announced the launch of Google Tag Manager this morning at eMetrics, and we’re very excited to be GTM specialized, and to already have a deep relationship with the product. What a fantastic way to start the day, week, month, and quarter! Google Tag Manager is an exciting compliment to Google Analytics and Google’s various advertising offerings – but it stands alone as another highly-functional, incredibly beneficial, free application from the folks at Google. It will undoubtedly disrupt the tag management space – just as Google Analytics has done with the analytics space.

Evaluating Costs & Benefits

Roughly 12 months ago we began the search for a tag management solution we could implement, affordably, for all of our clients. We explored all the offerings in the space, and were incredibly impressed by some of them. However, every cost/benefit analysis would come back with a “too expensive”, except for the largest of enterprise clients – those with literally hundreds of sub-domains, the lengthiest of development cycles, and the most complicated of internal processes. For the standard large business, the truly impressive tag management solutions were not worth the cost. So we shelved the idea of isolating a solution and “partnering” with the vendor.

Beyond Container Tags – Using a Data Layer

When we first caught wind of Google Tag Manager earlier this year, we were cautiously optimistic. Creating a container tag system isn’t too complicated – creating the ability to layer data between a site and multiple data collection locations, where almost any data can be passed in, and manipulated in a myriad of ways, is complicated. Google has really created a data collection layer, that will allow marketers and site operators to structure the passing of data from their sites and applications, to virtually any 3rd party collection system. For some more ideas on how this data layer can be used, check out this post from Justin Cutroni from earlier this year.

 

Find Out If Tag Management is Right for Your Organization

SwellPath will begin implementing Google Tag Manager almost immediately for clients. If you’re wondering whether a tag management solution is something you need, just call or email us. You also can checkout the Tag Management Checklist we put together. Whether or not it is something you’re ready for, everyone in the digital marketing and analytics space should be excited for today’s news. Google once again is offering the masses enterprise-class technology at no cost, and forcing the paid vendors to step up their game. Happy tagging.

8 Simple yet Powerful RegEx Concepts for Google Analytics

Published August 21st, 2012 Analytics 48 Comments

I Know Regular Expressions

In this post, I’m going to introduce you to eight powerful RegEx concepts that you can use in Google Analytics to create better advanced segments and filters. These were chosen based on things that we at SwellPath use most to get actionable data that drives decisions. At the end of this, you should be ready to harness the power of RegEx to get that high-value site data from your GA profiles.

“Everybody stand back! I know regular expressions!”

Last week, I had the pleasure join the Portland Google Analytics User Group as a “Subject Matter Expert” teaching people about using advanced segments and filters in GA. It was a great event, with a great crowd from absolute beginners to experienced users. I brought up using regular expressions at the event and wanted to provide a post for those who are still getting their feet wet.

Using RegEx in your advanced filters and segments gives you incredible power over your data. Using the basic method, you could set up an advanced filter to look at visitors landing on blog posts from January, February, and March.

Basic multi-condition advanced segment in Google Analytics

Using RegEx, you can make that same filter using this.

Advanced Segment with RegEx in Google Analytics

Just from that super watered-down example, you can see that using RegEx has the potential to greatly simplify and power up your GA segments and filters. So without further ado, here are eight RegEx concepts that will revolutionize how you use advanced filters and segments.

#1. Pipe Dreams

One of the simplest to understand concepts in RegEx is the pipe. It looks like this: |

It’s essentially the word “or” and lets you tell Google Analytics that you want results matching this or that.

Better example: Mario|Luigi

#2. Collect Carrot, ???, Profit

Don’t get the joke in the title? Don’t worry. It’s not just you. The best kind of jokes require an explanation (#ProbablyNotAccurate).

In RegEx, we can specify exactly where we want something to appear or make certain things completely optional. By adding a caret to the beginning of a regular expression, you’re specifying that you only want results that start with that. So, using the following in the keywords report would only return searches that start with “swell”: ^swell

You can also do the other half of that: specify that you want your string to end with something. The following would return any keywords ending with “rad”: rad$

  • SwellPath is rad
  • SEO for Lauren Conrad

You can also use them both to specify you want an exact match: ^swellpath$

The last concept here is the question mark. This makes the preceding character optional. Very useful in spelling variations that have extra letters. Using the following, you could get both an exact match on “colors” or on “colours”: ^colou?rs$

Sure beats this: ^colors$|^colours$

So in this section, we covered the caret “^”, the question mark “?”, and the dollar sign “$”.

  1. Collect carrot
  2. ???
  3. PROFIT

GET IT?!

#3. Father, Mother, Sister, Brother

You can also use RegEx to define a “family” of items. You can combine parentheses with the pipe to use the “or” functionality within a larger expression. For example, the following works fine if it’s all you’re looking for: father|mother|sister|brother

But what if you want something more specific but still want to allow the freedom to catch all the family member variables? You can use parenthesis.

Visiting my (father|mother|sister|brother)

#4. To Infinity and beyond!

RegEx also lets you specify repetition. This is useful if you want to account for bad spelling: scho+l. The + sign specifies that the preceding character can occur one or more times. You can also specify that a character can occur zero times (optional), one time, or more, using the asterisk. To find an excitable text messager, just use OMF*G. You’ll get “OMG”, “OMFG”, or “OMFFFFFFFFFFG”.

Mike Arnesen at the Portland Google Analytics User Group

Photo credit: iSite Design

#5. Surprise Me

Having a “wildcard” character is always useful. The period, dot, or full stop is your wildcard in RegEx and stands for “anything”. Using it in an expression allows anything to occur in a given position. So, d.g would round up “dog”, “dig”, “dug”, or “d4g”. You can also pair the period with the asterisk. Using .* means you’ll take anything. Anything at all. Not that useful within Google Analytics, but it’s handy in other applications.

#6. Keeping it Classy

One of my favorite concepts in RegEx is character classes. Using square brackets, we can define a whole class of things that apply to the space of one character. What does that mean? Say you want to find pages in Google Analytics that start with a number. ^0|^1|^2|^3|^4|^5|^6|^7|^8|^9 is pretty lame. Using a character class, we can use ^[0-9]. The hyphen there means “through” and can be used for number or letter ranges. More commonly, you’ll specify a few letters using a character class: [kc]haos

#7. History Repeats

We covered some repetition with the addition symbol and the asterisk. The upward limit on both of those is infinity. There are a lot of situations when you need something more controlled. Using curly braces allows you to use a set number of repetitions. You can set lower and upper limits using a first and a second number between the braces. A{2,4} means you’re looking for “AA”, “AAA”, “AAAA”. You can also omit the second number to specify an exact number of repetitions. Pretty co{2}l.

#8. Don’t Even Think About It

You’ve probably noticed by now that there are a good number of characters that have a special meaning in RegEX. To use them literally, you need to tell them to not be special anymore. Characters that have special meaning are square bracket [, the backslash \, the caret ^, the dollar sign $, the period ., the pipe|, the question mark ?, the asterisk *, the plus sign +, the round bracket (.

You can precede any of these special characters with a backslash to cancel out their special meaning. If you’re looking for pages in Google Analytics that contain a query string parameter, use /? in your expression.

Quick Reference and Putting it All Together

  1. This or that
    This|that
  2. Start with, optional, end with
    ^start, options?, End$
  3. Families or groups
    (mother|father|sister|brother|direwolf)
  4. One or more, zero or more
    The+, OMF*G
  5. Wildcard
    d.g d.g
  6. Character Classes
    We’re number [1-9]
  7. Controlled repetition
    503 806 [0-9]{4}
  8. Escape Special Characters
    I need about \$3\.50

Just to provide an example of how powerful this could be, I put together a RegEx to capture all the variations of my name plus the term “SEO”.

^Mi(ke|ch[ae]{2}l).?arne+s[eo]n.*s\.?e\.?o\.?$

The following list represents a fraction of what this RegEx can grab:

  • Mike Arnesen SEO
  • Mike Arnesen S.E.O.
  • Michael Arnesen SEO
  • Mike Arnesen SEO.
  • Mike-Arnesen SEO.
  • Mike-Arnesen SEO
  • Mike-Arnesen SE.O
  • Mike-Arnesen S.E.O.
  • Mike-Arnesen S.E.O
  • Mike Arneson SEO.
  • Mike Arneson SEO
  • Mike Arneson SE.O
  • Mike Arneson S.E.O.
  • Mike Arneson S.E.O
  • Mike Arnesen sucks at SEO
  • Mike Arnesen SE.O
  • Mike Arnesen S.E.O
  • Mike Arnesen loves SEO
  • Mike Arnesen knows SEO
  • Mike Arnesen is terrible at SEO
  • Mike Arnesen is speaking at SMX East about Google Authorship and SEO
  • Mike Arnesen is great at SEO
  • Mike Arnesen has never actually done SEO
  • Micheal-Arnesen SEO.
  • Micheal-Arnesen SEO
  • Micheal-Arnesen SE.O
  • Micheal-Arnesen S.E.O.
  • Micheal-Arnesen S.E.O
  • Micheal-Arneesen S.E.O
  • Micheal-Arneeesen SEO
  • Micheal-Arneeesen SE.O
  • Micheal-Arneeesen S.E.O.
  • Micheal-Arneeeeesen SEO.
  • Michael-Arnesen SEO.
  • Michael-Arnesen SEO
  • Michael-Arnesen SE.O
  • Michael-Arnesen S.E.O.
  • Michael-Arnesen S.E.O
  • Michael Arneson SEO.
  • Michael Arneson SEO
  • Michael Arneson SE.O
  • Michael Arneson S.E.O.
  • Michael Arneson S.E.O
  • Michael Arnesen SEO.
  • Michael Arnesen SE.O
  • Michael Arnesen S.E.O.
  • Michael Arnesen S.E.O

If reading this got you interested in learning more about RegEx, there is an excellent site that will teach you everything you’ll ever need to know about RegEx. Best of luck in digging deeper into your data. If you found this post useful, let me know if the comments. Happy RegExing!


Like this post? Follow Mike Arnesen on Google+

▼ If you found this post useful or interesting, please recommend it for me below. ▼

Olympic-sized Traffic Spikes for Misty May Sunglasses or, the Online Effect of Offline Wins

Published August 1st, 2012 Analytics, Events 7 Comments

Since the London Olympics kicked off with Friday’s opening ceremony, the games have been the hot topic on everyone’s mind. Yahoo Sports estimates that 40 million viewers tuned in for that opening ceremony. If only a small fraction of that tune in at any given point over the coming weeks, that’s a lot of eyes.

If you’re reading this, you’re no doubt familiar with the habit many people have (including me) of constantly Googling stuff, via phone, tablet, or laptop while watching TV. If I see a commercial for a movie, I’m on IMDB within seconds. If I want to checkout a website mentioned in a show, I’ll get there immediately. If I see an athlete tearing it up in the Olympics, I’m looking at what Google can tell me about them. So are other people looking up information on the Olympics while they’re watching it? You bet! Are people Googling their favorite athletes WHILE that athlete is competing? Without a doubt.

The SwellPath team has the pleasure of working with Nike Vision to help drive their SEO and analytics tagging strategies. We also provide them with data about how their site performs to help them make educated decisions about what they do online. So, while watching the USA’s Misty May-Treanor and Kerri Walsh Jennings take on Natalie Cook and Tamsin Hinchley in a heated game of beach volleyball, I decided to take a look at the real-time traffic report in Nike Vision’s Google Analytics account. For those who don’t know, Misty May-Treanor is sponsored by Nike and wears Nike Vision sunglasses during her matches. I figured, “if there are millions watching this match right now, I bet some are searching for info about her sunglasses.” If you were watching the match, that Nike Swoosh was hard to miss.

When I hopped into real-time Google Analytics, I saw just what I expected to see: a huge spike in visitors, right at that very moment, checking out a blog post we optimized about Misty May signing on to Nike Vision! It was pretty damn cool. I saw this trend continue throughout the match and then saw it repeat the next time Misty took to the court.

In total, traffic to Misty May blog content on NikeVision.com received 1,121% more unique visitors between July 28th and August 2nd (6 days) than they did in all of June (30 days). Non-paid organic was up over 1696% during that same timeframe!

The Moral of the Story

The quick version is, what happens offline affects what happens online. If you have an athlete, actor, or other high profile person associated with your brand, make sure you have content on your website that can capture interested eyes when that person does something big.

During the Olympics, people were searching for “Misty May Sunglasses”. Because Nike Vision had engaging and well-optimized content about Misty on their site, nikevision.com was there waiting in Google’s #1 position to just rake in the clicks. If Nike Vision hadn’t published content about Misty in their blog (or decided to forgo having a blog altogether), their chances of owning the experience of interested searchers during this exciting time would be slimmer than {insert country you don’t care for} taking home a gold medal.


Like this post? Follow Mike Arnesen on Google+

▼ If you found this post useful or interesting, please recommend it for me below. ▼

Email Updates

Signup for our newsletter to keep up with the latest from the convenience of your inbox.

Connect with Us

Find SwellPath on the socialsphere and keep up with the latest news in our world.

  • Google Plus
  • LinkedIn
  • Twitter
  • Facebook

411 NW Park Avenue, Suite 400
Portland, OR 97209
(503) 224-9204
info@swellpath.com