Local SEO competitor analysis gets sold as a piece of software, and it is not one. No tool will tell you why the plumber three streets over sits above your client in the map pack. What does exist is a repeatable observation routine that takes roughly ninety minutes per client and produces a work list you can bill against.
Below is that routine, with the free method and the paid shortcut noted at each stage. Be clear with clients about what this is: structured manual observation plus review benchmarking, not automated surveillance of a rival's account.
Identifying who you are actually competing with
The competitors a client names during a kickoff call are usually the ones that annoy them, not the ones taking their enquiries. Those are frequently different businesses. Build the list from search behaviour instead.
Start from queries, not businesses
Write out eight to twelve phrases a real customer would type, mixing service plus place ("emergency electrician Sheffield"), service plus qualifier ("24 hour electrician near me") and the specific high-value jobs the client wants more of. Generic head terms on their own will mislead you.
Search from where the customers are
Map results are shaped heavily by the searcher's position. Running every query from your own office postcode gives you one narrow slice of reality. Set coordinates manually in your browser's device sensors panel, or use the single-point view of a free grid tool, and repeat the queries from two or three points across the client's trading area.
Record who repeats
Note the top three profiles for every query at every location. A business appearing in five or more of your twelve searches is a genuine competitor. A business appearing once is noise, and chasing it will burn a month.
Split the list in two
Separate the profiles beating your client across nearly everything from those beating them on one service only. The first group needs a full teardown. The second usually points at a missing category or an unlisted service, which is an afternoon of work rather than a campaign.
Reading a competitor profile properly
Open each profile and work through it in a fixed order. Skimming produces impressions; a fixed order produces a comparable record you can re-run next quarter to see what changed.
- Business name - is it the trading name, or the trading name with two service keywords bolted on? Note it either way.
- Categories - primary first, then any secondaries you can identify.
- Services and products - count them. Depth here is one of the most common differences between the profile at position one and the profile at position eight.
- Description - what they lead with in the first two sentences tells you how they position themselves.
- Attributes and hours - especially whether they hold longer hours, list emergency availability, or maintain special hours around holidays.
- Booking and messaging - a competitor taking bookings directly from the profile is capturing enquiries your client never sees.
- Questions and answers - almost universally neglected. Owner-seeded questions with proper answers are cheap to match and take twenty minutes.
- Photos and posts - counts and, more importantly, recency.
Category and service comparison
Primary category is visible free of charge: it appears as the descriptor under the business name in the map pack and on the profile itself. Secondary categories are not shown to the public, which is the point where people either buy a tool or give up.
- Free approach - browser extensions built for profile inspection surface the category set from the underlying page data, and several allow a limited number of free lookups a day. Enough for one client audit a week.
- Paid approach - dedicated profile audit tools return categories, services and attributes across a whole competitor set in one pass, which starts paying for itself once you run this monthly across a portfolio.
- What you are looking for - a category held by all three top profiles that your client does not have. That is the finding. A category held by only one of them is far weaker evidence and not worth a change on its own.
Services deserve as much attention as categories and get a fraction of it. Services are free text you fully control, they are one of the few places to put the exact phrasing customers use, and a competitor with forty listed services against your client's four holds a coverage advantage that costs nothing to close.
Review volume, velocity and response habits
Total review count is the least useful number on the profile. A business trading fifteen years with 400 reviews and none in the past year is going backwards against a competitor on 90 reviews who adds eight a month.
Sort each competitor's reviews by newest and count how many landed in the last ninety days. That gives you velocity, which is the number worth benchmarking. Then record three more things:
- Reply coverage - what proportion of reviews carry an owner response, and how quickly. A competitor replying to everything within a day is setting a standard your client is being measured against, whether or not anyone says so.
- The three-star reviews - the most honest text on any competitor profile. They tell you where the rival's service breaks down, which is the gap your client should be positioning against.
- The language customers use - lift the exact service phrases out of the review text. Those phrases belong in the client's services list and posts, because that is how real buyers describe the job.
Ampli5 Pulse handles your side of this properly: review volume, velocity and reply coverage across every location in one dashboard, with AI-assisted replies you review and approve before they publish, which is how you close a response-rate gap without hiring. It does not scrape competitor review histories, so the competitor half stays manual. Counting ninety days of reviews by hand, once a quarter, is genuinely not much work.
Photo and post cadence
Photo count matters less than photo recency and ownership. Check the split between images added by the owner and images added by customers. A profile with heavy customer photo activity is being visited by engaged people, and that is a harder thing to manufacture than an upload schedule.
For posts, look at frequency and type. If all three profiles above your client post something most weeks and your client has posted twice since 2024, you have found a cheap and defensible gap. Working a month of posts ahead through a scheduler with a shared media library turns that from a chore somebody forgets into a background process.
One caution: do not spend time geotagging images in the belief that it influences placement. It is a persistent piece of folklore and the hour is better spent photographing the actual premises and finished work.
Turning findings into a work list
An audit that ends in a document is an expense. Convert every finding into a dated task, sorted by effort rather than by how interesting it was to discover.
- Same day - add the missing categories, fill the services list, answer the obvious customer questions, correct hours and attributes.
- This month - a photo session covering exterior, team and completed work; a posting schedule built four weeks ahead; a review request process running on at least two channels.
- Ongoing - reply coverage at or above the best competitor, and a review velocity target set against their ninety-day count rather than against a number you invented.
Two things are worth explicitly not copying, however well they appear to be working: keywords stuffed into a business name, and addresses at buildings nobody staffs. Both are reportable, both tend to get corrected eventually, and building a client's position on top of a rival's policy breach means you inherit the fall.
Re-run the whole routine quarterly. Monthly is too often for the amount that genuinely changes, and annually means you find out about a competitor's new strategy two seasons after it started working.