Course content
Read the playbook
Module-by-module deep dive. Every prompt, template, and number is here.
1. How local ranking actually works
Google's local results have two surfaces, and they rank differently:
- The local pack / Maps — the 3 listings with stars and a map. Driven by GBP signals, proximity to searcher, prominence (reviews, citations, on-site signals).
- Organic results — the blue-link results. Driven by classic SEO: relevance, authority, content, on-page optimization.
You need both. Searcher behavior depends on intent: "plumber near me" = pack-dominant, "why is my drain slow" = organic-dominant.
Google has confirmed three ranking factors for local: relevance, distance, and prominence. You can influence relevance and prominence; distance is fixed (the searcher's location).
2. GBP audit and full optimization
If a client comes to you with no other SEO done, GBP is where you start. It moves rankings in 2–6 weeks, often faster than on-site work.
2.1 Audit checklist (run on day 1)
- Profile claimed and verified
- Primary category exact-matches the main service ("Plumber" not "Home services")
- 3–9 secondary categories
- Business name = legal name (no "Joe's Plumbing — Best in Phoenix!" — that's a guideline violation)
- Address visible vs. service-area only — choose based on storefront vs. mobile
- Phone matches the website footer exactly
- Website URL matches website's preferred domain
- Hours accurate, holiday hours scheduled out 12 weeks
- 15+ photos uploaded (logo, cover, interior, exterior, team, work, products)
- Services list with descriptions for each
- Products listed if applicable
- Q&A section seeded with 5–10 real questions
- Posts (offers / updates) cadence: weekly
- Messaging enabled if staffed
- Booking enabled if applicable
- UTM tags on the website link for tracking
2.2 The website URL UTM
Tag the website link on GBP so you can attribute traffic in GA4:
https://yourclient.com/?utm_source=google&utm_medium=organic&utm_campaign=gbp
3. Geo keyword research with AI
Two kinds of keywords matter:
- Service + city — "plumber Phoenix", "emergency plumber Scottsdale"
- Service + neighborhood — "plumber Arcadia", "drain cleaning Tempe"
3.1 The 5-step process
- Pull seed keywords from Google Keyword Planner, Ahrefs, Semrush, or free Ubersuggest.
- Mine competitor sites for their geo-page URLs (
/service-areas/...). - Use AI to generate combinations:
You are a local SEO researcher.
Generate a list of all geo + service keyword combinations for:
- Niche: {{ plumber }}
- Primary city: {{ Phoenix, AZ }}
- Service-area neighborhoods: {{ Arcadia, Tempe, Mesa, ... }}
- Top 8 services: {{ drain cleaning, water heater, ... }}
Output a CSV with columns: keyword, intent (commercial/info),
priority (1-3, where 1 = highest local intent).
- Validate with Keyword Planner volume data — drop anything < 10 monthly searches that isn't a longtail safety net.
- Group by URL: each high-priority service-city pair gets its own page (more in Lesson 5).
4. On-page SEO for service pages
Each service page needs:
- Title tag: {Service} in {City} | {Brand} — 50–60 chars
- Meta description: 130–155 chars, mentions service + city + a clear value
- H1: mirrors the title with natural language, e.g., "Drain Cleaning in Phoenix"
- One H2 per supporting topic: "How we do it", "What it costs", "Areas served", "Reviews", "FAQ"
- 800–1,200 words for local service pages (more isn't better)
- One image with alt text using the keyword naturally
- Internal links to related services and the parent geo page
- Schema:
Service,LocalBusiness,FAQPageif FAQs - CTA twice on the page (mid + end)
5. Geo pages — building the grid
Geo pages are dedicated pages targeting "{service} {city}" combinations. Done well, they double or triple non-brand traffic. Done badly, they trip thin-content / doorway-page penalties.
5.1 The rules of geo pages
- Each page must offer genuine, unique value — local references, neighborhoods, photos, reviews from that area, project examples.
- Don't duplicate copy and swap the city name. Google catches that fast (see Google's "doorway pages" guideline).
- Aim for 700–1,000 unique words per page, including at least 3 specifically-local sentences.
- Embed a Google Map for that service area, not a global one.
5.2 The geo grid
| Service → Area ↓ | Drain cleaning | Water heater | Slab leak |
|---|---|---|---|
| Phoenix | /drain-cleaning-phoenix | /water-heater-phoenix | /slab-leak-phoenix |
| Tempe | /drain-cleaning-tempe | /water-heater-tempe | /slab-leak-tempe |
| Mesa | /drain-cleaning-mesa | /water-heater-mesa | /slab-leak-mesa |
3 services × 3 areas = 9 pages. Don't ship them all at once. Publish 2–3 per month with real, edited content. The retainer pays for ongoing geo-grid expansion.
6. Citations and NAP consistency
NAP = Name, Address, Phone. The exact same string everywhere — same punctuation, same suite formatting, same area code style.
6.1 Tier-1 directories (priority)
- Google Business Profile
- Apple Maps via Apple Business Connect
- Bing Places
- Facebook Page
- Yelp
- Better Business Bureau
- Yellow Pages
6.2 Niche directories
Plumbers: Angi, HomeAdvisor, Houzz, Thumbtack. Lawyers: Avvo, Justia, FindLaw. Med spas: RealSelf, Vitals. Restaurants: TripAdvisor, OpenTable.
6.3 Tools
BrightLocal, Whitespark, or Yext to push citations once. Don't subscribe forever — push and hold.
7. Reviews: the system that compounds
Reviews drive local rankings, and more importantly, conversion. A 4.7★ business with 200 reviews beats a 5.0★ with 12.
7.1 Get the reviews
- At job-completion, send a 1-line SMS with the GBP review link.
- If no review in 48h, send a follow-up email with a 1-click link.
- Train the field team to ask in person: "If you'd rate us 5 stars, would you mind leaving us a Google review? I'll send you the link right now."
Tools: NiceJob, GatherUp, Birdeye, or a free Make.com automation that triggers from the client's job-management system.
7.2 Respond to every review
Within 24 hours. Use the customer's name. Mention the service. Negative review? Don't argue — apologize, offer a private channel, fix the issue. Both Google and prospects are reading.
8. Schema markup that matters
For a local business site, you need three types of schema (JSON-LD):
LocalBusinesson the homepage and contact page (with the right sub-type —Plumber,Dentist, etc.)Serviceon each service pageFAQPageon any page with an FAQ section (still gets rich-result eligibility for many queries)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Plumber",
"name": "Acme Plumbing",
"image": "https://...",
"telephone": "+1-602-555-0123",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "Phoenix",
"addressRegion": "AZ",
"postalCode": "85003",
"addressCountry": "US"
},
"geo": { "@type": "GeoCoordinates", "latitude": 33.45, "longitude": -112.07 },
"areaServed": ["Phoenix","Tempe","Mesa","Scottsdale"],
"openingHours": "Mo-Sa 07:00-19:00",
"sameAs": ["https://facebook.com/...","https://...gbp..."],
"aggregateRating": { "@type":"AggregateRating", "ratingValue":"4.9", "reviewCount":"187" }
}
</script>
9. Local link building
Local links matter more than national ones for local rankings. Cheapest, highest-ROI tactics:
- Local chamber of commerce membership.
- Local newspaper / blog mentions (sponsor a Little League team, host a free workshop, donate, comment on local events).
- "Best of {city}" round-up listings.
- Vendor pages — your suppliers and partners often have customer/dealer directories.
- Industry-association memberships (BBB, niche trade groups).
10. Tracking and reporting
10.1 Tools
- Google Search Console — impressions, clicks, queries.
- Google Business Profile insights — calls, direction requests, website clicks.
- Local Falcon or BrightLocal — geo-grid rank tracking (where do we rank for "plumber" within a 5-mile grid).
- GA4 + UTM — actual website traffic split by source.
- Looker Studio — assemble all of it into a one-page dashboard.
10.2 The monthly report
Three numbers the client cares about (everything else is window-dressing):
- Calls from GBP this month vs. last month.
- Direction requests from GBP.
- Form submissions on the website.
Course 08 covers the full report layout.
What to do this week
- Run the GBP audit on yourself or a friend's business. Fix everything in Lesson 2.
- Pick one client and sketch their geo grid (services × cities).
- Generate the full keyword list with the AI prompt in Lesson 3.
- Push tier-1 citations using BrightLocal or by hand.
- Set up Local Falcon for monthly geo-grid tracking.