← Back to Skills Marketplace
geoly-geo

GEO Competitor Scanner

by GEOLY AI · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
422
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install geo-competitor-scanner
Description
Analyze competitor GEO (Generative Engine Optimization) strategies by examining their content structure, Schema markup, llms.txt, and AI citation signals. Be...
README (SKILL.md)

GEO Competitor Scanner

Methodology by GEOly AI (geoly.ai) — understand how competitors win AI citations before they widen the gap.

Analyze competitor websites across key GEO signals to benchmark your brand and identify opportunities.

Quick Start

Scan competitors:

python scripts/scan_competitors.py --brand yourdomain.com \
  --competitors competitor1.com,competitor2.com \
  --output report.md

Scan Dimensions

1. Technical GEO Infrastructure

Check Why It Matters
/llms.txt exists AI crawler guidance
/robots.txt allows AI bots Crawl accessibility
Schema.org types present Structured understanding
JSON-LD valid Machine-readable content
HTTPS enforced Security signal

2. Content Structure Analysis

Signal What to Look For
Direct answer lead First paragraph answers the question
FAQ sections Explicit Q&A blocks (2-5 per page)
Header structure H2 every 300-500 words
Data citations Statistics with sources
Definition blocks Key terms defined clearly

3. Entity & Brand Signals

Signal Implementation
Organization schema Homepage JSON-LD
sameAs links Social/Wikipedia connections
Consistent naming Brand name standardized
About page Entity definition
Brand in first 100 words Early entity mention

4. Citation-Optimized Content

Content Type GEO Value
Original research Unique data attracts citations
Comparison pages "vs" queries are high-intent
Definition content "What is" queries are common
Content hubs Topical authority building
Statistics pages Reference-worthy data

Full methodology: See references/scan-methodology.md

Research Workflow

Step 1: Identify Competitors

Collect up to 5 competitors:

  • Direct competitors (same category)
  • Adjacent competitors (overlapping use cases)
  • Aspirational competitors (bigger brands)

Step 2: Automated Scan

Run scanner on each domain:

python scripts/scan_competitors.py \
  --brand yourdomain.com \
  --competitors comp1.com,comp2.com,comp3.com \
  --pages 5 \
  --output scan-results.json

Step 3: Manual Review

