
Seo Maps
- 28 installs
- 548 repo stars
- Updated July 20, 2026
- agricidaniel/codex-seo
This is a copy of seo-maps by agricidaniel - installs and ranking accrue to the original listing.
seo-maps is a Claude Code skill for local maps intelligence, doing geo-grid rank tracking, GBP audits, review intelligence, and cross-platform NAP verification across Google, Bing, Apple, and OSM.
About
seo-maps is a Claude Code skill for maps intelligence in local SEO: geo-grid rank tracking, GBP profile auditing via API, cross-platform review intelligence, NAP verification across Google/Bing/Apple/OSM, competitor radius mapping, and LocalBusiness schema generation. A developer uses it to see how a business ranks and appears across map platforms. It runs at three capability tiers depending on which APIs are available.
- Runs geo-grid rank tracking and Share-of-Local-Voice scans via DataForSEO
- Audits GBP profiles, cross-platform NAP (Google/Bing/Apple/OSM), and review velocity
- Three-tier design: free (Overpass/Geoapify), DataForSEO, and DataForSEO + Google Maps
Seo Maps by the numbers
- 28 all-time installs (skills.sh)
- +3 installs in the week ending Jul 12, 2026 (Skillselion tracking)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
seo-maps capabilities & compatibility
Free Tier 0 (Overpass/Geoapify/Nominatim); geo-grid and review intelligence consume DataForSEO credits with cost confirmation before each scan
- Capabilities
- geo grid rank tracking · gbp audit · review intelligence · nap verification · competitor radius mapping · local schema generation
- Use cases
- seo · marketing · data analysis
- Pricing
- Freemium
What seo-maps says it does
Maps intelligence for local SEO — geo-grid rank tracking, GBP profile auditing via API, review intelligence across Google/Tripadvisor/Trustpilot
Calculate SoLV: `(top_3_count / total_points) * 100`
npx skills add https://github.com/agricidaniel/codex-seo --skill seo-mapsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 28 |
|---|---|
| repo stars | ★ 548 |
| Last updated | July 20, 2026 |
| Repository | agricidaniel/codex-seo ↗ |
What it does
Track local map rankings and audit GBP, reviews, and cross-platform NAP across Google, Bing, Apple, and OSM.
Who is it for?
Geo-grid local rank tracking, GBP audits, review intelligence, and cross-platform NAP verification
Skip if: On-page website local signals; use seo-local for HTML-level checks
When should I use this skill?
user says maps, geo-grid, rank tracking, GBP audit, review velocity, competitor radius, Share of Local Voice, or SoLV
What you get
A maps health score with a geo-grid heatmap, GBP field scoring, review intelligence, and cross-platform presence status.
- MAPS-ANALYSIS report with a maps health score
- Geo-grid heatmap with SoLV
- GBP field-by-field audit
By the numbers
- Default 7x7 geo-grid (49 points), 5km radius
- 25-field GBP audit
- Three capability tiers
Files
Maps Intelligence (March 2026)
Shared Data Cache
Step 0 -- Check shared data cache:
Before gathering, check .seo-cache/ for reusable context from related SEO skills. Reference: ../seo/references/shared-data-cache.md for schemas and dependency map.
Check these cache files when present:
.seo-cache/site-meta.jsonfor domain, business type, industry, and crawl context.seo-cache/audit-scores.jsonfor prior full-audit priorities.seo-cache/pages/{url-slug}/page-analysis.jsonfor page-level context when a URL is provided
- If found: parse and use clearly valid fields (note "Using cached [X] from [date]")
- If missing, corrupt, or irrelevant: continue with fresh evidence
- If the user says "refresh" or "re-run": ignore cache reads and overwrite on write
Maps platform analysis for local businesses. Works with external APIs to assess how a business appears on Google Maps, Bing Places, Apple Maps, and OpenStreetMap.
Boundary with seo-local: This skill analyzes the business on maps PLATFORMS (via APIs). seo-local analyzes local SEO signals on the WEBSITE (via HTML fetch). Do not duplicate seo-local on-page analysis. Recommend /seo local <url> for website-level checks.
---
Quick Reference
| Command | What it does | Tier |
|---|---|---|
/seo maps <url> | Full maps presence audit (auto-selects tier) | 0+ |
/seo maps grid <keyword> <location> | Geo-grid rank scan (7x7, 1 keyword default) | 1+ |
/seo maps reviews <business> <location> | Cross-platform review intelligence | 1+ |
/seo maps competitors <keyword> <location> | Competitor radius mapping | 0+ |
/seo maps nap <business-name> | Cross-platform NAP verification | 0+ |
/seo maps schema <business-name> | Generate LocalBusiness JSON-LD from data | 0+ |
/seo maps gbp <business> <location> | GBP completeness audit | 1+ |
---
Three-Tier Capability Detection
Before any analysis, detect the available capability tier:
Tier 0 (Free)
Detection: DataForSEO MCP tools NOT available. Capabilities: Overpass API competitor discovery, Geoapify POI search, Nominatim geocoding, static GBP checklist, schema generation, cross-platform NAP guidance. Load: references/maps-free-apis.md
Tier 1 (DataForSEO)
Detection: business_data_business_listings_search MCP tool IS available. Capabilities: Everything in Tier 0 PLUS geo-grid rank tracking, live GBP profile audit, review intelligence (velocity, sentiment, distribution), GBP post activity, Q&A data, Tripadvisor/Trustpilot reviews. Load: references/maps-api-endpoints.md
Tier 2 (DataForSEO + Google Maps Platform)
Detection: Tier 1 available AND Google Maps API key in environment. Capabilities: Everything in Tier 1 PLUS Google Places details, real-time business status, AI-powered place summaries, photo analysis. Note: Google ToS restricts storage to place_id only. Lat/lng cached 30 days max.
Always communicate the detected tier to the user at the start of analysis.
---
Geo-Grid Rank Tracking (Tier 1+)
Simulates Google Maps searches from multiple GPS coordinates to show ranking variation across a geographic area. Requires DataForSEO.
Load: references/maps-geo-grid.md for algorithm, SoLV formula, heatmap format. Load: references/maps-api-endpoints.md for Maps SERP endpoint details.
Workflow
1. Geocode business address to get center lat/lng 2. Generate grid points (default: 7x7, 5km radius) using Haversine offset formula 3. Display cost estimate and ask for confirmation before proceeding 4. Fire DataForSEO Maps SERP API calls with location_coordinate per grid point 5. Find target business rank at each point 6. Calculate SoLV: (top_3_count / total_points) * 100 7. Render ASCII heatmap in output
Cost Warning (REQUIRED)
Before every geo-grid scan, display:
Geo-Grid Scan: [keyword] at [location]
Grid: 7x7 (49 points) | Keywords: [N] | Est. cost: $[amount]
DataForSEO credits will be consumed. Proceed?---
GBP Profile Audit (Tier 1 preferred, Tier 0 manual)
Audits the 25 fields that affect Google Business Profile quality and ranking.
Load: references/maps-gbp-checklist.md for full checklist and scoring.
Tier 1 Workflow
1. Fetch business profile via DataForSEO My Business Info API (keyword or CID) 2. Map API response fields to 25-field checklist 3. Score each field: Present + Optimized = 2pts, Present = 1pt, Missing = 0pts 4. Apply industry-specific weight multipliers 5. Normalize to 0-100 scale
Tier 0 Workflow
1. Fetch the business website via WebFetch 2. Extract any visible GBP signals (Maps embed, place references, review widgets) 3. Apply static checklist based on detectable signals 4. Mark undetectable fields as "Unknown (requires DataForSEO for live data)"
---
Review Intelligence (Tier 1+)
Cross-platform review analysis: velocity, sentiment, rating distribution, fake detection.
Reference: references/local-seo-signals.md for benchmarks (shared with seo-local).
Workflow
1. Fetch Google reviews via DataForSEO Reviews API (sort by newest) 2. Calculate review velocity: reviews per month over last 6 months 3. Check 18-day rule (Sterling Sky): any 3-week gap = ranking risk 4. Analyze rating distribution: healthy = bell curve skewed to 5-star 5. Calculate owner response rate: responses / total reviews 6. Fetch Tripadvisor and Trustpilot reviews (if available) 7. Cross-platform comparison table
Fake Review Detection Signals
Flag reviews matching 2+ of these patterns:
- Uniform timing (multiple reviews same day/hour)
- Reviewer accounts with limited history or single review
- Geographic inconsistencies (reviewer location vs business location)
- Exclusively 5-star velocity spike (vs historical baseline)
- Identical or near-identical text across reviews
- Sudden volume spike without corresponding marketing activity
---
Competitor Radius Mapping (Tier 0+)
Identify and analyze competitors within a defined radius.
Tier 0 (Overpass API)
Load: references/maps-free-apis.md for query templates.
1. Geocode business address 2. Query Overpass API for businesses with same OSM tag within radius 3. Parse results: name, address, phone, website, distance from center 4. Sort by distance, present as competitor landscape table
Tier 1 (DataForSEO)
1. Use Maps SERP API with business keyword + location 2. Extract top 20 competitors with full profile data 3. Compare: rating, review count, categories, photos, attributes 4. Calculate competitive density score: competitors per km^2
---
Cross-Platform NAP Verification (Tier 0+)
Check business listing consistency across Google, Bing Places, Apple, and OSM.
Workflow
1. Search for business name on each platform:
- Google: infer from GBP data or Maps SERP result
- Bing:
WebFetch https://www.bing.com/maps?q=BUSINESS+NAME+LOCATION - Apple: manual check (no public API -- recommend Apple Business Connect at businessconnect.apple.com)
- OSM: Overpass or Nominatim search
2. Extract NAP (Name, Address, Phone) from each source 3. Compare for consistency: exact match, partial match, missing, or conflicting 4. Flag discrepancies as Critical (name mismatch), High (address mismatch), Medium (phone mismatch) 5. Recommend claiming unclaimed profiles
---
Schema Generation (Tier 0+)
Generate LocalBusiness JSON-LD markup from collected data.
Reference: references/local-schema-types.md for industry subtypes (shared with seo-local).
Workflow
1. Determine most specific schema subtype for the industry 2. Populate required properties: @type, name, address, image 3. Add recommended properties: telephone, url, geo, openingHoursSpecification, priceRange 4. Add strategic properties for multi-location: branchOf, areaServed, sameAs 5. Add aggregateRating if review data available 6. Output valid JSON-LD block ready for implementation
Do NOT generate self-serving review markup -- Google ignores LocalBusiness review markup from the business itself. Only mark up third-party reviews visible on the page.
---
Reference Files
Load on-demand as needed (do NOT load all at startup):
references/maps-api-endpoints.md: DataForSEO endpoint details, params, costsreferences/maps-free-apis.md: Overpass, Geoapify, Nominatim query templatesreferences/maps-geo-grid.md: Grid algorithm, SoLV formula, heatmap renderingreferences/maps-gbp-checklist.md: 25-field GBP audit with industry weightsreferences/local-seo-signals.md: Ranking factors, review benchmarks (shared)references/local-schema-types.md: LocalBusiness subtypes by industry (shared)
---
Output
Generate MAPS-ANALYSIS-{domain}.md with:
1. Maps Health Score: XX/100 with dimension breakdown table 2. Capability tier detected (Tier 0 or Tier 1) with explanation of what's available 3. Geo-grid heatmap (Tier 1): ASCII grid with SoLV percentage and average rank 4. GBP profile audit: field-by-field scoring with industry-specific weights 5. Review intelligence: velocity chart, rating distribution, response rate, cross-platform comparison 6. Competitor landscape: count in radius, top 5 by rating/reviews, competitive density 7. Cross-platform presence: Google/Bing/Apple/OSM listing status 8. Schema recommendation: generated LocalBusiness JSON-LD (if missing or incomplete) 9. Top 10 prioritized actions (Critical > High > Medium > Low) 10. Cost report: DataForSEO credits consumed during analysis (Tier 1 only) 11. Limitations disclaimer: what could not be assessed at current tier
---
Cross-Skill Delegation
- Website on-page local signals: recommend
/seo local <url> - Full AI search visibility: recommend
/seo geo <url> - Schema validation and fixes: recommend
/seo schema <url> - Live SERP and keyword data: recommend
/seo dataforseo [command]
---
Error Handling
| Scenario | Action |
|---|---|
| DataForSEO MCP not available | Drop to Tier 0. Inform user: "DataForSEO not detected. Running free-tier analysis. For geo-grid tracking and review intelligence, install the DataForSEO extension." |
| Business not found in Maps SERP | Try My Business Info with keyword. If still not found, report "Business not found in Google Maps for this location." |
| Geocoding fails (Nominatim) | Ask user to provide coordinates or a more specific address. |
| API rate limit hit | Report the limit. Suggest waiting or using standard (queued) method instead of live. |
| No reviews found | Report zero review state. Recommend review generation strategy with 18-day cadence target. |
| Multi-location detected | Ask user which location to analyze, or offer batch mode with per-location cost estimate. |
Write to shared data cache
After completing all work, write a concise JSON summary to .seo-cache/ when the workflow produced durable findings. Use the schemas and naming rules in ../seo/references/shared-data-cache.md; include at least cache_type, analyzed_at, source URL/domain, key findings, issues, recommendations, and tool limitations. Add .seo-cache/ to .gitignore if it is missing.
MIT License - see repository root LICENSE file for complete terms.
Copyright (c) 2026 AgriciDaniel
https://github.com/AgriciDaniel/codex-seo
Related skills
FAQ
What are seo-maps' capability tiers?
Tier 0 is free (Overpass, Geoapify, Nominatim), Tier 1 adds DataForSEO (geo-grid, live GBP, review intelligence), and Tier 2 adds the Google Maps API for Places details.
How does the geo-grid scan work?
It geocodes the address, generates grid points (default 7x7, 5km radius), fires Maps SERP calls per point, finds the target rank, and computes Share of Local Voice as top-3 count over total points.