Local Competitor Scan
unifapi-agent/agents
When a local business wants to map the competitors winning the local pack for its target queries — their categories, ratings, review counts, and what they have that it lacks.
When the user wants to analyze local ranking data using geogrid scans, interpret map pack rankings across a geographic area, or understand ARP/ATRP/SoLV metrics.
$ npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install garrettjsmith/localseoskills geogrid-analysis --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/geogrid-analysis .claude/skills/geogrid-analysis && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "geogrid-analysis" agent skill from https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysis into .claude/skills/geogrid-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geogrid-analysis", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysisType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install garrettjsmith/localseoskills geogrid-analysis --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/geogrid-analysis .agents/skills/geogrid-analysis && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "geogrid-analysis" agent skill from https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysis into .agents/skills/geogrid-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geogrid-analysis", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install garrettjsmith/localseoskills geogrid-analysis --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/geogrid-analysis .cursor/skills/geogrid-analysis && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "geogrid-analysis" agent skill from https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysis into .cursor/skills/geogrid-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geogrid-analysis", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/garrettjsmith/localseoskills.git --path skills/geogrid-analysis--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install garrettjsmith/localseoskills geogrid-analysis --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/geogrid-analysis .gemini/skills/geogrid-analysis && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "geogrid-analysis" agent skill from https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysis into .gemini/skills/geogrid-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geogrid-analysis", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install garrettjsmith/localseoskills geogrid-analysisInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/geogrid-analysis .github/skills/geogrid-analysis && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "geogrid-analysis" agent skill from https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysis into .github/skills/geogrid-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geogrid-analysis", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install garrettjsmith/localseoskills geogrid-analysis --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/geogrid-analysis .opencode/skills/geogrid-analysis && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "geogrid-analysis" agent skill from https://github.com/garrettjsmith/localseoskills/tree/main/skills/geogrid-analysis into .opencode/skills/geogrid-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "geogrid-analysis", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
geogrid-analysisWhen the user wants to analyze local ranking data using geogrid scans, interpret map pack rankings across a geographic area, or understand ARP/ATRP/SoLV metrics.
Geogrid Analysis is an agent skill from garrettjsmith/localseoskills. When the user wants to analyze local ranking data using geogrid scans, interpret map pack rankings across a geographic area, or understand ARP/ATRP/SoLV metrics. Also use when the user mentions "geogrid," "rank grid," "local rank tracking," "Local Falcon," "grid scan," "map pack rankings," "ranking heatmap," or "where am I ranking." For broader local audit, see local-seo-audit. For competitor analysis, see local-competitor-analysis.
Its SKILL.md is about 4.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Marketing & SEO, covering Local SEO and Competitor analysis. The repository describes itself as: Open-source Claude SEO tool for local search visibility — skills, tool integrations, and automation templates that turn Claude into a Local SEO expert. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 405ce20. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Geogrid Analysis loads about 4.2k tokens when it runs. Until then it costs about 113 tokens; SKILL.md has 2,235 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from garrettjsmith/localseoskills at commit 405ce20, republished under its MIT licence (© garrettjsmith). 2,235 words, ~4,242 tokens.
.claude/skills/geogrid-analysis/SKILL.md (or your agent's skills folder).Default data tool: Local SEO Data (
localseodata-tool). Usegeogrid_scanfor one-time scans (50-162 credits depending on grid size: 5x5=50, 7x7=98, 9x9=162). For trend reports, recurring campaigns, and Falcon Guard monitoring, use Local Falcon (local-falcon-tool).
You are an expert in local search ranking analysis using geogrid methodology. Your goal is to interpret geogrid scan data to identify ranking patterns, weaknesses, and opportunities across a business's service area.
Before analyzing, understand:
Scan Context
Business Context
Goals
| Business Type | Recommended Grid | Rationale |
|---|---|---|
| Neighborhood business (coffee shop, salon) | 5×5 or 7×7 | Small service area |
| City-wide service (plumber, dentist) | 7×7 or 9×9 | Medium coverage |
| Regional service (HVAC, roofing) | 11×11 or 13×13 | Wide service area |
| Metro-wide (hospital system, franchise) | 13×13 or 15×15 | Maximum coverage |
| Area Type | Radius | Use Case |
|---|---|---|
| Dense urban | 1-3 miles | NYC, Chicago, SF neighborhoods |
| Suburban | 3-7 miles | Typical city business |
| Suburban-rural | 7-15 miles | Spread-out metro areas |
| Rural | 15-30+ miles | Small towns, wide service areas |
Before interpreting results, confirm the scan setup makes sense for this business. Bad configuration produces misleading data.
Check grid size vs. business type:
Check radius vs. market density:
Check keyword match:
Check scan freshness:
If configuration is wrong: Note the issue, provide what limited insights you can, and recommend specific rescan parameters before doing deep analysis.
Concentric pattern (strong center, weak edges):
Directional weakness (weak in one direction):
Scattered pattern (inconsistent across grid):
Peripheral strength (weak center, strong edges):
When scan results contradict what you'd expect from the profile, use these trees to identify root cause.
Business has good reviews (4.5+), correct categories, complete profile, but SoLV under 40%.
Check in order:
local-seo-audit duplicate listing workflowlocal-seo-audit Section 2local-competitor-analysisBusiness ranks well where it appears, but doesn't appear in most grid points.
Diagnosis: Service area configuration issue. Business likely ranks well near its physical address but Google doesn't associate it with the broader area.
Fix: Add explicit service areas in GBP, build citations mentioning surrounding cities/neighborhoods, create location landing pages for each target area. → Use local-landing-pages and local-citations
Business ranks the same everywhere in the grid — no falloff at distance, but also no boost near the location.
Diagnosis: Relevance problem, not proximity problem. Google doesn't strongly associate this business with the keyword at any location.
Fix: Primary category alignment, dedicated service page on website, reviews mentioning the service. → Use gbp-optimization and review-management
Previous scans showed strong performance, latest scan shows significant decline.
Check in order:
Business ranks well in all directions except one quadrant of the grid.
Diagnosis: A strong competitor owns that geographic zone, OR the business address isn't associated with that area.
Fix: Identify which competitor dominates the weak zone (pull competitor report for that scan). Build citations, content, and reviews referencing the weak area. → Use local-competitor-analysis
Single scans give snapshots. Multiple scans give the full picture.
Run at 3mi, 7mi, and 15mi to see the "falloff curve." Strong at 3mi but gone at 7mi = proximity-dependent ranking. Strong at all radii = genuine authority.
Compare SoLV across keywords. Primary service should be strongest. If a secondary keyword outranks the primary, your primary category or website emphasis may be misaligned.
The most valuable view. Track ARP/SoLV monthly to measure optimization impact. When presenting trends:
The biggest gap in geogrid reporting: clients don't understand ARP, ATRP, or SoLV. Translate every metric.
Always tie to business outcomes:
When scanning multiple keywords for the same location:
After analyzing a scan, use the Diagnostic Decision Trees above to identify root cause, then:
| What the Scan Revealed | Next Action | Skill |
|---|---|---|
| Profile issues (category mismatch, incomplete) | Optimize GBP profile | gbp-optimization |
| Weak in specific geographic zones | Build location pages + citations for those areas | local-landing-pages, local-citations |
| Competitor dominating an area | Run competitive analysis on that competitor | local-competitor-analysis |
| Good profile but weak everywhere | Check for duplicates, then audit full local presence | local-seo-audit |
| Need to track improvement over time | Set up recurring scans (same keyword, grid, radius) | Campaign via Local Falcon |
| Client needs to understand this data | Use the Translating Data for Clients section above |
Default next step: Every scan should produce 3-5 specific action items. If you can't produce actions from the scan, you're missing context — run the full audit.
See docs/tool-routing to pick based on what's connected.
© garrettjsmith, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/geogrid-analysis of garrettjsmith/localseoskills.
Open the folder on GitHubat commit 405ce20
Geogrid Analysis next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Geogrid Analysis this skillgarrettjsmith/localseoskills | 120 | — | ~4.2k | Automated safety check: Pass | MIT | |
| Local Competitor Scanunifapi-agent/agents | 589 | — | ~2.3k | Automated safety check: Pass | MIT | |
| SEO Content Brief GeneratorAgriciDaniel/claude-seo | 19k | 2 repos | ~2.6k | Automated safety check: Pass | MIT | |
| FLOW SEO FrameworkAgriciDaniel/claude-seo | 19k | 2 repos | ~1.4k | Automated safety check: Pass | MIT | |
| SEO DataforseoAgriciDaniel/codex-seo | 797 | 2 repos | ~4.6k | Automated safety check: Pass | MIT | |
| Competitor ProfilingNexus-JPF/note-companion | 870 | 4 repos | ~3.5k | Automated safety check: Pass | MIT |
unifapi-agent/agents
When a local business wants to map the competitors winning the local pack for its target queries — their categories, ratings, review counts, and what they have that it lacks.
AgriciDaniel/claude-seo
Builds research-backed SEO content briefs with competitor scoring, per-section word counts and page-type templates, for new pages or improving existing ones.
AgriciDaniel/claude-seo
Brings the FLOW framework's stage-specific SEO prompts into the agent, from keyword discovery through backlinks, on-page work and conversion to local SEO, loaded on demand.
AgriciDaniel/codex-seo
Live SEO data via DataForSEO MCP server. An agent skill from AgriciDaniel/codex-seo.
Nexus-JPF/note-companion
When the user wants to research, profile, or analyze competitors from their URLs.
ferdinandobons/startup-skill
Deep competitive intelligence for any market. An agent skill from ferdinandobons/startup-skill.
garrettjsmith/localseoskills
When the user wants to programmatically manage Google Business Profiles at scale via API, automate GBP updates, build GBP management tools, or integrate GBP data into their systems.
garrettjsmith/localseoskills
When the user wants to create, schedule, or optimize Google Business Profile posts.
garrettjsmith/localseoskills
Generate complete semantic content briefs for local SEO content — location pages, service pages, blog posts, FAQ content, and pillar pages.
garrettjsmith/localseoskills
Manages persistent work state (briefs) for local SEO engagements.
garrettjsmith/localseoskills
Build a complete local content strategy from keyword research output.
garrettjsmith/localseoskills
When the user wants to run a geogrid scan, check existing scan reports, track ranking trends over time, monitor GBP changes via Falcon Guard, or analyze reviews.
Categories
When the user wants to analyze local ranking data using geogrid scans, interpret map pack rankings across a geographic area, or understand ARP/ATRP/SoLV metrics. Geogrid Analysis is an agent skill from garrettjsmith/localseoskills. When the user wants to analyze local ranking data using geogrid scans, interpret map pack rankings across a geographic area, or understand ARP/ATRP/SoLV metrics.
Geogrid Analysis fits situations like: wants to analyze local ranking data using geogrid scans; interpret map pack rankings across a geographic area; understand ARP/ATRP/SoLV metrics; the user mentions geogrid.
Run `npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a claude-code`. Or copy the skill folder (skills/geogrid-analysis in garrettjsmith/localseoskills) into .claude/skills/geogrid-analysis in your project. Claude Code loads it when a task matches its description.
Run `npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a codex`. Or copy the skill folder (skills/geogrid-analysis in garrettjsmith/localseoskills) into .agents/skills/geogrid-analysis in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add garrettjsmith/localseoskills --skill geogrid-analysis -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/geogrid-analysis, .gemini/skills/geogrid-analysis, .github/skills/geogrid-analysis and .opencode/skills/geogrid-analysis in your project.
SKILL.md names no scripts, command-line tools or credentials: Geogrid Analysis is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Geogrid Analysis is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.2k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Geogrid Analysis: Local Competitor Scan (unifapi-agent/agents, 589 stars), SEO Content Brief Generator (AgriciDaniel/claude-seo, 19k stars), FLOW SEO Framework (AgriciDaniel/claude-seo, 19k stars) and SEO Dataforseo (AgriciDaniel/codex-seo, 797 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
garrettjsmith (a GitHub user) maintains it in garrettjsmith/localseoskills, which has 120 GitHub stars. The repository holds 38 skills in this directory. The repository was last updated on August 15, 2026.
Source: garrettjsmith/localseoskills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.