Select Page


You’ve invested time and effort into your local search efforts and want to see how well your work is helping your or your client’s business.

What do you look at?

Rankings from searches you do?
Rankings from a rank tracking tool?
Google Analytics traffic?
Google Analytics events tied to organic traffic?
Google Search Console?
Google My Business Insights?
New business?
Phone Calls?

That’s quite a list.

I have one simple belief when it comes to tracking. Rankings and traffic don’t pay your bills, new customers do. The single goal of any local SEO campaign is to get more leads that turn into new customers.

Bully for you showing your pretty graph from a third-party tool that shows traffic is up and to the right. Show me first-time phone calls and form submissions.

That doesn’t mean rankings and traffic should never be looked at, I’ll go into this later.


local SEO call tracking

For call tracking, CallRail is my go-to. There are a lot of other call tracking providers and I know another popular provider is CallTrackingMetrics. Feel free to compare them and pick the one you like.

When you’re setting up call tracking, you want to be tracking phone calls from Organic Search and Google My Business. I’m not going to rehash content that’s already written on how to implement CallRail, here’s their support article on getting started.


Google My Business shows phone calls, why use call tracking?
Google My Business is wrong and when it comes to phone calls, it only counts mobile click-to-calls. There are other reasons but that’s for another day.
After you create a local call tracking phone number for Google My Business, you’ll want to use it as your Primary phone number. Take your real phone number and add it as an additional phone number. Save changes and you’re done.




Google My Business also shows website visits but it’s not very accurate.
In order to track correctly, it’s preferred to add UTM tracking codes.

tracking Google My Business traffic


Website URL: Your website
Campaign source: google
Campaign medium: organic
Campaign name: maps
Or, you can simply grab the UTM code below:

You should add the UTM tracking code to your website. If you have an appointment URL, add it there, too, but you may considering adding an additional parameter to track appointment URL clicks. Here’s what that UTM code can look like:
If you have Products on your Google My Business listing, you should add UTM tracking codes to them, too.
You can swap out appointment for product in the above UTM tracking code but you should differentiate each product and name it accordingly.

You’ll now start to see accurate data showing up in Google Analytics and Google Search Console.


There are several ways to track form submissions in Google Analytics. We prefer to use Google Tag Manager.

Here’s a step-by-step guide on how to use GTM to track form submissions:

  1. Go to GTM, click Sign in to Tag Manager
  2. A new tab will likely open, with your personal Gmail account, so use the top right button (profile picture) to switch to the Gmail account associated with your Google Tag Manager account
  3. Find the account you’re looking for, and click on the hyperlink associated with it
  4. On the left bar, you’ll see Overview, Tags, Triggers, etc. Click on Variables
  5. Click Configure in the Variables tab
  6. A pane will slide out from the right, scroll down until you see Clicks
  7. Click the box next to Click Element, Click Classes, Click ID, and every other Click Variable
  8. Click the X in the top left to exit: What we’ve done so far is make Google Tag Manager track any time a user clicks on the site. This allows us to see the variables affiliated with particular links, buttons, form elements, and so on.
  9. On the left sidebar, click on Triggers
  10. Click New and within Trigger Configuration, under Click, select All Elements
  11. In the top left, you can name this Trigger; I typically name it Generic Click Trigger
  12. Click Save
  13. After saving, you’ll be able to Submit (button in top right, blue)
  14. Once you Submit the Tag configuration, you can go to Overview, and click Preview in the top right. This will allow you to navigate to the website, and click on elements which will populate in the preview window.
  15. Once you find the element you’d like to track, click on it (I usually middle-click so it doesn’t navigate away from the page), and take note of any unique variables associated with it in the preview window
  16. Once you find unique variables, you can create new Triggers to activate a tag. The Click triggers are typically best for this, but instead of All Clicks under Trigger Configuration, select Some Clicks. Then, you can select the variable in question (Click Text, Classes, Element are usually a sefe bet)
    Google Tag Manager example form trigger
  17. Now, to create a tag. Like before, click New, but this time you’ll need to assign Tag Configuration and Triggers: For Triggers, just select the one you created prior.
  18. For Tag Configuration, 99% of the time you’ll want to select Google Analytics: Universal Analytics
  19. For Track Type, we want Event, which will change the options to include Category, Action, Label, and Value
  20. I typically set Category to Form, Action to Submit, Label to Page URL (click the little +LEGO), and all that’s left to do is: under Google Analytics Settings, create a Google Analytics variable equal to the Analytics script on the site, publish, and test!

Form tracking in Google Tag Manager

After you have finished setting up this tracking, you can marry the data into one report at Google Data Studio. I’ll have a post on how to set that up at a later date.

Now, should you be looking at rankings and organic traffic? Sure.


There are a lot of local SEO tools out there that offer local rank tracking. Here are my favorites:

When setting up rank tracking, it’s important how you set up locations. How you rank in one zip code might be entirely different in another.
When setting up locations, stick to zip codes, not individual cities.
When setting up your keywords, use both city-specific and non-city-specific versions.