agentleFS
swsounds42swsounds42/claude-dotfiles/skills/seo-local/SKILL.md

seo-local

Skill0 starsChanged 42 days agoMITView on GitHub

Audit local SEO, including Google Business Profile, NAP consistency, citations, reviews, local schema, location pages, and multi-location structure.

32 other projects use a version of this, 17 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use seo-agentic, seo-sxo and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • AgriciDanielSkill

    seo-agentic

    Audit and fix agent readiness: the Lighthouse Agentic Browsing fraction, accessibility tree for agents, robots.txt and Content-Signal for AI agents, WAF treatment of agent traffic, llms.txt, Markdown delivery, ai-catalog.json, /.well-known discovery files, and WebMCP tools. Use when the user asks whether AI agents can use or browse the site, or about llms.txt or WebMCP. Exclude AI citability and brand signals (seo-geo) and commerce protocol depth (seo-ecommerce).

    Also in 5 projects that use this

  • timruebenachSkill

    seo-sxo

    Search Experience Optimization: reads Google SERPs backwards to detect page-type mismatches, derives user stories from search intent signals, and scores pages from multiple persona perspectives. Identifies why well-optimized pages fail to rank by analyzing what Google rewards for each keyword. Use when user says "SXO", "search experience", "page type mismatch", "SERP analysis", "user story", "persona scoring", "why isn't my page ranking", "intent mismatch", or "wireframe".

    Also in 17 projects that use this

  • timruebenachSkill

    seo-ecommerce

    E-commerce SEO analysis: Google Shopping visibility, Amazon marketplace intelligence, product schema validation, competitor pricing analysis, and marketplace keyword gaps. Combines on-page product SEO with marketplace data from DataForSEO Merchant API. Use when user says "ecommerce SEO", "product SEO", "Google Shopping", "marketplace SEO", "product schema", "Amazon SEO", "product listings", "shopping ads", or "merchant SEO".

    Also in 15 projects that use this

  • megastepSkill

    seo-images

    Image optimization analysis for SEO and performance. Checks alt text, file sizes, formats, responsive images, lazy loading, and CLS prevention. Use when user says "image optimization", "alt text", "image SEO", "image size", or "image audit".

    Also in 19 projects that use this

  • megastepSkill

    seo-sitemap

    Analyze existing XML sitemaps or generate new ones with industry templates. Validates format, URLs, and structure. Use when user says "sitemap", "generate sitemap", "sitemap issues", or "XML sitemap".

    Also in 20 projects that use this

  • indranilbanerjeeSkill

    seo-drift

    Compare two SEO exports (Search Console, two dates): gainers, losers, drift classes. \"what moved after the core update\"

    Also in 16 projects that use this

  • +3 more from timruebenach
  • +2 more from megastep

The file

We split this skill into the rules it gives an agent

