Reporting

Local SEO reporting: what to add for a business with a map listing

What a local SEO report adds to a normal SEO report: Business Profile actions, map rankings from a grid, reviews and tagged profile traffic, with caveats.

// in this article

A local SEO report is a normal SEO report plus four things: what people did on the Google Business Profile (calls, direction requests, website clicks), where the business shows on the map across its service area, how its reviews are moving, and how much website traffic came from the profile itself. Everything else, leads from search, Search Console clicks and the work plan, stays the same.

The hard part isn’t collecting those numbers. It’s knowing what each one actually counts, because the Business Profile figures mix in ads, count taps rather than phone calls, and update on different schedules. This guide covers what to add, where each number comes from, and the footnotes that stop a client from reading too much into it. All of it was checked against Google’s own help pages and API reference in November 2026.

Start from a normal SEO report

If you don’t have a monthly report yet, build that first. Our SEO reporting template covers the seven sections every report needs: a short summary, leads from organic search, Search Console visibility, non-branded growth, what moved, site health, and the work and plan. A local report keeps all seven and slots the local sections in after the leads section, because for a plumber or a dentist, a call from the map listing is a lead too.

local_01 Profile actions calls, directions, clicks
local_02 Profile searches name vs service terms
local_03 Map coverage rank grid, 2 to 3 terms
local_04 Reviews new, rating, replied
local_05 Profile to website tagged visits and leads
fig 1 · the five local sections that go after the leads section of a normal monthly report

Where each local number comes from

Number Source How it counts Watch out for
Calls Business Profile performance report Taps on the call button Not answered calls; includes ad clicks
Direction requests Business Profile performance report Requests for directions Includes ad clicks
Website clicks Business Profile performance report Clicks on the website link Includes ad clicks
Profile views Business Profile performance report Unique people, once a day each Includes views from ads
Search terms Business Profile performance report or API Terms that showed the profile Monthly only; small counts hidden
Map rankings A rank grid tool Position from many points Only as good as the points you pick
Visits and leads from the profile GA4, with a tagged website link Sessions and key events Needs UTM tags set up first

Section 1: Business Profile actions

Open the profile’s performance report. Google lists what it can show: interactions, searches, views, direction requests, calls, website clicks, messages, bookings, and a few business-specific ones such as menus and products. Only the metrics that apply to the business appear (Google’s performance report help).

For most service businesses, three of those are worth a line each: calls, direction requests and website clicks. They are the closest the profile gets to a lead. Views and interactions are useful context but shouldn’t be the headline.

Three footnotes from Google’s documentation belong in your report, once, in small print:

  • Ads are mixed in. Google says performance data “includes views, searches, and actions from both organic search results and Google Ads.” If the client ran Google Ads that month, the profile numbers are not purely SEO. Ask before you take credit.
  • Calls are taps, not conversations. The Business Profile Performance API defines the calls metric as “the number of times the business profile call button was clicked” (DailyMetric reference). A tap that goes to voicemail or hangs up still counts. If the client’s phone system logs answered calls, that number is the better one to quote.
  • Views count people, not page loads. Google counts each person once a day, so a customer who checks opening hours three times on Monday is one view.

Compare each action with the same month last year as well as last month. Local demand is seasonal: an HVAC company’s calls in July say little about August.

Calls (taps on the call button)84
Answered calls in the phone log61
Booked jobs from those calls22
fig 2 · a made-up roofer's month: taps, answered calls and booked jobs are three different numbers. Illustrative, not measured data.

If you can get the last two numbers from the client, report all three. If you can only get the first, call it “call button taps” in the report so nobody mistakes it for booked work.

Section 2: what people searched to find the profile

The Searches part of the performance report lists the terms people used when the profile appeared. Google updates it at the start of each month, and it can take up to 5 days to show up, so this section always describes last month, not this one.

The useful split is name searches against service searches. If most terms are the business name or a misspelling of it, people only find the profile when they already know the business. If “emergency plumber” or “water heater repair” appear and grow month on month, the profile is winning new customers. One line covers it: “Searches for services, not our name, rose from 30% to 38% of the list.”

If you pull the numbers through the Business Profile API, the search keywords endpoint returns monthly impressions per term, and for small terms it returns a threshold instead of a count, which the API reference describes as meaning “the actual value is below this threshold.” Report those as “under N”, never as N.

Section 3: map coverage from a rank grid

A single rank check (“we’re third for plumber”) is close to meaningless in local search, because Google ranks map results on relevance, distance and prominence, and distance is “how far each business is from the customer who’s searching” (Google’s local ranking help). The same search from two streets away can give a different top three.

A rank grid fixes that. It runs the same Maps search from a grid of points around the business and records the position at each one. We built one into an open source app and wrote up how a rank grid works and what a scan costs; paid local rank trackers sell the same idea.

✕ One rank from one spot
"plumber": position 3
checked from the office
last month: position 4
no idea where it drops off
✓ Coverage across the area
"plumber": top 3 at 11 of 25 points
last month: 7 of 25
weak: east side, past the river
next: east side service page
fig 3 · the same made-up plumber reported from one spot and from a 5 x 5 grid. Illustrative, not measured data.

