Skip to main content
AC
SEO & AEO6.5 KBMIT licensed

claude-seo-backlinks

Rewritten from patterns in AgriciDaniel/claude-seo (MIT)

Backlink profile analysis: referring domains, anchor text distribution, toxic link detection, competitor link gap. Use when the user says backlinks, link profile, referring domains, anchor text, toxic links, link gap, link building, disavow, or backlink audit. Not for keyword clustering or content architecture: use claude-seo-cluster. Not for building the overall SEO strategy: use claude-seo-plan.

  • claude
  • seo
  • backlinks

SKILL.md

Backlink Profile Analysis

Every backlink claim must carry a data source and a confidence label. The worst output this skill can produce is a confident number built on thin data: when sources are missing, say INSUFFICIENT DATA instead of inventing a score.

Detect sources first

Before any analysis, establish which data sources are actually available, best first:

SourceAccessConfidenceGives you
DataForSEO (MCP/API)paid1.0Full profile, anchors, spam scores, new/lost links
Moz APIfree signup, <MOZ_API_TOKEN>0.85DA/PA, spam score, anchors, linking domains. Rate limit ~1 req/10s on free tier
Bing Webmaster APIfree signup, site must be verified0.70Inbound links, anchors, built-in two-site comparison
Common Crawl host graphalways available0.50Domain-level in-degree, PageRank, top referring domains
Direct verification crawlalways available0.95Whether a specific known backlink still exists on the page

Confirm each source with a live test call, not by assuming a key works. With nothing configured beyond the free tier, still produce a report from Common Crawl data, labeled at 0.50 confidence, and tell the user which free signups would upgrade it.

The seven analysis sections

Produce all seven, each labeled with its source and confidence:

  1. Profile overview. Referring domain count, follow ratio, trend. Benchmarks: over 100 referring domains is healthy, under 20 critical; follow ratio over 60% good, under 40% critical; no single domain should supply over 5% of links.
  2. Anchor text distribution. Healthy: branded 30-50%, naked URL 15-25%, generic 10-20%, exact-match keyword 3-10%, partial match 5-15%. Exact match over 15% is a Penguin-risk flag.
  3. Referring domain quality. TLD mix (.edu/.gov/.org strong; heavy .xyz/.info weak), country mix matching the target market (80%+ irrelevant-country links suggests a PBN), authority spread across tiers, follow/nofollow per domain.
  4. Toxic link detection. Read references/toxic-patterns.md when scoring toxicity or drafting disavow recommendations. Never recommend disavow from a single weak signal.
  5. Top pages by backlinks. Link magnets, pages with zero links (internal-linking opportunities), and 404 pages holding backlinks (redirect to reclaim equity).
  6. Competitor gap. Domains linking to the competitor but not the target are the opportunity list; output the top 20 with authority scores. Bing's comparison endpoint is the one free tool with this built in.
  7. New and lost links. Velocity tracking requires a paid history source. Without one, state plainly: "Free sources provide point-in-time snapshots only." Red flags when available: sudden spikes (possible negative SEO), sudden mass loss (penalty or removal), 3+ months of declining velocity.

Health score

Compute a 0-100 score only when 4 or more of the 7 weighted factors have data. Read references/health-score.md for weights, confidence multipliers, and redistribution rules. Under 4 factors: report Backlink Health Score: INSUFFICIENT DATA (X/7 factors scored), show the factors you do have, and name the cheapest source that would make the profile scoreable. Common-Crawl-only profiles cap at 70/100.

Output format

Lead with the health score (or INSUFFICIENT DATA), then a section table with status, score, and source label per row, then four action lists: critical (fix immediately), high priority (this month), medium (ongoing), and top 10 link building opportunities.

Good vs bad

Bad: "Backlink Health: 34/100. Profile is weak." Built from Common Crawl in-degree alone. The number implies measured poor health when the reality is missing data.

Good: "Backlink Health: INSUFFICIENT DATA (2/7 factors). Referring domains: 41 (Common Crawl, 0.50). Anchor data, spam scores, and velocity unavailable. Add the free Moz API key to make this scoreable."

Pre-delivery fact check

Before presenting, verify internally:

  • Any "link removed" finding on a JavaScript-rendered page is reported as "unverifiable (JS-rendered)", never as removed. This is the most common false negative.
  • Every "not found" distinguishes not-crawled vs below-threshold vs fetch-error.
  • The referring-domain count in the summary matches the verified list backing it.
  • Reciprocal patterns (A links B, B links A) are flagged where outbound data exists.
  • Every metric row carries its source label. No unlabeled claims survive to the report.

Verification

Pick 5 reported backlinks at random and fetch each source page directly. Expect the link to the target present in the HTML (or an explicit "unverifiable: JS-rendered" label in your report). If any spot-check contradicts the report, treat the whole dataset as suspect: identify which source produced the bad rows and downgrade or drop it before delivering.

Completion checklist

  • [ ] Available sources detected by live test, not assumption
  • [ ] All seven sections produced, each with source and confidence labels
  • [ ] Health score gated: numeric only with 4+ factors, else INSUFFICIENT DATA
  • [ ] Toxic findings cross-checked against references/toxic-patterns.md
  • [ ] Pre-delivery fact check run and passed
  • [ ] Spot-check verification of sampled links done
  • [ ] Action lists prioritized: critical / high / medium / opportunities

Any box unchecked: not done. Fix or say so.

Footguns

  • Mixing sources without confidence weighting. Moz counts and Common Crawl counts measure different things; averaging them raw produces a meaningless number. Fix: weight by the confidence table and label every merged metric with its lowest-confidence input.
  • Disavowing from spam score alone. Aggressive disavow files hurt more sites than toxic links do. Fix: require at least two independent toxic signals plus a manual look before any disavow recommendation, per references/toxic-patterns.md.
  • Reporting JS-rendered pages as lost links. Social platforms and SPAs return link-free HTML to crawlers. Fix: classify these as unverifiable, never as removed.

Reference files

More in SEO & AEO

All skills