Local SEO · Complete guide
How to measure your local SEO performance, step by step
Listing views, rankings, clicks, calls: these figures don't measure the same thing. Here is a four-step method for reading them together, from visibility to conversions.
In this article 10 sections
- 01 · What to prepare before measuring your local SEO
- 02 · Step 1: read the performance report for your Google Business Profile listing
- 03 · Step 2: track your local rankings by area and by search query
- 04 · Step 3: measure the contribution of local pages with Search Console
- 05 · Step 4: link local visibility to conversions with GA4
- 06 · A worked example: the dashboard of a local shop
- 07 · Track reviews as an indicator of local reputation
- 08 · Set up a regular tracking routine and compare like-for-like periods
- 09 · Common mistakes to avoid
- 10 · Practical tips for sustainable tracking
In brief: measuring local SEO means cross-checking four sources that don't tell the same story: the report from your listing Google Business Profile, rankings tracked by area, Search Console and GA4. This four-step method helps you read them together, all the way through to calls and quote requests.
A listing with more views, a website receiving more clicks, a phone ringing less: three figures, three stories. More often than not, the problem isn't a lack of data but the lack of a framework to read it all at a glance. That is what this tutorial builds, tool by tool, including their limitations.
What to prepare before measuring your local SEO
Local SEO covers the actions that help a business appear on Google when someone searches for a shop, a service or a place nearby. It relies on the Google Business Profile listing, Google Maps and the local pages of your website. For the overall approach, you can refer to our guide to SEO local complete method google; here, we focus on checking the results.
Access and roles
Three types of access underpin everything else. You need a Google Business Profile listing verified and linked to your account, because the performance report cannot be accessed any other way. You also need a verified Search Console property for your website, and a GA4 property (Google Analytics 4, Google's audience measurement tool) already in place.
As for roles, you will need owner or manager status on the profile, and administrator or editor status in GA4. Without them, you may be able to read some figures, but you won't be able to link the tools together in step 4.
As for budget, Google's official tools are free. A tool for tracking rankings by area is optional: it becomes useful when you want to monitor several geographic areas regularly.
Objectives and scope
Before opening a single report, decide what matters for your business: calls, direction requests, quote requests, bookings. This business objective determines which indicators to keep and which to ignore.
Then draw up two short lists. The first gathers the business searches that matter to you, for example your business name combined with your town or neighbourhood. The second describes your catchment areas, that is, the areas your customers actually come from. This scope will remain fixed for the whole duration of the tracking.
Step 1: read the performance report for your Google Business Profile listing
Open your profile's performance report. It lets you track how your listing is discovered and the interactions it receives on Google Search and Google Maps, over the date range you choose. The Google Business Profile Help pages state that access requires a verified profile and a linked account.
Available metrics
The report offers views, searches, interactions, direction requests, calls and website clicks. Depending on the business, messages, bookings, products, menus or offers may be added. Only the metrics that apply to your business are displayed: a medical practice won't have menu clicks, whereas a restaurant will.
Choose complete, comparable periods, such as two full months, rather than commenting on day-to-day variations. A quiet day tells you almost nothing about the trend.
Limits to bear in mind when reading the data
A profile view does not represent every exposure of your brand on Google: it covers only the listing. Views count unique visitors according to their own rules, which is why they cannot be added up like simple impressions.
The searches that caused the profile to appear are updated at the start of the month. They can take up to five days to show up. If you read the report on the 2nd of the month, don't draw any conclusions about these searches: document this lag in your tracking.
Organic and Google Ads combined
The report aggregates organic results and Google Ads data. It therefore measures an overall local presence on Google, not pure organic SEO.
Point to watch
If you have launched a paid local campaign, an increase in calls may come from it rather than from your organic search ranking. Isolate the campaigns in Google Ads before attributing a result to SEO.
Step 2: track your local rankings by area and by search query
Set up a stable protocol: the same set of business searches, the same geographic points or areas, the same device and the same measurement frequency. Without this consistency, two readings can't be compared.
The reason lies in how Google ranks local results: relevance, distance and prominence. Distance is calculated relative to the location of the person searching, or to what Google knows about it when they don't share it. Your ranking therefore changes depending on where the search is made from. Note that this is a methodological consequence of these factors, not a specification provided by Google for tracking tools.
Building the sample of search queries
Distinguish between two types of search. The first contain an explicit geographic mention (the trade and the name of the town). The second express implicit local intent: the person types only the trade or "near me", and Google infers the location.
Keep both types in your sample, because they don't behave in the same way. Implicit searches depend more heavily on distance. The right volume depends on the diversity of your offering: aim for a sample representative enough to reflect your main activities, yet short enough to be recorded in the same way every time.
Choosing the measurement areas
Choose points that are representative of your catchment area: the neighbourhood of your premises, neighbouring areas, and a few more distant points where you want to be visible. Measuring only from right outside your door flatters the result.
Record these points precisely and keep them identical. Changing area between two readings is tantamount to changing your measuring instrument.
Calculating a coverage rate
A single ranking does not represent a business's local performance. Instead, report the share of combinations (search + area) where your business appears in the local pack, the block of three listings with a map, or in Maps.
The formula is simple: the number of combinations in which you are visible, divided by the total number of combinations tested. Then compare this coverage between two comparable periods. Avoid concluding that there has been general progress on the basis of a single search carried out from a single location.
Step 3: measure the contribution of local pages with Search Console
Open the Search Console performance report. It provides clicks, impressions (the number of times you appear in results), CTR (click-through rate, i.e. clicks relative to impressions) and average position, broken down by query, page, country and device.
Please note
Search Console measures links to your website in Google Search. Calls, directions or messages made directly from the listing don't appear there: they belong in the listing report.
Isolating local queries and pages
Filter or group the queries with local intent, then the area, town or branch pages. Then compare two periods of equal length.
Look out for two profiles. First, pages with high impressions but a low CTR: they are seen but rarely chosen, often because of an unengaging title. Second, pages that are consistently losing clicks or position, which should be monitored over several periods rather than a few days.
Keep a privacy limitation in mind: some queries are truncated or hidden. The totals may therefore not match the sum of the filtered rows.
Reading average position correctly
Average position is a diagnostic indicator. Google recommends not focusing too much on absolute position: impressions and clicks are the ultimate measures of success in search.
Read it alongside impressions, clicks and CTR. A falling average position may simply indicate that your page is appearing for more searches, including less direct ones. On its own, it is misleading.
Step 4: link local visibility to conversions with GA4
The listing and Search Console stop at the door of your website or premises. GA4 lets you track what happens next, provided you configure it carefully.
Linking the listing to GA4
Google lets you link one or more Business Profiles to a GA4 property. In GA4 Admin, use "Google Business Profile links" and select the profiles you manage. You need an administrator or editor role in GA4, and an owner or manager role on the profile.
Interactions (website clicks, calls, directions, messages, bookings, menu clicks) can then be shared with GA4. But this sharing does not by itself prove that an interaction became a customer or generated revenue.
Defining key events
Actions with business value carried out on the website are collected as GA4 events: form submission, quote request, sign-up, purchase, click on a call button or appointment booking configured as an event. Create or identify the event, test it, then mark it as a key event when it represents an important outcome.
Any collected event can be marked as key. The quality of your measurement therefore depends entirely on the quality of the configuration: a badly triggered event produces false conversions.
Clicks, sessions and conversions: don't confuse them
A Search Console click corresponds to a click from a Google result. A GA4 session corresponds to a period of interaction on the website. The two values can differ even when the trends are consistent, and they shouldn't be added together.
Compare trends using the same country, device and date filters in both tools, bearing in mind the slight data delay in Search Console. The two are complementary: Search Console is the reference for performance in Google Search, GA4 for behaviour on the website. Then attribute forms, sales or other key events to the organic channel in GA4.
A worked example: the dashboard of a local shop
Let's take a fictional bakery and patisserie with a single site, which also sells cakes to order. All the figures below are illustrative: they come from no study and are not market benchmarks.
The starting figures
We compare two full months. The rank-tracking sample covers six searches (three that mention the town or city, three implicit ones) checked from five areas, giving thirty combinations.
Metric | Source | Month 1 | Month 2 |
|---|---|---|---|
Profile views | Google Business Profile | 4,200 | 4,650 |
Calls from the profile | Google Business Profile | 96 | 112 |
Coverage (combinations where the bakery is visible) | Rank tracking | 12 out of 30, or 40% | 15 out of 30, or 50% |
Local page impressions | Search Console | 8,400 | 9,700 |
Local page clicks | Search Console | 310 | 355 |
Local page CTR | Search Console | approximately 3.7% | approximately 3.7% |
Quote requests (key event) | GA4 | 14 | 17 |
Interpretation and decisions
Coverage is rising, and so are impressions: the bakery is visible for more searches and in more areas. Yet the CTR is holding steady. More people are seeing the pages, but the proportion who click has not changed.
The next step is clear: rework the titles of the local pages to make them more engaging. Calls from the profile and quote requests are up, which points in the same direction, although we cannot draw a firm causal link. Next month, we will check whether the CTR moves.
Here is the dashboard template to replicate, with one row per metric.
Metric | Source | Frequency | Reference period | Comment |
|---|---|---|---|---|
Profile views and calls | Google Business Profile | Monthly | Previous full month | Mix of organic and Google Ads |
Coverage rate | Rank tracking | Fixed frequency of your choice | Same sample, same areas | Note any change in method |
Local page clicks, impressions and CTR | Search Console | Monthly | Comparable month | Query data is partial |
Quote requests | GA4 (key event) | Monthly | Comparable month | Check that the event has been tested |
Track reviews as an indicator of local reputation
Track the number of reviews, the average rating, recent reviews and your response rate or response time. Set these figures alongside your periods of visibility and your actions on the profile: a spike in reviews that precedes a rise in calls is worth noting.
Google states that more reviews and positive ratings can help local ranking, while helpful replies can help a business stand out. No effect is guaranteed, and reviews alone cannot explain a ranking, which also depends on relevance and distance. Finally, bear in mind that reviews from third-party sources may appear on the profile.
Set up a regular tracking routine and compare like-for-like periods
Keep a recurring dashboard with a consistent reference period. Log every change made to the profile or the website in it: this is what will let you explain a variation later. Google Business Profile lets you choose a date range, and Search Console lets you compare periods, pages, devices and countries.
Compare genuinely like-for-like periods. Take account of seasonality, promotions, changes in availability, Google Ads campaigns and data reporting delays.
A realistic rhythm is enough: a monthly review of the profile and Search Console metrics, and a ranking check at a fixed frequency, always following the same protocol.
Common mistakes to avoid
Commenting on a single position or a daily fluctuation: favour coverage and full periods.
Attributing results solely to organic SEO profile views and actions, even though Google Ads is aggregated in them.
Changing searches, areas or devices between two measurements, which makes the comparison misleading.
Adding together Search Console clicks and GA4 sessions: these are two different measurements.
Treating average position as a standalone goal, without the clicks or the impressions.
Marking key events that haven't been tested: you will end up with conversions that aren't real ones.
Practical tips for sustainable tracking
Limit the dashboard to a handful of metrics per block: visibility, actions, traffic, conversions. Beyond that, people stop reading it.
Document the method (sample of searches, areas, device, frequency) so that it can be reproduced exactly, including by someone else.
Annotate changes to your profile, local pages and campaigns, so that you can link each variation to a known event.
Prioritise actions based on the gaps you observe: pages with a low CTR, uncovered areas, interactions that don't turn into enquiries.
Key takeaways
Each tool measures a different stage: the profile, rankings, the click through to the website, the conversion. A good dashboard brings them together without confusing them.
Reliable local tracking doesn't chase the spectacular number: it keeps the same method for long enough for the gaps to become readable, then turns each gap into a decision.
FAQ
Local SEO covers the actions that help a business appear on Google when someone is searching for a shop or service nearby. It relies on the Google Business Profile, Maps and the local pages of the website.