SEO Maps
Maps intelligence for local SEO — geo-grid rank tracking, GBP profile auditing via API, review intelligence across Google/Tripadvisor/Trustpilot, cross-platform NAP verification (Google/Bing/Apple/OSM), competitor radius mapping, and LocalBusiness schema generation from API data. Three-tier capability: free (Overpass + Geoapify), DataForSEO (full intelligence), DataForSEO + Google (maximum coverage). Use when user says "maps", "geo-grid", "rank tracking", "GBP audit", "review velocity", "competitor radius", "maps analysis", "local rank tracking", "Share of Local Voice", or "SoLV".
MCP get_skill({ skillId: "maps-intelligence-march-2026-dfca3c5a" })Use this skill with your agent
Create a free account and connect via MCP
# Maps Intelligence (March 2026)
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:** `../seo/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:** `../seo/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:** `../seo/references/maps-geo-grid.md` for algorithm, SoLV formula, heatmap format.
**Load:** `../seo/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:** `../seo/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:** `../seo/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:** `../seo/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:** `../seo/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):
- `../seo/references/maps-api-endpoints.md`: DataForSEO endpoint details, params, costs
- `../seo/references/maps-free-apis.md`: Overpass, Geoapify, Nominatim query templates
- `../seo/references/maps-geo-grid.md`: Grid algorithm, SoLV formula, heatmap rendering
- `../seo/references/maps-gbp-checklist.md`: 25-field GBP audit with industry weights
- `../seo/references/local-seo-signals.md`: Ranking factors, review benchmarks (shared)
- `../seo/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. |Related Skills
More skills in Business, Marketing & Sales
Ab Testing
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program," or "experiment playbook." Use this whenever someone is comparing two approaches and wants to measure which performs better, or when they want to build a systematic experimentation practice. For tracking implementation, see analytics. For page-level conversion optimization, see cro.
Ab Test Setup
When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "conversion experiment," "statistical significance," or "test this." For tracking implementation, see analytics-tracking.
Ab Test Setup
Ab Test Setup linked from Corey Haines marketing skills, with the upstream skill instructions available on GitHub.
Ab Test Store Listing
When the user wants to A/B test App Store product page elements to improve conversion rate. Also use when the user mentions "A/B test", "product page optimization", "test my screenshots", "test my icon", "conversion rate optimization", "CPP", or "custom product pages". For screenshot design, see screenshot-optimization. For metadata optimization, see metadata-optimization.
Account Research
Research a company or person and get actionable sales intel. Works standalone with web search, supercharged when you connect enrichment tools or your CRM. Trigger with "research [company]", "look up [person]", "intel on [prospect]", "who is [name] at [company]", or "tell me about [company]".
Account Research
Research a company using Common Room data. Triggers on 'research [company]', 'tell me about [domain]', 'pull up signals for [account]', 'what's going on with [company]', or any account-level question.
Explore Other Categories
Skills from other categories with shared topics
Image
When the user wants to create, generate, edit, or optimize images for marketing — blog heroes, social graphics, product mockups, profile banners, listing visuals, or brand assets. Also use when the user mentions 'AI image generation,' 'generate an image,' 'create a graphic,' 'product mockup,' 'hero image,' 'social media graphic,' 'banner image,' 'cover photo,' 'profile banner,' 'listing screenshot,' 'Flux,' 'Flux Kontext,' 'Midjourney,' 'DALL-E,' 'GPT Image,' 'ChatGPT Images,' 'Ideogram,' 'Gemini image,' 'Nano Banana,' 'Recraft,' 'Stable Diffusion,' 'Canva,' 'Figma,' 'image optimization,' 'compress images,' 'WebP,' or 'OG image.' Use this for general-purpose marketing image creation and optimization. For paid ad image creative and platform-specific ad specs, see ad-creative. For video production, see video.
Kb Article
Draft a knowledge base article from a resolved issue or common question. Use when a ticket resolution is worth documenting for self-service, the same question keeps coming up, a workaround needs to be published, or a known issue should be communicated to customers.
Agent Protocol
Inter-agent communication protocol for C-suite agent teams. Defines invocation syntax, loop prevention, isolation rules, and response formats. Use when C-suite agents need to query each other, coordinate cross-functional analysis, or run board meetings with multiple agent roles.