The competitor gap mirror
The fastest path to ranking for a topic is to write about one that’s already ranking for someone else. If a competitor has eighty posts earning traffic on a topic and you have none, the demand is proven and the playbook is sitting in plain sight. Sitemap analysis is the cheapest competitive intel that exists — every public site exposes one — and pointing an assistant at both their sitemap and your archive surfaces three kinds of opportunity at once: whole topics you’re missing, specific queries they target and you don’t, and areas you cover thinly that they cover deeply. The assistant does the analysis and the production; you supply the editorial judgment about which gaps are worth filling.
What you need
- Specter synced to your blog
- An AI assistant with fetch or web-search enabled (to sample competitor posts)
- One or more competitor sitemap URLs (usually at
/sitemap.xml)
The recipe
- Pull your archive. Run a Specter pull so the assistant knows your coverage in detail.
- Map both sides. Run the self-map prompt over your posts, then the competitor-scan prompt over each rival’s sitemap.
- Compute the gap. Run the gap prompt to diff the two into a prioritized brief of post ideas.
- Approve and draft. Drop topics that don’t fit your brand, then hand the queue to the topical cluster builder (or draft directly). Dry-run and push as drafts; publish on your own cadence, not fifty in one day.
The prompt
Map your own coverage, then profile the competitor:
Map this blog's topic coverage: read every post and output structured JSON of
topics → subtopics → the posts in each, with a depth rating (deep = 5+ posts,
medium = 2–4, thin = 1) and a short summary. Then, given a competitor sitemap
URL: fetch it, filter to blog posts, sample ~30 representative posts to understand
structure, cluster the full URL list by topic, and output the same JSON shape
with post counts, depth, and freshness per subtopic.
Then compute the gap into a brief:
Diff our coverage against the competitor's and write a prioritized gap report:
topics they own and we don't (with example titles, strategic fit, and a BUILD /
SKIP / LATER call), topics we both cover but they cover deeper (EXPAND / LEAVE),
and topics we own that they don't (our moat). End with a ranked queue of up to 20
specific post ideas balancing strategic fit, demand signal, freshness, and our
differentiation angle. Each item: working title, target query, why this one,
estimated impact. This is the brief — draft nothing.
Cost and time
| Phase | Tokens | Cost |
|---|---|---|
| Self-map (200 posts) | ~500k | $1 |
| Competitor scan (30 sampled) | ~500k | $1.50 |
| Gap report | ~200k | $0.50 |
| Drafting 20 gap posts | ~2M | $5 |
| Total per competitor cycle | ~3.2M | ~$8 |
Pitfalls
- Don’t clone. The recipe finds topic gaps, not posts to copy. Always write with a fresh angle — if a draft reads like a rewrite of theirs, your reputation costs more than the SEO gain.
- Strategic fit. “They cover it” isn’t “we should.” Skip topics that don’t fit your audience.
- Crawl politely. Some sitemaps are large and some sites block scraping. Throttle, and fall back to titles-only if needed.
Where to go next
Run it once a quarter, and for sharper signal profile two or three competitors and prioritize the gaps that show up across more than one — those are the proven-demand topics. Run drafts through the brand voice enforcer so your voice doesn’t drift toward theirs.