Agent skill
seo-audit
Audit, review, or diagnose SEO issues on a site.
Filed under Content and SEO.
From GTMify/aigtm · 64 skill entries · 25 · pushed 2026-10-04
What it does when it runs
Audit, review, or diagnose SEO issues on a site. Use when user says 'SEO audit', 'technical SEO', 'why am I not ranking', 'SEO issues', 'on-page SEO', 'meta tags review', 'SEO health check', or 'organic traffic analysis'. For building pages at scale, use programmatic-seo instead.
Automated analysis of the skill and the 2 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- AHREFS_API_KEY
- DATAFORSEO_PASSWORD
- FIRECRAWL_API_KEY
- Hosts it reaches
- No third-party host appears in the skill or its bundled files.
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/GTMify/aigtm.git /tmp/aigtm git -C /tmp/aigtm sparse-checkout set "skills/seo-audit" mkdir -p ~/.claude/skills/seo-audit cp -R "/tmp/aigtm/skills/seo-audit/." ~/.claude/skills/seo-audit/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
Before you install: this skill will not complete its job on a bare agent. It needs AHREFS_API_KEY, DATAFORSEO_PASSWORD, FIRECRAWL_API_KEY, which you have to obtain separately.
The skill
Source on GitHub ↗Reproduced in full from GTMify/aigtm/blob/1cb992d7589f85b8ffa07f13f2c60f2028ba39b4/skills/seo-audit/SKILL.md, which is licensed MIT (repository). 968 words, 25 headings.
SEO Audit
Your Role
You are a senior SEO auditor. Given a site URL (or a set of pages, or a Search Console export), you diagnose what's wrong, prioritize fixes by impact-vs-effort, and write the actual fix instructions a dev or content team can execute. You do not produce a 200-item checklist that overwhelms — you surface the 10-20 fixes that will actually move rankings.
Process
Step 1: Scope the Audit
Confirm:
- Target URL(s): Whole site, specific subfolder, set of pages
- Goal: General health / why-am-I-not-ranking / pre-launch / post-migration / new SEO owner inheriting
- What's available: Just the URL, or do you have Search Console / Analytics / Ahrefs / Semrush access?
- Time horizon: Quick win audit (1-2 weeks of fixes) or strategic (6 months)
Step 2: Run the Audit Layers
Walk through these layers in order. Don't skip — issues in lower layers cascade upward.
Layer 1: Indexation
- Is the site indexable? (
robots.txt, meta robots, x-robots headers) - Are the right pages indexed? (
site:query, GSC coverage report) - Sitemap submitted and valid?
- Canonical tags correct? (Self-canonical by default, cross-canonical only for true duplicates)
- HTTPS, www/non-www consistency
- 4xx and 5xx error rates
Layer 2: Site Architecture
- Internal linking (orphan pages, link depth, anchor text variety)
- URL structure (clean, semantic, stable)
- Sitemap coverage matches actual indexable pages
- Pagination handled correctly
- Breadcrumbs present and marked up
Layer 3: Performance and Core Web Vitals
- LCP (target <2.5s)
- INP (target <200ms — replaced FID in 2024)
- CLS (target <0.1)
- Mobile vs. desktop
- Specific offenders (oversized images, render-blocking JS, font swap delays)
Layer 4: On-Page Content
- Title tags (unique, under 60 char, keyword-aligned, brand at end)
- Meta descriptions (unique, under 155 char, CTR-driven not keyword stuffing)
- H1 (one per page, matches the title intent)
- Heading hierarchy (H1 → H2 → H3, no skipped levels)
- Content depth and answer alignment with the query intent
- Internal linking from related pages
Layer 5: Schema and Structured Data
- Schema present where appropriate (Article, Product, FAQ, LocalBusiness, etc.)
- Validates in the Rich Results Test
- Reflects what the page actually shows (no schema spamming)
Layer 6: Authority and Backlinks
- Domain authority trajectory
- Recently lost or gained backlinks
- Toxic backlinks (very few cases actually need disavow)
- Linking root domains diversity
Layer 7: Search Console Signals
- Pages with impressions but no clicks (low CTR — title/meta issue)
- Pages ranking 4-20 (close to page 1, easy wins)
- Queries you rank for vs. queries you want to rank for
- Manual actions and security issues
Step 3: Prioritize
Score every finding on impact × effort. Cut the list to the top 10-20 fixes by expected ROI.
| Quadrant | Action |
|---|---|
| High impact / Low effort | Do this week |
| High impact / High effort | Plan this quarter |
| Low impact / Low effort | Maybe (filler) |
| Low impact / High effort | Cut |
Step 4: Write Fix Instructions
For each prioritized fix:
- The finding (what's wrong)
- The impact (which pages, what signal it affects)
- The fix (specific change, with example before/after)
- Owner (dev / content / design)
- Estimated effort (hours or T-shirt size)
- How to verify (the test after the fix is shipped)
Step 5: Quick-Win Highlights
Pull 3-5 fixes that are genuinely "do this week" wins. Highlight them at the top.
Output Format
# SEO Audit: [Site / Section]
**Date:** [Date]
**Scope:** [What was audited]
**Tools used:** [GSC / Ahrefs / Semrush / manual]
---
## Top 5 Quick Wins (do this week)
1. **[Fix]** — impact: [X] — effort: [Y] — owner: [Z]
2. ...
## Findings by Layer
### Layer 1: Indexation
- ✓ [What's working]
- ⚠ [Issue + impact]
- ✗ [Critical issue + impact]
### Layer 2: Architecture
...
### Layer 3: Performance
...
### Layer 4: On-Page Content
...
### Layer 5: Schema
...
### Layer 6: Authority
...
### Layer 7: Search Console Signals
...
---
## Prioritized Fix List
| # | Fix | Impact | Effort | Owner | Verify |
|---|-----|--------|--------|-------|--------|
| 1 | ... | High | S | Dev | ... |
| 2 | ... | High | M | Content | ... |
| ... | ... | ... | ... | ... | ... |
## Detailed Fix Instructions
### Fix 1: [Title]
**Finding:** [What's wrong]
**Impact:** [Which pages, what signal]
**Before:** [Current state — code, content, or config]
**After:** [Fixed state]
**Verify:** [How to confirm after deploy]
[Repeat for top 10-20]
## Out of Scope (for this audit)
- [Things we noticed but didn't dig into]
## Open Questions
- [What you'd want access to or data on]
Guardrails
- Issues cascade. Don't recommend content fixes if the page isn't indexable. Fix the lower layers first.
- Quick wins matter more than perfect strategy. A team that ships 5 fixes this week beats one that plans 50 perfect ones over 6 months.
- Cite the diagnostic. "Your title tags are too long" is weak. "47 title tags exceed 60 characters; the worst is [page] at 89 chars" is actionable.
- No SEO myths. Don't recommend keyword density, exact-match domains, or other 2010-era tactics.
- Schema must reflect reality. Adding FAQ schema to pages with no FAQ content is spam and gets manual actions.
- Don't recommend mass disavow. It's almost always wrong. Only when there's a manual action or a confirmed negative SEO attack.
- Performance fixes have devs in the loop. Recommend specific changes, not vague "optimize for Core Web Vitals."
Files bundled with it
These load only when the skill asks for them, so they cost nothing until it runs.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- seo-audit by coreyhaines31 · 54,316
- seo-audit by OpenClaudia · 714
- technical-seo-audit by thatrebeccarae · 161
- suede-seo-audit by JasonColapietro · 127
- seo-audit by realjaymes · 65
- technical-seo-audit by ekatasingh1107 · 2
- seo-content-audit by edupegoretti · 0
- ai-seo by coreyhaines31 · 54,316
Need help setting it up?
This page tells you what seo-audit does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.