In this local SEO tutorial you’ll learn how to use your Google Analytics to track visits and goals from Google Places, Google Maps, and from Universal Search. The advantage of tracking this click data is to help you understand which referrals and campaigns produced the best results for you when you’re doing your quarterly or annual campaign ROI analysis.

Tracking Google Places Data in GA

I know the first comment I’m going to get on this post is “Steve, just search for under Referrers in Google Analytics”. Yes, you can do this to get some basic data, but tell me how to use this data to figure out exactly which keyword was used in Google Maps to produce the visit. Okay, sure you can toggle over to your Google Places account and get some pretty awesome insights, but this doesn’t help you create reporting and dashboards for your management team or for quick access to holistic campaign tracking. And what about clicks from the map within Google’s Web Search results? There’s no attribution from those clicks.

So we use Google Analytics to understand which keywords, and from which placement in Google Maps and Google Places, produced a visit from our listing or from our Google Places page. The technique is fairly simple and be viewed in part at, thanks to some research Mike Blumenthal did awhile back (thanks Mike!). There are really three steps:

  1. Create a custom tracking URL using the Google Analytics URL Builder
  2. Redirect a short location-specific URL to any page you like with the custom URL appending it
  3. Create two profiles in your Google Analytics account: Maps and Universal Search

Now, here’s the long version of the steps:

Step One: Create a Tracking URL

Below is the URL to the Google Analytics URL Builder. Be sure to bookmark it:

You should create campaigns for just about any destination where you pay for advertising. The only time I recommend not using a custom URL for tracking campaigns, mediums, keywords, traffic sources or content-specific attributes is when I’m linking specifically to get keyword-rich links that I believe will improve my ranking in organic search results.

Here’s a screenshot of the tool in action and the parameters I used for tracking my visits and goals specifically from Google Places:

GIF Image of the Google Analytics URL Builder Tool

Step Two: Redirect a Location-Specific URL

This part gets a little complicated. There’s a file that exists on the root of most web servers called an .htaccess file. This file tells the browser (and the search engine robots) how to interact and use your website. If your hosting is on a Windows web server, you may need to ask for a special configuration to be able to use .htaccess. Create a redirect for every location you have a Google Places page for. Here’s the syntax:

RedirectPermanent /location Full_Path_to_Custom_URL

Go ahead and screw up my analytics by clicking this link to see how my example from the video and screenshot above redirects to the custom URL I created:

Now do this for every location, changing only the campaign name in the custom URL and redirecting URL example: >…&utm_campaign=location1 >…&utm_campaign=location2 >…&utm_campaign=location3

Step Three: Create Two New Profiles in Google Analytics

1. Start by creating a Maps profile and a Universal Search profile. See screenshots below.

Google Analytics - Setup a Profile for an Existing Domain

2. Choose Add a profile for an existing domain

Google Analytics Universal Search Tracking

3. Now for the tricky stuff. In the main Google Analytics Settings screen, click Edit next to the Maps profile.

Google Analytics Profiles

4. Scroll down to filters and click +Add Filter

Google Analytics - Add a Filter

5. Use these parameters to create your filter:

Filter Name > Maps
Filter Type > Custom Filter & Include
Filter Type > Filter Field > Referral
Filter Type > Filter Pattern > ‘’
Case Sensitive > No

Google Analytics - Create Maps Filter

6. Repeat steps 1-4 above for your Universal Search profile and use the following Filter settings:

Filter Name > Universal Search with Full URL
Filter Type > Custom Filter & Advanced
Field A -> Extract A -> Referral -> (.*)oi=local(.*)
Field B -> Extract B -> Referral -> (.*)/.*hl=([a-zA-Z-]+)&?.*q=([a-zA-Z0-9+]+)
Output To -> Constructor -> User Defined -> engine:.$B1 hl:$B2 query:$B3 oi:$A2
Field A Required > Yes
Filed B Required > Yes
Override Output Field > Yes
Case Sensitive > No

Google Analytics - Create Filter for Universal Search

With the steps above implemented, you’re now all setup to start tracking Google Places in Google Analytics and Google Universal Search data from Google Analytics. To see the data without some of the odd parameters passed in your Universal Search profile, you’re going to want to drill down in your Google Analytics account to Visitors > User Defined.

Google Analytics - User Defined Filter

Then you’ll want to use the search filter for Containing > local*.

Google Analytics - User Defined Filter for Local SEO

Questions? Feedback?

Please share your thoughts and experiences with tracking Google Places using Google Analytics or any questions you might have for me below. Thanks for reading!