12 rules. 0 are common, 7 are distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 29 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    No visible physical address

    line 45
  2. Very specific:

    If no vertical detected, use generic LocalBusiness analysis path.

    line 71
  3. Distinctive:

    Swap test: if you can swap the city name and content still makes sense, it's a doorway page (RicketyRoo method).

    line 130
  4. Very specific:

    Recommendation: Run /seo geo <url> for comprehensive AI search visibility analysis including citability scoring, llms.txt check, and brand …

    line 235
  5. Distinctive:

    Add LocalBusiness schema with correct industry subtype

    line 272
  6. Very specific:

    Add geo coordinates with 5+ decimal precision

    line 273
  7. Very specific:

    Ensure phone number uses tel: link for click-to-call

    line 274
  8. Distinctive:

    Add city + service keyword to title tag and H1

    line 275
  9. Distinctive:

    Create dedicated page for each core service (Whitespark: #1 local organic factor)

    line 279
  10. Distinctive:

    Add industry-specific schema patterns (Menu for restaurants, Physician for healthcare, etc.)

    line 283
  11. Distinctive:

    Create community involvement content (sponsorships, local events, partnerships)

    line 292
  12. Very specific:

    If DataForSEO MCP tools are available, use business_data_business_listings_search for live GBP/business-listing data extraction and …

    line 298

“Common” is measured: kept by at least 6 in 10 of the 29 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Local SEO Analysis (March 2026)

Key Statistics

MetricValueSource
GBP signals share of local pack weight32%Whitespark 2026
Proximity share of ranking variance55.2%Search Atlas ML study
Review signals share (up from 16%)~20%Whitespark 2026
Google searches seeking local info46%Industry data
Mobile "near me" searches leading to visit in 24h76%Google confirmed
ChatGPT/AI usage for local recommendations45% (up from 6%)BrightLocal LCRS 2026
ChatGPT local conversion rate15.9%Seer Interactive
Google organic local conversion rate1.76%Seer Interactive
Local pack ads growth (Jan 2025 to Jan 2026)1% to 22%Sterling Sky

Business Type Detection

Detect from page signals before analysis. This determines which checks apply.

Brick-and-Mortar

  • Physical street address visible in page content or footer
  • Google Maps embed with pin/directions
  • "Visit us at", "Located at", "Come see us"
  • Structured address in LocalBusiness schema

Service Area Business (SAB)

  • No visible physical address
  • Service area mentions: "serving [city/region]", "service area includes"
  • "We come to you", "On-site service", "Mobile [service]"
  • areaServed in schema without address.streetAddress

Hybrid

  • Both physical address AND service area language present
  • "Visit our showroom" combined with "We also serve [areas]"

Impact on checks: SABs skip embedded map verification and physical address consistency. Brick-and-mortar gets full NAP + map checks.


Industry Vertical Detection

Detect from page signals and GBP category patterns. Routes to industry-specific checks from references/local-schema-types.md.

VerticalDetection Signals
Restaurant/menu, menu items, reservations, cuisine types, food ordering, "dine-in", "takeout"
Healthcareinsurance accepted, patients, appointments, NPI, medical terms, "Dr.", HIPAA notice
Legalattorney, lawyer, practice areas, bar admission, case results, "free consultation"
Home Servicesservice area, emergency service, "free estimate", licensed/insured/bonded, "24/7"
Real Estatelistings, MLS, properties for sale/rent, agent bio, brokerage, "open house"
Automotiveinventory, VIN, test drive, dealership, service department, "new/used/certified"

If no vertical detected, use generic LocalBusiness analysis path.


Analysis Dimensions

1. GBP Signals (25%)

Primary category is the single most important local pack factor (Whitespark #1, score: 193). Incorrect primary category is the #1 negative factor (score: 176).

Check for:

  • GBP embed or reference detectable on page (Maps iframe, place ID, reviews widget)
  • Primary category appropriateness (infer from page content vs visible GBP data)
  • Evidence of secondary categories (optimal: 4 additional per BrightLocal)
  • GBP posts presence (no direct ranking impact per WebFX, but triggers Post Justifications)
  • Photos/video evidence (45% more direction requests with photos, Agency Jet)
  • Q&A content: Google discontinued its Q&A API on 2025-11-03 and public Q&A is reportedly being phased out; answer common questions on the website and in the business description instead, and treat any remaining public Q&A as a bonus
  • Google Verified badge eligibility (replaced Guaranteed/Screened in Oct 2025)
  • GBP link URL strategy: do NOT link to strongest website page (Sterling Sky Diversity Update -- risks suppressing organic rankings)
  • Business hours visibility on page (businesses open at search time rank higher, factor #5)

Scoring guide:

  • Full: GBP embed present, category signals align, posts active, photos present
  • Partial: Some GBP signals present but incomplete
  • Low: No visible GBP integration on website

2. Reviews & Reputation (20%)

Review velocity matters more than total count. In Sterling Sky's 2025 study of 8,186 businesses, one case-study business that stopped getting reviews for 18 days lost rankings sharply while steadier competitors held. Treat it as an illustrative example, not a fixed threshold.

Check for:

  • Total Google review count visible on page or schema (magic threshold: 10, Sterling Sky)
  • Star rating (31% of consumers only use 4.5+, 68% only use 4+, BrightLocal 2026)
  • Review recency indicators (74% only care about reviews in last 3 months)
  • aggregateRating in schema (ratingValue, reviewCount, bestRating)
  • Third-party review presence (consumers use average of 6 review sites, BrightLocal 2026)
  • Owner response patterns (88% would use business that responds, BrightLocal)
  • Review gating detection: any pre-screening of satisfaction before directing to review platform is prohibited by Google (fake engagement policy) and FTC ($53,088/violation)

Industry-specific:

  • Healthcare: HIPAA prohibits confirming/denying reviewer is a patient in responses
  • Legal: attorney-client privilege considerations in review responses

Scoring guide:

  • Full: 10+ reviews, 4.5+ stars, recent activity, owner responses, multi-platform presence
  • Partial: Some reviews but gaps in recency, rating, or response rate
  • Low: <10 reviews, no recent activity, no responses, single platform only

3. Local On-Page SEO (20%)

Dedicated service pages = #1 local organic factor AND #2 AI visibility factor (Whitespark 2026).

Check for:

  • Title tag contains city/service keywords
  • H1 tag with local intent (city + service)
  • NAP (Name, Address, Phone) visible in page HTML (footer, contact section, header)
  • Dedicated service pages (one page per core service)
  • Location page quality for multi-location sites:
    • >60-70% unique content minimum (industry consensus, no Google-confirmed threshold)
    • Swap test: if you can swap the city name and content still makes sense, it's a doorway page (RicketyRoo method). HVAC company lost 80% rankings + 63% traffic after March 2024 Core Update for this pattern
    • Local photos, area-specific testimonials, local FAQs
  • Embedded Google Map (geographic signal reinforcement, not direct ranking factor -- lazy-load to mitigate speed impact)
  • Click-to-call button (tel: link) and contact form above the fold
  • Internal linking architecture: hub-and-spoke, every critical page within 3 clicks of homepage
  • 2-5 contextual internal links per 1,000 words with descriptive anchor text

Multi-location specific:

  • Store locator with individual crawlable URLs (SSR/SSG preferred over CSR)
  • Subdirectory structure: domain.com/locations/city-name/ (subdirectories consolidate link equity better, Bruce Clay: 50%+ traffic lift)
  • Each location page has unique LocalBusiness schema with @id

Scoring guide:

  • Full: City in title + H1, NAP visible, dedicated service pages, no doorway patterns, good internal linking
  • Partial: Some local signals but missing service pages or doorway page risk
  • Low: Generic title/H1, NAP not visible, thin location pages

4. NAP Consistency & Citations (15%)

Citations declining for traditional pack rankings but 3 of top 5 AI visibility factors are citation-related (Whitespark 2026). Google's July 2025 documentation update removed "directories" from prominence definition.

Check for:

  • NAP extraction: compare Name, Address, Phone from:
    1. Visible page HTML (footer, contact page)
    2. LocalBusiness JSON-LD schema
    3. Any visible GBP data
    • Flag any discrepancies between these three sources
  • Citation presence on Tier 1 directories (check via WebFetch or site: search patterns):
    • Google Business Profile signals on page
    • Yelp: site:yelp.com "Business Name"
    • BBB: site:bbb.org "Business Name"
    • Facebook business page references
  • Apple Maps / Apple business listings awareness: claim and maintain Apple listings; treat Apple Business unified-platform launch/rename claims as TechRadar-sourced and verify against Apple primary before asserting.
  • Bing Places awareness (powers ChatGPT, Copilot, Alexa -- recommend claiming and optimizing)
  • Industry-specific directory recommendations: load references/local-schema-types.md for per-vertical citation sources
  • Data aggregator awareness: Data Axle, Foursquare, Neustar/TransUnion (recommend submission for downstream distribution)
  • Regional Search units: in the EEA, Google's aggregator and supplier units also cover local business queries since 2026-09-18; Türkiye has separate places-site features (see seo-hreflang section 5c); note this for businesses serving those markets

Scoring guide:

  • Full: Consistent NAP across page/schema, Tier 1 citations detected, industry directories present
  • Partial: NAP present but inconsistencies, some citations missing
  • Low: NAP discrepancies, no detectable citations, no schema address

5. Local Schema Markup (10%)

Schema is NOT a direct ranking factor (John Mueller confirmed). But enables rich results (43% CTR increase, Webstix case study) and helps AI systems parse business information.

Check for:

  • LocalBusiness schema presence (extract JSON-LD blocks)
  • Required properties: name, address with PostalAddress sub-properties
  • Recommended properties: geo (minimum 5 decimal places, Confirmed), openingHoursSpecification, telephone, url, priceRange (<100 chars), image, aggregateRating
  • Correct subtype for industry -- load references/local-schema-types.md:
    • Restaurant using Restaurant not generic LocalBusiness
    • Legal using LegalService not deprecated Attorney
    • Auto dealer using AutoDealer not deprecated VehicleListing
    • Healthcare using MedicalClinic/Hospital/Dentist not generic MedicalBusiness
  • SAB-specific: areaServed with named cities (recommended, not in Google's official list but Schema.org supported)
  • Multi-location: each location page has own LocalBusiness with unique @id, linked via branchOf to Organization on homepage
  • Industry-specific schema patterns (per references/local-schema-types.md):
    • Restaurant: Menu + MenuSection + MenuItem + ReserveAction (note: Reservation/Order actions are not Google-supported rich results; value is machine-readable business data)
    • Healthcare: Physician (Person) + MedicalSpecialty + sameAs to NPI
    • Legal: LegalService + Person + Service (practice areas)
    • Home Services: Subtype + areaServed + Service
    • Real Estate: RealEstateAgent + Person + RealEstateListing
    • Automotive: AutoDealer + Car + Offer (separate dept schemas)

Scoring guide:

  • Full: Correct subtype, all recommended properties, industry-specific patterns, valid JSON-LD
  • Partial: LocalBusiness present but generic type or missing recommended properties
  • Low: No local schema, or schema with errors/placeholder content

6. Local Link & Authority Signals (10%)

Links declining for local pack but remain ~26% of local organic ranking (Whitespark 2026, #2 factor group). "Best of" list placements = #1 AI visibility citation factor.

Check for:

  • Local backlink indicators detectable from page:
    • Chamber of Commerce mentions or links (high Trust Flow, ~80% more consumer visits, GlueUp)
    • BBB accreditation/badge (Google uses BBB for business verification)
    • Local news/press mentions
    • Community involvement signals (sponsorships, local events, partnerships)
  • "Best of" list presence (top AI visibility factor per Whitespark 2026)
  • Digital PR signals: 66.2% of PR practitioners now track AI citations as KPI (BuzzStream 2026)
  • Brand mentions correlate 3x more strongly with AI visibility than traditional backlinks (Ahrefs: 0.664 vs 0.218 correlation)
  • Link velocity benchmark: 5-10 quality local links/month for small businesses (consensus)

Scoring guide:

  • Full: Local authority signals visible (chamber, BBB, press), community involvement evident
  • Partial: Some authority signals but limited local link indicators
  • Low: No detectable local authority signals

AI Search Impact on Local

Do not duplicate seo-geo analysis. Provide local-specific AI context and recommend /seo geo <url> for full analysis.

Key local AI facts:

  • AI Overviews appeared on 68% of local searches on average in Whitespark's 2025 sample (540 service-industry queries, 3 metros); broad keyword panels report far lower rates (seoClarity: ~0.14% of local keywords in March 2025), so coverage depends on the query set
  • ChatGPT converts at 15.9% vs Google organic at 1.76% (Seer Interactive)
  • 3 of top 5 AI visibility factors are citation-related (Whitespark 2026)
  • ChatGPT does NOT access GBP directly -- sources from Bing index, Yelp, TripAdvisor, BBB, Reddit
  • Bing Places is critical: powers ChatGPT, Copilot, Alexa
  • Third-party observed local AI interface changes (mobile US) may show only 1-2 businesses, 32% fewer shown (Sterling Sky)

Recommendation: Run /seo geo <url> for comprehensive AI search visibility analysis including citability scoring, llms.txt check, and brand mention audit.


Reference Files

Load on-demand as needed:

  • references/local-seo-signals.md: Ranking factors, review benchmarks, citation tiers, GBP feature status, algorithm updates
  • references/local-search-behavior.md: Voice search, AI search impact on local, Local Pack structure, proximity
  • references/local-schema-types.md: LocalBusiness subtypes by industry, schema patterns, citation sources per vertical
  • references/local-schema-multilocation.md: Multi-location schema pattern, deprecated local schema

Output

Generate LOCAL-SEO-ANALYSIS-{domain}.md with:

  1. Local SEO Score: XX/100 with dimension breakdown table
  2. Business type: Brick-and-mortar / SAB / Hybrid
  3. Industry vertical detected + industry-specific findings
  4. GBP optimization checklist (detected signals vs missing)
  5. Review health snapshot (rating, count, velocity indicators, response patterns)
  6. NAP consistency audit (page vs schema discrepancies, cross-source comparison)
  7. Citation presence check (Tier 1 directory status)
  8. Local schema status (present/missing/malformed + ready-to-use fix)
  9. Location page quality (if multi-location: unique content %, doorway risk, store locator)
  10. Top 10 prioritized actions (Critical > High > Medium > Low)
  11. Limitations disclaimer: What this analysis could NOT assess (geo-grid ranking, Domain Authority, comprehensive backlinks, GBP Insights data, real-time local pack position) and which paid tools can fill those gaps

Quick Wins

  1. Claim and optimize Apple Maps / Apple business listings; verify any Apple Business launch/rename claim against Apple primary first
  2. Claim and optimize Bing Places (powers ChatGPT, Copilot, Alexa)
  3. Fix any NAP discrepancies between page, schema, and GBP
  4. Add LocalBusiness schema with correct industry subtype
  5. Add geo coordinates with 5+ decimal precision
  6. Ensure phone number uses tel: link for click-to-call
  7. Add city + service keyword to title tag and H1

Medium Effort

  1. Create dedicated page for each core service (Whitespark: #1 local organic factor)
  2. Build a review generation strategy with a steady cadence (aim for no gaps longer than about 2 to 3 weeks)
  3. Submit to three data aggregators (Data Axle, Foursquare, Neustar/TransUnion) for downstream distribution
  4. Claim industry-specific directory listings (per vertical recommendations)
  5. Add industry-specific schema patterns (Menu for restaurants, Physician for healthcare, etc.)
  6. Implement hub-and-spoke internal linking for service/location pages

High Impact

  1. Build local digital PR strategy targeting "best of" lists (#1 AI visibility factor)
  2. Develop unique, non-swappable content for each location page (>60% unique)
  3. Establish presence on platforms ChatGPT sources from (Yelp, TripAdvisor, BBB, Reddit)
  4. Pursue Chamber of Commerce and BBB membership (authority + verification signals)
  5. Create community involvement content (sponsorships, local events, partnerships)

DataForSEO Integration (Optional)

If DataForSEO MCP tools are available, use business_data_business_listings_search for live GBP/business-listing data extraction and citation auditing across directories, and serp_organic_live_advanced for real-time local pack positions.


Error Handling

ScenarioAction
URL unreachable (DNS failure, connection refused)Report the error clearly. Do not guess site content. Suggest the user verify the URL and try again.
No local signals detected on pageReport that no local business indicators were found. Suggest the user confirm this is a local business and provide the GBP listing URL if available.
NAP not found in page HTMLCheck schema and meta tags. If still absent, flag as Critical issue. Recommend adding visible NAP to footer and contact page.
Industry vertical unclearPresent the top two detected verticals with supporting signals. Ask the user to confirm before applying industry-specific recommendations.
Multi-location with 50+ location pagesApply the quality gates from seo orchestrator: WARNING at 30+ pages (enforce 60%+ unique), HARD STOP at 50+ pages (require user justification before continuing).

FLOW Framework Integration

For prompt-guided local optimization, use /seo flow local <url>, FLOW's 11 local-stage prompts cover GBP optimization, meta descriptions, title tags, and structured local audit workflows.


Vendored copy. Only seo-local and seo-maps were taken from AgriciDaniel/claude-seo. The shared reference files they need now sit in this skill's references/ folder. Upstream's /seo <subcommand> names map to /seo-local and /seo-maps here. /seo geo, /seo schema, /seo flow, /seo dataforseo and seo-hreflang are upstream skills that are not installed; treat those mentions as pointers, not commands.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.