Why Search Console doesn't show all your local searches
Google leaves rare searches out of the Search Console query table to protect privacy, but still counts them in your totals. Local searches (a suburb, a street, a very specific job) are exactly the rare ones, so a local site can see well under half its clicks attached to a named search. This post explains anonymised queries, row limits, data delay and tagged Business Profile links, shows how to work out the hidden share yourself, and how SearchOps reports it.

Search Console does not show all your local searches because Google deliberately leaves out searches that very few people make, to protect the privacy of the people who made them. Those searches still count in your total clicks and impressions, but they never appear as rows in the query table. For a local business that matters far more than it does for a national brand: searches that name a street, a town or a very specific job are exactly the rare, small-volume searches that get held back. On top of that, the table has row limits, the data arrives a few days late, and some clicks land on page addresses you might not expect. None of this is a fault in your setup, and you can measure the gap yourself in a few minutes.
Why some searches never appear: anonymised queries
Search Console's Performance report has two views of the same data. The chart at the top shows totals for the whole site. The table underneath breaks those totals down by query, page, country and so on. The two do not always agree, and the main reason is privacy.
Google calls them anonymised queries: searches that were not made by more than a few dozen people over a two to three month period. The actual text of those searches is never shown in the table or returned by the API. Their clicks and impressions are still counted in the chart totals, as long as you have not applied a query filter.1 The troubleshooting guide for the report lists the same thing plainly: rare results are omitted from the query table but included in the chart totals.2
So when you add up the query rows and get a smaller number than the headline figure, you have not lost any data. The difference is real traffic from searches Google counted but chose not to name.
Why local businesses lose the most
A national retailer gets thousands of people searching the same few phrases. A local business gets a long scatter of searches, each made by a handful of people. Think about how people actually look for a plumber, a dentist or a dermatologist:
Searches Google usually names
- •Your business name, if it is searched often enough
- •Broad service plus city: 'dentist leeds', 'emergency plumber manchester'
- •Common 'near me' searches for your main service
Searches Google often keeps back
- •Service plus a small suburb or street: 'dentist chapel allerton'
- •Very specific jobs: 'replace thermostatic radiator valve same day'
- •Long, question-style searches: 'can I get a mole checked on a saturday in london'
- •Misspellings, local nicknames and searches in another language
Each search in the right-hand column might be made a few times a month. Individually they fall under the privacy threshold. Together they can be most of your search traffic. The more local, specific and ready-to-buy a search is, the more likely it is to be hidden, which is unhelpful, because those are often the searches that turn into calls and bookings.
About 80%
of clicks kept back
A single-service clinic site, 28 days to 26 October 2026. Nearly 2,000 named searches still only accounted for about one click in five.
About 60%
of clicks kept back
A larger multi-service clinic site, same window. More traffic, but still most clicks came from searches Google did not name.
2 to 3 days
usual delay
Before collected data appears in the Performance report.
Those two figures are from our own reading of two client sites through the Search Console API, not an industry average, and your share will be different. The pattern is what to take away: on a local site, the named query list is a minimum, not the whole picture.
The other reasons your numbers do not add up
Privacy is the biggest gap for most local sites, but it is not the only one. When you are trying to reconcile figures, work through these in order.
- 1
Anonymised searches
Biggest gapCounted in the totals, missing from the query table. Usually the main reason the rows fall short on a local site.
- 2
Row limits
Large sitesThe report table and its export stop at 1,000 rows. The API returns up to 25,000 rows per request and does not promise every row, only the top ones, with a daily ceiling of 50,000 rows per site per search type.13 A typical single-location site rarely reaches the API ceiling, but the 1,000-row interface export is easy to hit.
- 3
Property versus page counting
Small differencesThe chart counts by site, so two of your results on one search count as one impression. Grouped by page, each page counts on its own, so page totals can come out a little higher than the site total.4
- 5
Time zone
Day edgesDaily figures are labelled in Pacific Time, so a UK day and a Search Console day do not line up exactly.2
Business Profile clicks can show up as their own page
Many local businesses add a campaign tag (a UTM tag) to the website link on their Google Business Profile, so the visits are easy to spot in Google Analytics. A side effect surprises people: in Search Console, the tagged address can appear as a separate page, query string and all, for example /?utm_source=google&utm_medium=organic.
Search Console normally reports clicks against the canonical version of a page, but its documentation notes that in some cases data is assigned to the actual address instead.5 On one multi-location client site we checked in October 2026, the tagged profile link was one of the site's biggest pages by clicks, with a far better average position than the plain home page, because it was the address people clicked from the map pack and the profile panel in Google Search.
How to estimate your hidden share yourself
You do not need any tool for a first estimate. The idea is simple: get the true total, get the sum of every search Google names, and compare them.
- 1
Get the true total, with no grouping
In the Performance report, choose web search, pick a date range that ends at least three days ago, and note the total clicks and impressions shown above the chart. Do not add a query filter. Through the API, the same number comes from a request with no dimensions. This total includes the searches Google keeps back. - 2
Add up every named search
Open the Queries tab and export it, then sum the clicks and impressions columns. If the export hits 1,000 rows, your sum is short for two reasons at once, so use the API with the query dimension and page through the results until no rows come back. - 3
Work out the share kept back
Kept back share = (total minus named sum) divided by total. Do it for clicks and impressions separately: clicks are usually the bigger gap, because rare, specific searches tend to be the ones people act on. - 4
Repeat over 90 days and over time
Thirty days of a small site can be noisy. Ninety days gives a steadier figure. Recheck each quarter: if the share grows, more of your traffic is coming from long, specific searches, which is often a good sign.
What you can still learn about the hidden searches
You cannot recover the words of an anonymised search, but you can get closer to them.
- Look at pages instead of queries. Page totals include traffic from anonymised searches, so a suburb or service page still shows its real clicks even when the searches behind it are hidden.
- Filter long searches at the source. A query filter or regex applied in Search Console is run by Google before the row limit, so it finds long-tail rows a plain export would have cut off.
- Use 90 days rather than 28. Rare searches are more likely to show up at all over a longer window.
- Read your Business Profile's search terms alongside Search Console. They are a different view of how people found you on Google, reported monthly.
- Check where you actually appear on the map for the searches you care about, rather than waiting for them to show up as rows.
How SearchOps handles it
SearchOps connects to Search Console read-only and uses it as evidence of the searches that already bring you customers. A few parts of it are built specifically around the gaps in this article.
- 1
It tells you how much Google kept back
The Long searches and questions view on the Queries page asks Google for the site's total with no grouping, sets it against every search Google names, and shows the difference as "Kept back by Google", the share of your impressions from searches Google did not name. When there are too many searches to work it out properly it says "Unknown" rather than guessing. - 2
It finds long searches at Google's end
Long searches and questions are matched by a filter sent to Google, so the rows a capped export would drop are still found. You can tick the ones that read like questions and turn them into prompt ideas for LLM Visibility. - 3
It reads your tagged profile link per branch
The Locations view finds Business Profile links that carry a campaign tag (ours or one you added earlier) and shows each branch's profile website clicks in Google Search, the searches that showed it and its average position, beside the profile's own numbers. If a profile is not tagged yet, it can draft the tagged link for you to review and approve. - 4
It fills the gap with what Search Console cannot see
Search Console only covers Google Search. Geo-grid scans show where you appear in Google Maps, Google Search and Google AI Mode across your area for the searches you choose, whether or not Google names them in your query report.
You can also ask ChatGPT or Claude about your Search Console data through our MCP server. Whichever way you look at it, the rule is the same: totals come from the full figure, and the list of searches is a minimum. To see which plan includes what, head to pricing.
Frequently asked questions
Is my Search Console set up wrong if the queries do not add up?
Almost certainly not. A gap between the chart total and the sum of the query rows is expected, and on local sites it is often large. It comes from anonymised searches, row limits and the way totals are counted, not from your verification or tracking code.
Can I see the anonymised searches anywhere?
No. Their text is withheld everywhere: in the report, the export and the API. Their clicks and impressions are counted in totals and in page-level figures, which is why looking at pages is often more useful than looking at queries for a small site.
Does the bulk data export to BigQuery show the hidden searches?
It gives you all the performance data available for your property with the exception of anonymised queries.6 It takes away the row limits, but for most local businesses the privacy gap, not the row limit, is the problem, so it rarely changes the picture.
Why do my page totals come to more than my site total?
When data is grouped by page, each page is counted separately, so one search that showed two of your pages counts twice. The site total counts it once. A small difference in this direction is normal.4
Should I remove the campaign tag from my Business Profile link?
No. The tagged page is the clearest view Search Console gives you of your profile's clicks in Google Search. Report it alongside your home page rather than merging or removing it.
Why do the last few days look low?
Data usually takes 2 to 3 days to arrive and the newest figures can still change. End your date range three days ago when you compare periods.2
The short version
Search Console counts every search but only names the ones enough people make. Local searches are small, specific and numerous, so a local business often sees well under half of its clicks attached to a named search. Take your totals from the full figure, work out your kept-back share once a quarter, watch your tagged profile link as its own page, and use page figures and map scans to see what the query list cannot.
Keep reading
References
Every claim above that rests on someone else's work is marked inline and listed here, with a link to the original where we link out. Links last checked 1 Nov 2026.
- 1.Google Search Central Blog (19 October 2022). A deep dive into Search Console performance data filtering and limits. Defines anonymized queries as those not issued by more than a few dozen users over a two-to-three month period; they are omitted from tables but included in chart totals unless you filter by query. Sets out the 1,000-row export limit in the interface and the API ceiling of 50,000 rows per day per site per search type. Checked 1 Nov 2026.
- 2.Google Search Console Help. Performance report (Search results): Troubleshooting data discrepancies. Lists table row limits, anonymized (rare) queries and aggregation differences as reasons chart and table totals differ, and states collected data is usually available in 2 to 3 days. Checked 1 Nov 2026.
- 3.Google for Developers. Search Analytics: query (Search Console API). The API does not guarantee to return all data rows but rather top ones; rowLimit runs from 1 to 25,000 with a default of 1,000. Checked 1 Nov 2026.
- 4.Google Search Console Help. Performance report (Search results): Overview and basic setup. Chart data is aggregated by property, table data by page when grouped by page; the newest data can be preliminary and change in the next few hours. Checked 1 Nov 2026.
- 5.Google Search Console Help. What are impressions, position, and clicks?. Data for variations of a page is assigned to the canonical URL Google selects, although in some cases it might be assigned to the actual URL. Checked 1 Nov 2026.
- 6.Google Search Console Help. About bulk data export of Search Console data to BigQuery. The export includes all performance data available to Search Console for the property, with the exception of anonymized queries. Checked 1 Nov 2026.