To keep this section readable:

  • Track two or three money terms, not twenty. Pick the services that bring the most revenue, in the words customers use.
  • Keep the grid identical every month. Same center, same size, same spacing, same day of the month. Change any of them and the comparison breaks.
  • Report one number per term: how many points the business is in the top 3 at. A count out of 25 is easy for a client to follow from month to month.
  • Show the map once, then say where it is weak and what you will do about it.

Section 4: reviews

Google says “more reviews and positive ratings can help your business’s local ranking” (local ranking help), and reviews are what customers read before they call. Four numbers cover it: new reviews this month, total reviews, average rating, and how many of the new ones got a reply.

The reply count is the one the client can act on. Owners and managers reply from the profile’s Read reviews screen, only on verified profiles, and Google checks each reply against its content policies first: it says replies “usually take up to 10 minutes to review, but sometimes a review can take up to 30 days” (Google’s review reply help). If a reply you sent isn’t showing yet, that is why.

Skip “sentiment scores” from review tools unless the client asks. Quote one useful review in full instead, good or bad, and say what it tells you.

Section 5: traffic and leads that came through the profile

Website clicks in the performance report tell you someone left the profile for the site. They don’t tell you what that person did next. For that you need GA4, and there are two ways to get it.

Tag the website link. Add UTM parameters to the website URL on the profile. Google’s Analytics help says you “should always use utm_source, utm_medium, and utm_campaign” (URL builder help). A common setup is:

https://example.com/?utm_source=google&utm_medium=organic&utm_campaign=gbp-listing

Using organic as the medium keeps these visits in GA4’s Organic Search channel, which matches any session where the medium “exactly matches organic” (default channel group). The campaign name then lets you split profile visits from ordinary web results in the Traffic acquisition report, and see their key events: form fills, quote requests, clicks on the phone number. Link straight to your own page with the tags on the end. Google’s Business Profile guidelines say not to use URLs that redirect or refer users to other landing pages, so skip link shorteners.

Link the profile to GA4. GA4 can now import Business Profile metrics directly. Once linked, a Google Business Profile collection appears in your reports with interactions, website clicks, calls, directions, messages, bookings and menus (Google’s GA4 linking help). You need Editor or Administrator on the GA4 property and Owner or Manager on each profile. The limits matter for reports: data only covers the last 6 months, metrics from several linked profiles are added together with no way to split them by location, and you can’t use them in explorations or comparisons. It is handy for one location. For a multi-location client, pull each profile’s numbers separately.

How to build the local report each month

  1. Set up once. Add UTM tags to every profile’s website link, mark leads as key events in GA4, and save the rank grid settings for each money term.
  2. Wait for the data. Search terms land at the start of the month and can take 5 days, so run the report on the 6th or later.
  3. Pull the profile numbers. Calls, direction requests and website clicks against last month and last year, plus the share of service searches.
  4. Run the grid. Same terms, same grid, and note the top 3 count for each.
  5. Count reviews and replies. New reviews, rating, unanswered ones.
  6. Read GA4. Sessions and key events from the tagged profile link.
  7. Write the summary. Three sentences on what changed, why, and what you need from the client.

Step 7 is the one that keeps the client reading. A business owner wants to know whether the phone rang more and why. “Map coverage for ‘plumber’ went from 7 to 11 points after the new east side page, and calls rose by 12” answers that. If you want the numbers to arrive without copy and paste, our guide to automating SEO reporting shows how to schedule a Data Studio report and log monthly figures to a sheet.

step_01 Tag and track UTM link, key events, grid saved. once
step_02 Wait Search terms can take 5 days. 6th or later
step_03 Collect Profile actions, grid, reviews, GA4.
step_04 Write Did the phone ring more, and why.
fig 4 · the monthly local reporting routine, from setup to the written summary

What to leave out of a local report

  • Citation counts. “Listed on 84 directories” says nothing about results. Report a citation only when you fixed a wrong address or phone number on one that matters, such as the ones in our list of directories worth your time.
  • Total profile interactions as the headline. It adds calls, clicks and direction requests together, which hides which one moved.
  • Rankings from a single point. See section 3.
  • Photo view counts. Nice to know, and nothing the client can act on.

FAQ

What should a local SEO report include?

Leads from organic search, then Business Profile calls, direction requests and website clicks, the share of profile searches that are for services rather than the business name, map coverage from a rank grid for two or three terms, new reviews and replies, and a short written summary with next steps.

Is Google Business Profile data enough to measure local SEO?

No. It shows what people did on the profile, but it mixes in Google Ads activity, counts call button taps rather than answered calls, and says nothing about what visitors did on the website. Pair it with GA4 data from a tagged profile link and, if possible, the client’s own call log.

How do you track local SEO rankings?

Use a rank grid that runs the same Google Maps search from many points around the business, because Google ranks map results partly on the searcher’s distance from the business. Keep the grid settings the same each month so the results compare.

How often should you send a local SEO report?

Monthly suits most local businesses. Run it on the 6th or later, because Google updates profile search terms at the start of each month and says they can take up to 5 days to appear.

The short version

Keep the normal SEO report and add five local sections: profile actions, profile searches, map coverage, reviews, and tagged traffic from the profile. Footnote the ads overlap and the difference between call taps and calls once. Then write the three sentences that say whether the phone rang more, and why.

Portrait of Liam Fraser
// written byLiam FraserSEO specialist with 3 years of experience. Liam writes about what works in local, technical and AI search.About SerpSurfers →