geo-tracking
Measure AI visibility without paid tools or API keys. Input: your site (GA4 and server logs) and a buyer prompt panel. Output: GA4 AI-traffic reporting (custom…
Improve local visibility so the business shows in the map pack and gets recommended by AI for 'best [trade] in [city]' queries. Input: a business, its locations, and its Google Business Profile. Output: a GBP audit and category strategy, review generation and replies, NAP
$ npx -y skills add Thibaultbm/claude-seo-geo --skill seo-local --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/seo-localContext preview
The summary Claude sees to decide when to auto-load this skill.
Improve local visibility so the business shows in the map pack and gets recommended by AI for 'best [trade] in [city]' queries. Input: a business, its locations, and its Google Business Profile. Output: a GBP audit and category strategy, review generation and replies, NAP
name: seo-local description: "Improve local visibility so the business shows in the map pack and gets recommended by AI for 'best [trade] in [city]' queries. Input: a business, its locations, and its Google Business Profile. Output: a GBP audit and category strategy, review generation and replies, NAP consistency, location pages with LocalBusiness schema, multi-location and service-area setups, and suspended-listing reinstatement. Use for GBP, Google Maps, the local pack, reviews and star ratings, a business not showing on Maps, or a suspended listing." license: MIT metadata: author: "Sorank (https://sorank.com)" version: "1.0.0"
Local SEO decides who appears when a buyer searches "plumber near me", opens Google Maps, or asks an AI assistant for "the best dentist in Geneva". Three surfaces matter: the local pack (Maps results inside the SERP), localized organic results, and AI assistant recommendations. They feed on overlapping signals: the Google Business Profile, reviews, the linked website, and the consistency of the business entity across the web.
The methodology combines two evidence levels, labeled throughout:
If the working environment contains an Obsidian vault or any local knowledge base (a folder of .md notes, often with a .obsidian directory), read the relevant notes before acting: brand and product facts, target keywords, competitors, and the SEO action log of what was already tried. Ground every recommendation in that context instead of asking the user for facts the vault already holds. At the end of the session, append the actions taken to the vault's SEO action log so the next session starts informed. Vault structure, read-first and write-back protocols: the obsidian-brain skill.
Use it to diagnose why a business is invisible in the local pack, set up or complete a Google Business Profile, build a review generation engine, write review replies, plan location pages, structure a multi-city or service-area business, or recover a suspended listing.
Stay in scope. Hand adjacent work to the right skill:
| Task | Skill | |---|---| | GBP, reviews, local pack, location page strategy (this skill) | seo-local | | Finding and building citation and directory links | seo-backlinks | | Writing service pages and city pages (copy and wireframe) | seo-content-service-page | | LocalBusiness schema implementation details | seo-schema-markup | | Site crawlability, speed, AI crawler access | seo-technical | | Local keyword selection | seo-keyword-research | | Writing rules for AI answer citability | geo-visibility | | Measuring AI assistant mentions | geo-tracking | | Full-site audit | seo-geo-audit |
Every diagnosis and plan in this skill hangs on these four levers, in priority order:
| Pillar | What it covers | Why it ranks | |---|---|---| | 1. Reviews | Count, velocity, recency, reply rate | The strongest lever observed in the field; review signals also sit among the top local pack factor groups in the Whitespark Local Search Ranking Factors survey (measured: industry survey) | | 2. Profile completeness | Categories, services, attributes, real photos, hours, service areas | Google ranks what it understands; an empty profile gives it nothing to match queries against | | 3. Regular activity | Posts, photo additions, Q&A, fresh info | A liveness signal; low direct ranking impact on its own (field heuristic, see Step 6) | | 4. Linked website strength | The site's authority, local pages, on-page local signals | Website signals flow into Maps ranking; the profile and the site feed each other |
Treating reviews as the number one factor is a constant field observation across 115+ audits, consistent with industry surveys; it is not an official Google statement. Google's own documented local ranking factors are relevance, distance, and prominence (measured: Google, see Sources), and reviews feed both relevance and prominence.
Order of operations: reviews and completeness move pack positions within weeks; website strength compounds over months; posts alone move almost nothing. Plans that start with posting cadence are treating the cheapest lever first, not the strongest (field heuristic).
1. Pick 5-10 real buyer queries and check the local pack from inside the service area. Distance from the searcher affects results, so a check from another city is worthless. Mix the query types:
| Query type | Example | What it tests | |---|---|---| | Explicit city | "plumber lyon" | Relevance and prominence across the whole city | | Implicit near-me | "plumber near me" | Proximity-weighted ranking around the searcher | | Service + qualifier | "emergency plumber open now" | Hours, attributes, and category coverage | | AI assistant phrasing | "best plumber in lyon" asked to an assistant | The GEO layer: profile, reviews, and site together | 2. Compare the business against the 3 businesses that own the pack: review count, average rating, review recency, primary category, photo count, website strength. 3. Audit the profile itself: every empty field is a finding. 4. Scan NAP (Name, Address, Phone) across the site, the profile, directories, and social profiles. Note every variant. 5. Audit the linked website with the bundled audit script from the seo-geo-audit skill (scripts/seo_audit.py): does a dedicated location page exist, does it carry the local keyword pattern, does it have LocalBusiness schema?
The gap table from point 2 sets the plan. If competitors have 240 reviews and the business has 12, no am
SEO & GEO skills for Claude Code, built with Claude Mythos 5. Rank in Google AND in LLMs like ChatGPT, Perplexity, and Gemini.
Repo: Thibaultbm/claude-seo-geo
Measure AI visibility without paid tools or API keys. Input: your site (GA4 and server logs) and a buyer prompt panel. Output: GA4 AI-traffic reporting (custom…
Get cited and recommended by AI engines (ChatGPT, AI Overviews and AI Mode, Perplexity, Claude, Gemini). Input: a page or piece of content. Output:…
Build a local Obsidian vault that acts as the company and founder second brain, the knowledge layer every other skill reads before acting and writes back to.…
Turn a JavaScript-only site built by an AI website generator into indexable HTML. Input: a site made with Lovable, Base44, Bolt, v0, Replit, Firebase Studio,…
Plan and run off-page SEO to earn links and brand mentions, including for AI visibility. Input: a site, niche, and competitors. Output: a link strategy and…
Write blog articles that rank on Google and get cited by AI engines (ChatGPT, Perplexity, AI Overviews). Input: a keyword, topic, or existing draft. Output: a…