For nuanced signals, review manually:

  • Content quality (can't automate)
  • Brand voice consistency
  • Unique value propositions

Step 4: Gap Analysis

Identify:

  • 🏆 Competitor advantages — What they do better
  • 🎯 Quick wins — Easy to implement (copy)
  • 🕳️ Category gaps — No one is doing this (opportunity)

Scoring System

Each competitor scored 0-10 per dimension:

Score Rating Meaning
9-10 Excellent Best practice implementation
7-8 Good Solid with minor gaps
5-6 Fair Significant room for improvement
3-4 Poor Major issues present
0-2 Critical Fundamental problems

Overall GEO Score: Average of 4 dimensions (max 10)

Output Report

Competitive Matrix

| Signal | Your Brand | Competitor A | Competitor B | Gap |
|--------|------------|--------------|--------------|-----|
| llms.txt | ❌ | ✅ | ❌ | -1 |
| AI crawlers | ✅ | ✅ | ✅ | 0 |
| Organization schema | ✅ | ✅ | ❌ | 0 |
| FAQ schema | ❌ | ✅ | ✅ | -1 |
| Direct-answer content | 3/5 | 4/5 | 2/5 | -1 |
| Original research | ❌ | ✅ | ❌ | -1 |
| Comparison pages | ✅ | ✅ | ❌ | 0 |
| Definition content | ❌ | ❌ | ❌ | 0 |
| **Overall** | **5.2/10** | **7.8/10** | **4.1/10** | **-2.6** |

Insights

🏆 Competitor Advantages:

  • Competitor A: Strong FAQ schema on all product pages
  • Competitor B: Publishes quarterly industry benchmarks

🎯 Your Quick Wins:

  • Add llms.txt (3 competitors have it, you don't)
  • Implement FAQ schema on top 10 pages
  • Add definition blocks to 5 key concept pages

🕳️ Category Gaps:

  • No competitor has a comprehensive "What is [category]?" guide
  • Missing: Comparison matrix of all major players
  • Opportunity: Original research on industry trends

Advanced Usage

Page-Level Analysis

Scan specific competitor pages:

python scripts/analyze_page.py https://competitor.com/pricing \
  --type product \
  --output analysis.json

Trend Tracking

Track competitor changes over time:

# Initial scan
python scripts/scan_competitors.py --brand your.com --competitors comp.com --save-baseline

# 30 days later
python scripts/scan_competitors.py --brand your.com --competitors comp.com --compare-to baseline.json

Bulk Page Analysis

Analyze multiple pages from sitemap:

python scripts/bulk_scan.py https://competitor.com/sitemap.xml \
  --limit 50 \
  --output bulk-results.json

See Also

Usage Guidance
This skill appears to be a simple web scanner and is not requesting secrets, but there are important inconsistencies you should resolve before installing: - SKILL.md references additional scripts (scripts/analyze_page.py, scripts/bulk_scan.py) and CLI flags (--pages, --save-baseline, --compare-to) that are not included; ask the publisher for the missing files or an updated README. Running the documented commands as-is will fail or produce less functionality than described. - The included script performs HTTP GETs of whatever domains you supply. That is expected, but be mindful of legal/ToS issues and rate limits when scanning third-party sites; run against domains you own or have permission to scan and consider adding delays or respecting robots.txt. - The Python script requires requests and beautifulsoup4 but provides no installation instructions—install those packages in a sandboxed environment (virtualenv) before running. - The script’s scoring math and some heuristics are simplified/fragile (e.g., naive robots parsing and schema extraction); treat output as a rough signal and verify important findings manually. If you want to proceed safely: request the missing scripts or a corrected SKILL.md, run the scanner in a restricted environment, and review the code yourself (or ask for the author to supply tests/examples) before letting an agent invoke it autonomously.
Capability Analysis
Type: OpenClaw Skill Name: geo-competitor-scanner Version: 1.0.0 The skill performs legitimate web scraping for GEO analysis using `requests` and `BeautifulSoup`. It fetches public website content and does not exhibit clear malicious intent such as data exfiltration to unauthorized endpoints, persistence mechanisms, or direct remote code execution. However, the `scripts/scan_competitors.py` script is vulnerable to path traversal via the `--output` argument, allowing an attacker to write the generated report to an arbitrary file path (e.g., `../../../../etc/passwd`). This is a significant vulnerability that allows unauthorized file modification, classifying the skill as suspicious rather than benign.
Capability Assessment
Purpose & Capability
Name/description (GEO competitor scanner) match the included scanner code's intent (fetch pages, check llms.txt, robots.txt, JSON-LD, headers, simple heuristics). The skill does not request unrelated credentials or system access. However the SKILL.md describes several features (page-level analyzer, bulk_scan, trend tracking, saving baselines, flags like --pages and --save-baseline) that the included script does not implement, which is an unexplained discrepancy.
Instruction Scope
SKILL.md instructs the agent to run multiple scripts (scripts/analyze_page.py, scripts/bulk_scan.py) and CLI flags (--pages, --save-baseline, --compare-to) that are referenced in the docs but are not present in the file manifest. The primary runtime file (scripts/scan_competitors.py) performs only HTTP fetches and local JSON-LD/header counts; it does not collect or transmit secrets or call external analytic endpoints. The mismatch between written instructions and actual code gives the agent broad, undefined discretion if followed literally.
Install Mechanism
No install spec (instruction-only skill with a bundled script). No installer downloads or archive extraction. The script requires third-party Python packages (requests, beautifulsoup4) but does not provide an install step—low risk but the dependency requirement is implicit.
Credentials
The skill declares no required environment variables, config paths, or credentials and the code does not read env vars. Network access is necessary to fetch public competitor pages (expected). There are no hidden credential requests or secrets handling.
Persistence & Privilege
always is false and the skill does not request elevated or persistent privileges. It does not modify other skills or system configuration. Autonomous invocation is allowed by platform default (no additional concern in isolation).
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install geo-competitor-scanner
  3. After installation, invoke the skill by name or use /geo-competitor-scanner
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release: Analyze competitor GEO strategies and content gaps, inspired by GEOly AI Intelligence Agent
Metadata
Slug geo-competitor-scanner
Version 1.0.0
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is GEO Competitor Scanner?

Analyze competitor GEO (Generative Engine Optimization) strategies by examining their content structure, Schema markup, llms.txt, and AI citation signals. Be... It is an AI Agent Skill for Claude Code / OpenClaw, with 422 downloads so far.

How do I install GEO Competitor Scanner?

Run "/install geo-competitor-scanner" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is GEO Competitor Scanner free?

Yes, GEO Competitor Scanner is completely free (open-source). You can download, install and use it at no cost.

Which platforms does GEO Competitor Scanner support?

GEO Competitor Scanner is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created GEO Competitor Scanner?

It is built and maintained by GEOLY AI (@geoly-geo); the current version is v1.0.0.

💬 Comments