The Guide to Dominate Local SEO (Automated with Claude)

Most local businesses do zero SEO:
↳ They never claimed their Google Business Profile
↳ They have 3 reviews from 2023
↳ They pay an agency $500/month to post once a week
↳ They have one page on their site trying to rank for everything
Which is exactly why local SEO is an easy channel.
Here's the full playbook, in the order that matters, with the exact prompts for the two heaviest parts.
Oh and before we start, if you want an SEO/GEO agent to work with you on your local SEO strategy: Claim your free credits to start
Part 0: The ranking factor you can't optimize
Before touching anything, understand this: the number one local ranking factor is proximity. How close the searcher is to your address.
You cannot optimize it. No amount of work moves your pin on the map.
But there are two types of local businesses, and they play different games:
- Clients come to you (barber, dentist, restaurant). Google shows you to people nearby. Your radius is small and fixed.
- You go to clients (plumber, photographer, electrician). The client doesn't care where you park your van. You can rank across an entire metro area.
If you're type 2, everything below compounds harder. You get up to 20 service areas instead of one pin. That's the single biggest structural advantage in local SEO, and most type 2 businesses never configure it.
Part 1: The profile
Four fields drive most of your Google Business Profile visibility: categories, services, service areas, reviews.
Categories. One primary, up to 9 secondary. The primary category is probably your strongest controllable ranking lever. Don't guess it. Copy what the top 3 competitors ranking for your main keyword are doing.
Services. You can add up to 50. But not all services are equal. Check search volume for "service + your city" before adding one. "Couples therapy Toronto": 1,300 searches/month. Some obscure service name: 0. Rank for keywords people actually type.
Service areas. Up to 20. Rule of thumb: only add cities you can reach in under 2 hours. Google suspends profiles that look fake, and suspensions are common. No PO boxes, no coworking addresses, no random cities.
Photos. Businesses with 100+ photos get 520% more calls than the average profile (BrightLocal, 2019 study, so treat the exact number as directional). Real photos. Stock images hurt trust.
Instead of researching all this manually, this is one prompt in ChatSEO:
> "Here's my site: [url]. Audit my Google Business Profile setup. Find the top 3 competitors ranking locally for my main keyword, tell me which primary and secondary categories they use, and give me a list of services and service areas to add, ranked by search volume in my city. Flag anything that would look spammy to Google."
You get the brief, you paste it into your profile. 15 minutes instead of a weekend.
The filter for everything it suggests: the BS test. If it's real, keep it. If it smells like padding, delete it. Suspensions take weeks to appeal.
Part 2: Posts (they don't do what you think)
Google Business Profile posts do not meaningfully increase your views.
They convert the views you already get into calls and website clicks.
Indirectly, that loop feeds rankings: more interactions signal an active business, posts can get pulled into AI Overviews, and a profile that hasn't posted in 3 months looks closed.
The problem: nobody wants to write these daily. So people either skip it or pay an agency $500/month.
The fix: batch a month of posts with AI, in your own voice. Raw AI posts read like AI slop. The trick is feeding it your actual writing first: 10 old LinkedIn posts, a few client emails, and let it extract your tone and vocabulary before it writes anything. Then it's copy, paste, schedule. Ten minutes a month instead of a daily chore.
Part 3: Reviews (velocity beats volume)
Two thresholds matter:
- Get to 10 reviews. Below that, Google barely shows you.
- After 10, velocity matters more than total. 8 new reviews every month beats 50 in one month then silence. Google reads a review spike followed by nothing as a dead business.
Counterintuitive but true: 4.7 to 4.9 converts better than a perfect 5.0. A 5.0 with 25 reviews reads as fake. A 4.8 reads as human.
The engine has 3 parts:
- Ask every client, automatically, when the job closes.
- Route unhappy clients to a private conversation first. One form, one question: "1 to 5, would you refer us?" Low scores go to your Slack so you fix it before it becomes public. Happy clients get your Google review link.
- Reply to every 4-5 star review, and mention the service and the city once in each reply. Review replies are crawlable text. Google reads them. That detail alone is half of what agencies charge for. Never automate replies to angry ones though: an AI response to a furious customer makes it worse.
Part 4: Pages (the zipper)
The map pack is half the battle. The organic listings below it are the other half. Two page types win there.
Service pages target money keywords: "emergency plumbing Toronto" is someone ready to pay.
The structure is a zipper. Cities on one side, services on the other, zip them together:

One page is one shot at ranking. Fifty pages is fifty shots. Realistic range: 10 to 400 pages. Past that you're producing thin content and Google will punish it.
Local blog posts target the customers of your customers. A wedding photographer writing "best wedding venues in Toronto" catches couples before they search for photographers. The city in the title is the whole point. Without it you rank against the world for traffic that can't buy from you.
Each page should also carry a keyword cluster: one primary keyword plus 4-5 secondary ones ("unclog kitchen sink", "slow draining sink"). Every page becomes multiple lottery tickets.
Three technical rules on top: static site generation only, page speed above 90 on mobile Lighthouse, and on-page basics on every page (title, headers, internal links).
This part is where ChatSEO does the full loop, not just the thinking. It's plugged into Google Search Console and your WordPress or Shopify, so one prompt goes end to end:
> "Build my service page matrix. My services: [list]. My cities: [list]. Keep only combinations with real search volume. For each page: one primary keyword, a 4-5 keyword cluster, unique content per city so it's not thin, internal links between pages, clean titles and headers. Publish as drafts to my WordPress, then track them in Search Console and tell me next week which ones got impressions."
That last sentence is the part nobody does manually: the loop. Publish, measure, adjust, repeat. It's the difference between "I did SEO once" and rankings that compound.
The order matters
Profile before posts, because posts convert profile views that don't exist yet. Reviews before pages, because a page that ranks with 3 reviews still doesn't get the click. Pages last, because they compound slowest but cap highest.
One site is an anecdote and every business is different. But this is the same playbook local agencies charge $1,000/month to run, and the two heaviest parts are now two prompts.
Both run as-is in ChatSEO: chatseo.app
Related articles

10 SEO backlink Claude automations for 61k AI mentions in 3 months
Link building is trial and error.

10 Claude SEO Link-Building Tactics That Got Us 37,700 AI Mentions in 3 Months
Today we're shipping: Backlink Exchange ONLY 🔗

How I got 43 high-quality backlinks in 4 weeks to boost my SEO (Step-by-Step)
i also built an AI agent to automate this entire process btw [elvixai.com](https://elvixai.com) since it was taking min. ~2 hours/day to do manually - it works 7/24 on autopilot 🤓