Install
$ agentstack add skill-mshahiddigital-agentic-local-seo-audit-competitor-analysis ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Competitor Deep Analysis — Phase 1
Executive Summary
Competitor analysis is the intelligence layer that makes every subsequent phase actionable. Without knowing what the top-ranking competitors do, every recommendation is directionally blind. This phase profiles 3–5 competitors across 9 dimensions in enough depth that all subsequent phases can benchmark findings against real competitor data. Time investment: 45–90 minutes produces data that informs 20+ recommendations across the audit.
2025 competitive landscape shift: AI Overviews appear for 20–35% of local service queries — competitors who are cited by AIO have invisible traffic advantages that traditional ranking data doesn't show. This phase must audit AI visibility, not just organic rankings.
Tools for This Phase
| Tool | Purpose | Cost | |------|---------|------| | Ahrefs | Organic keywords, DR, referring domains, traffic estimate, top pages | Paid | | SEMrush | Keyword gap, backlink audit, traffic analytics, page-level keywords | Paid | | Moz | Domain Authority, spam score, top pages | Free/Paid | | Google PageSpeed Insights | CWV: mobile score, LCP, INP, CLS per competitor | Free | | Google Rich Results Test | Schema types implemented by competitor | Free | | Google Search | Local pack positions, SERP features owned, featured snippets | Free | | Google Maps / GBP | Review count, rating, GBP completeness, category | Free | | ChatGPT / Perplexity / Gemini | AI visibility test — are competitors cited? | Free | | BuiltWith | CMS, hosting, technology stack per competitor | Free | | Majestic | Trust Flow / Citation Flow ratio, link profile quality | Paid |
Step 1: Read Project Context
Read {AUDIT_DIR}/intake-data.md — business name, URL, services, location, competitor list.
If competitors not provided in intake, use this 3-search identification protocol:
- Google:
[primary service] [city]→ note top 3 local pack + top 3 non-directory organic - Google:
best [service] [city]→ cross-reference, add new names - Google:
[service] [city] reviews→ identify any additional local leaders
Confirm each competitor:
- Actually ranks for target keywords in target city (not a national brand with one page)
- Has a website (not just a GBP listing)
- Competes on primary services (not just adjacent services)
Present findings: "I've identified these top competitors: [list]. Please confirm or swap any."
Step 2: Analyze Each Competitor Across All 9 Dimensions
For 3–5 competitors, systematically research each dimension. Do NOT guess — verify with web search, page fetch, and public data tools.
Dimension 1: Business Profile
| Data Point | How to Find | Comp 1 | Comp 2 | Comp 3 | |-----------|------------|--------|--------|--------| | Business type (independent/chain/franchise) | Website + Google Maps | | | | | Domain age | Whois / BuiltWith | | | | | Years in business | About page / GBP | | | | | Indexed pages (site:[domain]) | Google search | | | | | Tech stack (CMS) | BuiltWith | | | | | Service areas (same/broader/narrower) | Website + GBP | | | | | # of locations | Google Maps search | | | | | Estimated team size | LinkedIn Company page | | | |
Dimension 2: Technical SEO Profile
CWV benchmarks (2025 — INP replaced FID March 2024):
| Metric | Good | Comp 1 | Comp 2 | Comp 3 | Client | |--------|------|--------|--------|--------|--------| | Mobile PSI Score | > 70 | | | | | | LCP (mobile) | < 2.5s | | | | | | INP (mobile) | < 200ms | | | | | | CLS (mobile) | < 0.1 | | | | | | TTFB | < 800ms | | | | |
Additional technical checks per competitor:
- HTTPS: valid SSL? ✅/❌
- Schema types (Google Rich Results Test): list all present
- URL structure: logical hierarchy? Keyword-inclusive slugs?
- Site architecture depth (service pages: 2-3 clicks from homepage = good)
- Mobile responsive: test at 375px viewport
Dimension 3: Content Strategy
For each competitor (Ahrefs → Site Explorer → Organic Pages → sort by traffic):
| Data Point | Comp 1 | Comp 2 | Comp 3 | |-----------|--------|--------|--------| | Total pages estimated (site: count) | | | | | Service pages count | | | | | Location pages count | | | | | Blog posts count | | | | | Publishing frequency (last 10 posts dates) | | | | | Word count on top service page | | | | | Word count on blog posts | | | | | Unique content assets (tools, guides, calculators) | | | | | Local content (city guides, neighborhood pages) | | | | | FAQPage schema present on service pages | | | | | Content freshness (last updated on key pages) | | | |
Content depth benchmark (2025 HCS standards):
- Service page < 800 words = substandard
- Service page 1,200–2,000 words = competitive
- Blog post < 1,200 words = thin
- Pillar blog 2,500+ words = authoritative
Dimension 4: Keyword Strategy
From Ahrefs/SEMrush → Site Explorer → Organic Keywords:
| Data Point | Comp 1 | Comp 2 | Comp 3 | |-----------|--------|--------|--------| | Estimated monthly organic traffic | | | | | Total organic keywords ranking | | | | | Top 5 keywords by traffic | | | | | "Near me" keyword rankings | | | | | Featured snippet ownership (count) | | | | | PAA (People Also Ask) presence | | | | | Question-format content for AIO | | | | | Long-tail service + location coverage | | | |
Dimension 5: Backlink & Authority Profile
| Metric | Comp 1 | Comp 2 | Comp 3 | Client | Gap | |--------|--------|--------|--------|--------|-----| | Domain Rating (DR) — Ahrefs | | | | | | | Domain Authority (DA) — Moz | | | | | | | Trust Flow (TF) — Majestic | | | | | | | Citation Flow (CF) — Majestic | | | | | | | TF:CF ratio (target ≥ 0.5) | | | | | | | Referring domains count | | | | | | | % from niche-relevant sites | | | | | | | Top 3 link sources | | | | | | | Citation directory depth | | | | | |
Link building pattern analysis:
- Where do their links come from? (industry directories / local news / guest posts / partnerships)
- Authoritative niche links client doesn't have?
- Local citation depth (how many directories listed?)
Dimension 6: Local SEO Profile
| Data Point | Comp 1 | Comp 2 | Comp 3 | Client | |-----------|--------|--------|--------|--------| | GBP star rating | | | | | | GBP review count | | | | | | Review velocity (estimated/month) | | | | | | Local pack position (primary keyword) | | | | | | GBP categories (primary + secondary) | | | | | | GBP photos count | | | | | | GBP posts active? | | | | | | Q&A section populated? | | | | | | Services listed in GBP? | | | | | | NAP consistency (spot-check 3 directories) | | | | |
GBP completeness benchmarks:
- 100+ photos = 1,065% more website clicks (Google data, 2024)
- Review count ≥ 50 + rating ≥ 4.5 = strong local pack signal
- 4.3+ stars required for local AIO citation (SparkToro 2025)
Dimension 7: AI Visibility (2025 Critical)
Test for each competitor across all AI platforms:
AI visibility test protocol:
Queries to test:
1. "Best [service] in [city]" (Google AIO + ChatGPT + Perplexity)
2. "[Competitor name] [city] — what are their services?" (Gemini + Perplexity)
3. "Who should I call for [problem] in [city]?" (ChatGPT + Google AIO)
| Platform | Comp 1 | Comp 2 | Comp 3 | Client | |---------|--------|--------|--------|--------| | Google AIO (main service query) | Cited/Not | Cited/Not | Cited/Not | Cited/Not | | ChatGPT (conversational) | Cited/Not | Cited/Not | Cited/Not | Cited/Not | | Perplexity (local service) | Cited/Not | Cited/Not | Cited/Not | Cited/Not | | Knowledge Panel (branded) | Yes/No | Yes/No | Yes/No | Yes/No | | FAQPage schema (AIO trigger) | Yes/No | Yes/No | Yes/No | Yes/No |
Dimension 8: Social Media Presence
| Platform | Comp 1 Followers | Comp 2 Followers | Comp 3 Followers | Client Followers | |---------|-----------------|-----------------|-----------------|-----------------| | Facebook | | | | | | Instagram | | | | | | YouTube | | | | | | LinkedIn | | | | | | TikTok | | | | |
Qualitative assessment per competitor:
- Primary platform: [Facebook/Instagram/YouTube]
- Posts per month: [X]
- Estimated engagement: [High/Medium/Low]
- Before/after content: ✅/❌
- Reviews amplified on social: ✅/❌
- YouTube: channel size, video quality, embedded on website?
Dimension 9: SERP Feature Ownership
For top 10 shared target keywords:
| SERP Feature | Comp 1 | Comp 2 | Comp 3 | Client | |-------------|--------|--------|--------|--------| | Local Pack — keywords owned | [X/10] | [X/10] | [X/10] | [X/10] | | Featured Snippets — keywords owned | [X] | [X] | [X] | [X] | | PAA boxes — questions answered | [X] | [X] | [X] | [X] | | Video Carousel | Yes/No | Yes/No | Yes/No | Yes/No | | Image Pack | Yes/No | Yes/No | Yes/No | Yes/No | | FAQ Rich Results | Yes/No | Yes/No | Yes/No | Yes/No | | Knowledge Panel | Yes/No | Yes/No | Yes/No | Yes/No | | Sitelinks (branded) | Yes/No | Yes/No | Yes/No | Yes/No |
Competitor Scorecard
Rate each competitor 1–10 per dimension. Use as benchmark throughout audit:
| Dimension | Client | Comp 1 | Comp 2 | Comp 3 | |-----------|--------|--------|--------|--------| | 1. Business Profile (maturity, size) | | | | | | 2. Technical SEO + CWV | | | | | | 3. Content Strategy + Depth | | | | | | 4. Keyword Strategy | | | | | | 5. Backlink Authority | | | | | | 6. Local SEO / GBP | | | | | | 7. AI Visibility (AIO, ChatGPT) | | | | | | 8. Social Media Presence | | | | | | 9. SERP Feature Ownership | | | | | | TOTAL | /90 | /90 | /90 | /90 |
Competitive Intelligence Analysis
Gap Table (Competitor Advantages → Client Action)
| Gap | Competitor Advantage | Client Weakness | Difficulty | Priority | |-----|---------------------|-----------------|-----------|---------| | [gap 1] | [how top comp does it] | [what client lacks] | Easy/Med/Hard | H/M/L |
Exploitable Opportunities (Client Stronger Than Competitors)
Areas where client has competitive advantage — amplify these:
- [Strength]: [how to amplify aggressively]
- [Strength]: [how to amplify aggressively]
Competitor Weaknesses to Exploit
Areas where ALL competitors are weak — first-mover advantage available:
- [weakness]: [specific content/link/local opportunity]
- [weakness]: [specific content/link/local opportunity]
Threats Assessment
What competitor advantages pose the biggest ranking risk? | Threat | Competitor | Risk Level | Defensive Action | |--------|-----------|-----------|-----------------| | [threat] | [comp name] | Critical/High/Med | [action] |
Quick Wins from Competitor Research
Items that can be replicated from top competitors in < 30 days:
| Win | Competitor Source | Action Required | Effort | Expected Impact | |-----|------------------|----------------|--------|----------------| | [win 1] | [comp] | [specific action] | [time] | [result] | | [win 2] | [comp] | [specific action] | [time] | [result] | | [win 3] | [comp] | [specific action] | [time] | [result] |
Priority Matrix
| Action | Impact (1–5) | Feasibility (1–5) | Priority | Effort | |--------|-------------|-------------------|---------|--------| | Identify 3+ competitors with specific URLs | 5 | 5 | 25 | 15 min | | Record GBP data (stars, reviews, categories) | 5 | 5 | 25 | 20 min | | Run CWV comparison (PageSpeed Insights ×4) | 5 | 5 | 25 | 20 min | | Test AI visibility (ChatGPT + Perplexity) | 5 | 5 | 25 | 15 min | | Ahrefs DR + traffic comparison | 4 | 4 | 16 | 15 min | | SERP feature ownership audit | 4 | 4 | 16 | 20 min | | Schema types audit (Rich Results Test) | 4 | 5 | 20 | 15 min | | Social media follower comparison | 3 | 5 | 15 | 10 min |
Output
Write complete profiles to {AUDIT_DIR}/competitor-profiles.md with YAML frontmatter:
---
skill: research/competitor-analysis
phase: 1
date: [YYYY-MM-DD]
business: [Business Name]
url: [URL]
score: N/A
competitors_analyzed: [X]
top_competitor: [name]
top_competitor_url: [url]
client_score: [X/90]
top_competitor_score: [X/90]
score_gap: [X]
---
Include:
- All 9 dimension tables (completed with real data — no placeholders)
- Competitor scorecard (client vs. all 3 competitors, /90 total)
- Gap table (top 10 gaps ordered by priority)
- Exploitable opportunities list (client strengths)
- Competitor weaknesses to exploit (first-mover opportunities)
- Threat assessment (risks to defend against)
- Quick wins list (top 5 replicable actions < 30 days)
- AI visibility comparison (AIO + ChatGPT + Perplexity per competitor)
This file is read by ALL 21 subsequent phases — every finding benchmarks against this data. Quality here multiplies throughout the entire audit.
Key consumers:
- All 21 phases — competitor data feeds every benchmark
research/content-gaps— competitor content strategy informs gap analysisresearch/keyword-gaps— competitor organic keywords drive gap analysiscross-cutting/serp-trust-auditor— SERP feature ownership comparisoncross-cutting/local-impact-auditor— GBP + local SEO competitor comparison
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: mshahiddigital
- Source: mshahiddigital/agentic-local-seo-audit
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.