This is part 2 in a series of blog posts capturing our SEO makeover for the Melete Foundation.

Following our kickoff meeting, the next step in Melete’s SEO Makeover was to optimize their web tracking.  Since measurement and analysis are key to the process, it’s critical that you set up and optimize tracking early on.  In this post, I’ll share the process I went through to do this.

Fortunately Melete already had Google Analytics (GA), our preferred tracking tool, in place when I started working with them.  When they set their site up on WordPress, they added a great Google Analytics plugin from Yoast and have been receiving data since September of last year.  Still, there were 2 critical pieces we needed to ensure that our data is accurate and actionable: goals and internal traffic exclusion.


Our aim with SEO isn’t just more website traffic, it’s more high quality traffic that takes desired actions.  The “goals” feature in Google Analytics — frequently called “conversion goals” — allows us to identify these actions and integrate them into our analysis.  The most common goals we use are 1. a visitor viewing or hitting a key page on the site (e.g. a purchase thank you page) and 2. a visitor spending a minimum amount of time on the site before leaving (e.g. 2 minutes).

With goals in place, we’re able to say that a site had, say, 200 leads or 450 engaged visits last month, which over time is a lot more meaningful than just saying they had 1,000 visits (what most companies focus on).  But the really great thing about goals in GA is that you can tie them back to traffic sources.  This allows us to be much smarter when we measure SEO results using Google Analytics; we can see which keywords send traffic that converts and which ones don’t, and then focus our future optimization rounds accordingly.

1. Identify potential goals

When I met with Melete we identified two key desired actions on their site:

  • somebody clicking the Support (donate) button on their Support Our Work page
  • somebody signing up for their newsletter, which can done at the bottom of any page via a Mailchimp widget.

Since their site traffic is light right now, and there aren’t many people taking either of these two actions, I identified two other “soft” or intermediary conversion goals that are likely to get more data:

  • somebody spending 1 minute on the site
  • somebody spending 3 minutes on the site

I chose 1 and 3 minutes after glancing through the Traffic Sources > Keyword report and looking at keywords that had only 1 visit.  This allowed me to get a sense of how long individual visits last (vs. just looking at averages which can be skewed by one really long visit — I’m sure there’s a better way to find this).  I saw that not many people last more than a 1 minute on the site.

2. Set up easy goals

The time on site goals were easy to set up.  To set up the “1 minute” goal, I just went to the GA Settings (entry) page and clicked Edit.

GA Goal Setup Step 1
Toward the bottom of the next page I clicked Add Goal.

GA Goal Setup Step 2
Then I made the selections and inputs below.

GA Goal Setup Step 3

And then I followed the same process for the “3 minute” goal.

3. Set up tricky goals

One big problem with GA goals is they can’t be used to track clicks on links or submit buttons that take a visitor to another site — what are often called “outbound clicks” or “external links.”  And for a lot of small businesses and non-profits that take advantage of 3rd party solutions for newsletters and payment collection, these types of “outbound clicks” are in fact the primary goals on their site.  That’s the case with Melete.  Their newsletter signup form takes the user to a Mailchimp-hosted page.  Their “Support” button takes the user to a PayPal-hosted page.

Since goals don’t work for outbound clicks and submits, we have to use a different GA feature: event tracking.  You find it under the “Content” section within GA.  Events can’t be tied to traffic sources the way goals can, but they are still a useful metric to have in place.  The problem is events are much, much harder to get to track than goals.   Goals are set up directly within the GA interface; you don’t have to touch the website if you already have the main GA tags in place.  With events, you have to add JavaScript code to the page at some precise spots and customize it properly.  Google’s help documentation on it is confusing (and as of this writing, somewhat contradictory), so it’s easy to get it wrong.  You have to be familiar with HTML, and you have to be persistent.  Otherwise stick with goals.

If you do want to set up events, the best place I can point you is this thread on the Google Help forum which I initiated a few months ago when I was struggling to get them to work for another project.  Now I just use the code and process that Joe from Blast Advanced Media was kind enough to provide in that thread.  Since both of the outbound clicks we wanted to track for Melete were in effect form submissions (the “Support” button doesn’t seem like a form but in terms of HTML code it is), I used the “onsubmit” variation of the code he provided, which goes inside the <form> tag.

One last note on this: if the outbound action we wanted to track for Melete had just been on clicks on links, rather than clicks on submit-style buttons, all of this would have been much easier.  That’s because Yoast has integrated the heavy-lifting described above and allows you to track outbound clicks by just checking a box (see below — found under the GA Settings in your WordPress account).  But at least in our experience, this feature didn’t pick up “submit” clicks.

Yoast event tracking on outbound clicks

Internal traffic exclusion

Internal traffic is a common cause of inaccurate data in GA.  Internal traffic for your site includes you and everyone at your company, as well as vendors and partners who are likely to visit the site often.  Especially when you are making changes to your site, you visit it often to test the changes.  If you don’t exclude this data, you can end up with a very distorted picture of your site’s performance.  (Thought it’s good to wait until after setting up goals and events to add these filters, because you may need to do some testing that you want to see in the reports; e.g. making sure event tracking is capturing your newsletter signups.)

For Melete, as with all of our projects, we use two techniques to exclude internal traffic: 1) cookie-based exclusion, which excludes traffic from individuals’ computers, and 2) IP exclusion, which excludes traffic from geo-locations.  Since neither method is perfect, we use both.

Google Help has instructions on both methods here.  The IP steps I think are a little out of date based on the way their interface now works, but they’re good enough.

To get the cookie exclusion to work, you need to add a page to your site.  Once I did that, I sent an email to the Melete team explaining what I needed them to do: click on the link that exclusion page (to get the cookie) from each computer they use, and send me their IP addresses from each place they work, which they can get at

Once I received their IPs, I went to the same place under Settings that I went to to add goals, and then added Marketade’s and Melete’s IPs.

Melete IP Exclusion

Setting up goals and internal traffic fitlers are very hard to do in one sitting, since you’re often relying on other people to click things or test things for you.  So the best way to approach web tracking optimization is to break it up into smaller steps and try to tackle it over a few days.

Up next: pre-SEO analysis.  See posts on all of our Melete SEO makeover steps so far here.