Measurement & Reporting · 7 min read · September 26, 2026 · Hafsa Tariq, gaash.ai
Last year's painting jobs by town, beside the AI answers for each
Set last year's jobs, counted by town, beside what AI answers say about you in each town. Where you painted and are named, the two agree. Where you painted and are missed, check whether the town appears where your area is written; where you are named for a town you left, look for what still names it, starting with the Business Profile's service area and your markup's areaServed.
Start from the towns you painted in, not the towns you list
The reading needs something true to hold the answers against, and a painting company has it in its books: last year's jobs, by town. Count them from your invoices, town by town and by kind of work: [n] exteriors in [town A], [n] interiors in [town B], one set of cabinets in [town C]. Add the towns where you gave estimates and did no work, and the towns you have stopped working in, with the year you stopped.
Only then open the places your area is written: the towns list on your site, areaServed in your structured data, the service area on your Business Profile, and each directory profile you know of. Those say where you claim to work. The job list says where you did. The gaps between the two are what the afternoon is for.
One question per town, built from the work you did there
For each town with jobs, ask about the work you did most there, in the words a customer would type: "who paints stucco exteriors in [town A]", "interior painters in [town B]". For each town you left, ask the question with your name in it: "does [company] still paint in [town C]?" For a town where you only quoted, use the job question for the work you quoted. Then add two or three towns near your edge where you have never worked.
Word each prompt the same way in every town, ask it in a new conversation with web search on where there is a choice, and name the town instead of writing "near me". Paste each answer into the sheet with its date, the assistant and any sources it showed. One run of each question in ChatGPT, Claude, Gemini and Perplexity keeps a check of [ten] towns to an afternoon.
The job map beside the answer map
Put the two maps in one sheet, a row per town. The left side comes from your books; the right side is what the answers said, and what they cited.
| Town | Jobs last year | Work done there | Named | What the answers said and cited | Reading |
|---|---|---|---|---|---|
| [Town A] | [n] | Exteriors, interiors | [3] of [4] answers | "[exterior painting in (town A)]"; [your exterior page] | Agrees |
| [Town B] | [n] | Cabinets | [0] of [4] | [two other companies]; [a directory] | Painted there, missed |
| [Town C] | None since [year] | Interiors until [year] | [2] of [4] | "[serves (town C)]"; [your Business Profile] | Left, still named |
| [Town D] | None | Never worked there | [1] of [4] | "[covers (county)]"; [a directory profile] | Never worked there, named |
| [Town E] | [n] estimates, no jobs | Exteriors quoted | [0] of [4] | [no company from your area] | Quoted there, missed |
Sort the gaps by last year's count. A town with [n] jobs that no answer names you in is a bigger gap than a town with one job, and a town you left [n] years ago that answers still give you is the gap that sends you calls you will turn down. Work down the sheet in that order.
Towns you left, and the statements that still place you there
When an answer names you for a town you left, look first for anything that still says you work there. Two statements of your area are yours alone to change, so hold them against the job list first, town by town: the service area on your Business Profile, and areaServed in your markup, which you can find by viewing the page source and searching for it. If either was set while you still worked in [town C], it says so still.
Then the rest: the towns list on the site, footer and service pages included; job records from the town, which can stay up with their dates; the about page and any PDF that still carries a former address; each directory profile. Which statement an answer drew on, nobody outside the company that runs the assistant can say. What you can do is make every one of them agree with your books, and date each change in the sheet.
The audit gives a reason to check them all. In our audit of 9,483 small business websites (40 trades, 90 metros in the US, Canada, Europe and the UAE, late August to early September 2026), 43.1% were inconsistent about who and where they are across their own homepage, contact page and about page, and 34.1% had no postal address a machine could parse. Both figures are across all 40 trades; we publish no painter-only cut.
On the profile, Google's Business Profile guidelines give a business that travels to its customers one service-area profile, and say the area should not reach farther than about two hours of driving from the base, while allowing larger areas for some businesses. In the markup, areaServed can name each town as a City or an AdministrativeArea, or as text, so every town can be ticked off against the site's list. Stated the same way in all three places, the area is one more fact that describes a single entity.
A missed town gets a job record, not a page of its own
The tempting fix for a missed town is a page for it. Google's spam policies list pages aimed at particular regions or cities that funnel users to one page among their examples of doorway abuse, and a set of town pages that differ only in the town's name fits that description.
What a missed town gets instead is its name in the one list, and evidence in text. If you did [n] jobs there last year, write up one or two as records, each naming the town in a sentence about real work, as the record of a painting job sets out. A record of a job in [town B] would exist whether or not anyone searched for [town B], which is the difference between it and a town page. What else the site states is on the painting contractors page.
What an afternoon shows, and what the monthly panel reads
An afternoon's answers are one run of each question on one day, and the same question asked tomorrow can name different companies. So the afternoon finds where your area is written wrong and which towns are missing; it does not measure how often you get an AI recommendation. That is the monthly panel's job, with its two towns and three runs of each line on each assistant, as a painter's monthly panel describes.
Search Console cannot fill the gap. Its generative AI performance report counts impressions of your links in AI Overviews and AI Mode by page, country, date and device, with no query dimension, so a country is the finest place it shows, never a town.
Run the afternoon again when the job map changes, with a new base, a town dropped or a season's work somewhere new, and a month after a round of fixes. Set the new sheet beside the old one and keep both: the first is the baseline the second is read against.
Common questions
We painted one large job in a town years ago. Should that town stay on our list?
Only if you would take work there now. The towns list, areaServed and the profile's service area say where you take work; the job record says what you did, and it can stay up with its date as it is. If answers name you for that town and you would turn the call down, take the town off the list and the markup, and date the change.
Should the profile's service area match last year's job map exactly?
It should name the towns you take work in now, the same list as the site, and last year's jobs are the best evidence of what that list is. A town with no jobs in years probably does not belong on it; a town you want to grow into can, if you would take the work tomorrow. The guidelines' two hours of driving is a limit, not a target.
How many towns should the afternoon cover?
Every town with [n] or more jobs last year, every town you stopped working in within the last [n] years, the towns where you quoted without winning work, and two or three near your edge where you have never worked. That can run to [ten] or [twenty] towns; if it runs further, take the towns with the most jobs first and the rest another afternoon.
An answer names us for a whole county. Is that wrong?
Only if you would not take work anywhere in it. Look for where the county comes from: a service area drawn as a region on the profile, areaServed set to the county in the markup, a directory category. If your books show work in [n] of its towns, name those towns instead, on the site, in the markup and on the profile, and leave the county out.
Sources
The two audit figures are this site's own, across all 40 trades, with no painter-only cut. The sheet is a bracketed template, not answers we recorded. What Google's guidelines, spam policies and Search Console report say, and what schema.org's areaServed takes, is stated as those pages state it.
Sources: our audit of 9,483 small-business sites, with its method · Google Business Profile guidelines · schema.org, areaServed · Google Search Central, spam policies · Search Console Help, generative AI performance report
Read on