Content Audit

Audit existing content across a site to decide what to keep, update, merge, redirect, or delete.

Content Audit — Creative Direction skill highlight diagram. Navy header card reads 'Impactful Creative Direction' with the subtitle… (from the rampstackco/claude-skills README)

From the rampstackco/claude-skills README — shows the whole collection, not only this skill. · view on GitHub

How to use it

Claude Code
  1. Run the line below. It pulls the whole folder into ~/.claude/skills/seo-content-audit-2.
  2. Describe your job in plain words. Claude Code follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit rampstackco/claude-skills/skills/seo-content-audit#main ~/.claude/skills/seo-content-audit-2

For one project only, change the path to .claude/skills/seo-content-audit-2.

Claude (web or desktop app)
  1. On this page open ⋯ → Download .md.
  2. Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
  3. Pick the file and Save. Claude shows the name and description and runs a security scan.
  4. Check the skill is switched on.
  5. Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
  1. ChatGPT: make a Project and paste it into Instructions.
  2. Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Source of Content Audit

Show the full text200 lines
namedescriptioncategorycatalog_summarydisplay_order
seo-content-auditAudit existing content across a site to decide what to keep, update, merge, redirect, or delete. Use this skill whenever the user wants to audit existing content, fix content decay, resolve keyword cannibalization, prune underperforming pages, prioritize content updates, or apply a keep/update/merge/redirect/delete framework to a content library. Triggers on content audit, content decay, content refresh, cannibalization, keyword cannibalization, prune content, delete pages, redirect old pages, content inventory, what to keep, what to update, content scorecard, evergreen refresh. Also triggers when traffic is dropping site-wide and the cause might be content quality, even if 'audit' is not said explicitly.seo-foundationKeep/update/merge/redirect/delete decisions across a site6

Content Audit

Inventory existing content, score it, and decide for each piece: keep, update, merge, redirect, or delete. Stack-agnostic. Works on blogs, marketing sites, knowledge bases, and product content.


When to use

  • Inheriting a content library you did not create
  • Diagnosing site-wide traffic decline
  • Resolving cannibalization (two pages competing for the same query)
  • Pre-migration cleanup
  • Annual or semi-annual content health check
  • Pruning before a redesign or replatform

When NOT to use

  • Optimizing a single page (use seo-onpage)
  • Planning new content (use seo-keyword)
  • Comparing your content to competitors (use seo-competitor)
  • Site-level technical issues (use seo-technical)

Required inputs

  • The site URL and access to crawl it (or a complete URL list)
  • Search console access (or a 12-month export)
  • Analytics access (sessions, conversions, engagement)
  • A backlink tool (to identify pages with referring domains worth preserving)

The framework: 5 actions

For every content piece, the audit produces one of five decisions.

1. Keep

The page performs well, has clear intent, and needs no changes.

Signals:

  • Top 10 ranking for its primary query
  • Consistent traffic with no decay
  • Healthy engagement (above-site-average time on page or interaction rate)
  • Up-to-date information
2. Update

The page has potential but is underperforming due to fixable issues.

Signals:

  • Page 2 ranking for high-value queries (rank 11 to 30)
  • Traffic decay over the last 6 to 12 months
  • Information gone stale
  • Title or meta need rewriting for CTR
  • Thin content that could expand to match competitor depth
  • Missing schema or other technical hygiene
3. Merge

Two or more pages target overlapping queries and should consolidate.

Signals:

  • Cannibalization (multiple pages ranking for the same query, none ranking well)
  • Significant content overlap between pages
  • Combined, they would outperform either alone
  • Both have backlinks worth preserving
4. Redirect

The page has no future but has assets (links, equity) worth preserving.

Signals:

  • No traffic, no rankings
  • Holds backlinks (especially editorial ones)
  • A relevant target page exists that would benefit from the equity
  • Topic is still relevant but this specific page is not
5. Delete (and let return 404 or 410)

The page has no future and no assets worth preserving.

Signals:

  • No traffic, no rankings, no backlinks
  • Content is outdated and not worth updating
  • Topic is no longer relevant
  • Even thin or spam content from a previous era

Note: In most cases, return 410 (gone) for intentionally deleted content. 410 is processed faster than 404 and signals the deletion was deliberate.


Scoring inputs

Pull these for every URL before deciding:

Metric Source Threshold for "low"
Sessions (last 90 days) Analytics <10/month
Organic traffic (last 90 days) Search console or analytics <5/month
Average position for top query Search console >30
Impressions (last 90 days) Search console <100/month
Click-through rate Search console <1% (when impressions exist)
Referring domains Backlink tool 0
Engagement (avg time on page) Analytics <30 seconds
Last meaningful update Manual / git >24 months
Word count Crawler <300 (for articles)
Internal links in Crawler 0

A page can survive low scores on a few metrics. A page that fails on most is a delete or redirect candidate.


Decision matrix

A simplified decision tree:

Has traffic? ─── Yes ──── Recent decay? ─── Yes ── UPDATE
        │                          │
        │                          └── No ─── KEEP
        │
        └── No ──── Has backlinks? ─── Yes ── Has relevant target? ─── Yes ── REDIRECT
                          │                            │
                          │                            └── No ─── UPDATE (rebuild)
                          │
                          └── No ──── Cannibalizing another page? ─── Yes ── MERGE
                                              │
                                              └── No ─── DELETE (410)

For overlapping pages, "merge" usually wins over "delete" because it preserves both link equity and any topical authority.


Workflow

  1. Inventory. Pull a complete URL list from the crawl, sitemap, and search console (some indexed pages may not be in the sitemap).
  2. Pull the metrics. Sessions, organic, search console rank/CTR, backlinks, last-modified date, word count.
  3. Score each URL. Use the framework. Mark a decision: Keep / Update / Merge / Redirect / Delete.
  4. Identify cannibalization clusters. Group URLs targeting the same query. Decide which becomes the canonical, what to merge, what to redirect.
  5. Sequence the work. Do redirects and deletes in batches. Plan updates by priority (highest-traffic-recovery potential first).
  6. Implement. With change tracking. Re-crawl after each batch to confirm no broken redirect chains.
  7. Measure. Track aggregate organic traffic 30, 60, 90 days post-audit.

Failure patterns

  • Deleting pages with backlinks. Always check referring domains before deleting. A redirect preserves equity at near-zero cost.
  • Updating pages that should be merged. Two thin pages updated to medium pages still cannibalize. Merge first.
  • Merging without preserving the better URL. Pick the merge target by which URL has stronger signals (older URL, more backlinks, better URL slug, currently better ranking), not which one has more content.
  • Mass-deleting low-traffic pages. Some have value: fresh pages still ramping, niche pages serving a specific audience, evergreen pages with seasonal traffic. Do not bulk-delete by sessions alone.
  • Over-aggressive pruning of "old" content. Date alone is not a delete signal. Topic relevance and intent quality are.
  • No post-audit measurement. Without measurement, you cannot tell if the audit worked.

Output format

Default output: a spreadsheet with one row per URL, plus a summary markdown report.

Spreadsheet columns:

  • URL
  • Page type (article, product, category, etc.)
  • Sessions (90d), organic clicks (90d), impressions (90d), avg position
  • Referring domains
  • Word count
  • Last modified
  • Decision (keep / update / merge / redirect / delete)
  • Merge target / redirect target (if applicable)
  • Priority (1-5)
  • Notes

Summary report:

  1. Inventory totals (URLs by decision)
  2. Cannibalization clusters identified
  3. Top 20 update priorities
  4. Redirect map (CSV)
  5. Delete list
  6. Implementation roadmap (sequenced by priority)
  7. Measurement plan

If required data is unavailable

This skill's output depends on data, measurements, or tool results it cannot generate on its own. When a required input, tool, or data source is unavailable or unverifiable, the sanctioned output is the deliverable with the gap stated: what was needed, what was actually obtained or verified, and which parts of the output are affected. Fabricating, estimating, or interpolating a required number to complete the deliverable is never sanctioned. A stated gap is a complete answer.


Reference files

1---
2name: seo-content-audit
3description: "Audit existing content across a site to decide what to keep, update, merge, redirect, or delete. Use this skill whenever the user wants to audit existing content, fix content decay, resolve keyword cannibalization, prune underperforming pages, prioritize content updates, or apply a keep/update/merge/redirect/delete framework to a content library. Triggers on content audit, content decay, content refresh, cannibalization, keyword cannibalization, prune content, delete pages, redirect old pages, content inventory, what to keep, what to update, content scorecard, evergreen refresh. Also triggers when traffic is dropping site-wide and the cause might be content quality, even if 'audit' is not said explicitly."
4category: seo-foundation
5catalog_summary: "Keep/update/merge/redirect/delete decisions across a site"
6display_order: 6
7---
8 
9# Content Audit
10 
11Inventory existing content, score it, and decide for each piece: keep, update, merge, redirect, or delete. Stack-agnostic. Works on blogs, marketing sites, knowledge bases, and product content.
12 
13---
14 
15## When to use
16 
17- Inheriting a content library you did not create
18- Diagnosing site-wide traffic decline
19- Resolving cannibalization (two pages competing for the same query)
20- Pre-migration cleanup
21- Annual or semi-annual content health check
22- Pruning before a redesign or replatform
23 
24## When NOT to use
25 
26- Optimizing a single page (use `seo-onpage`)
27- Planning new content (use `seo-keyword`)
28- Comparing your content to competitors (use `seo-competitor`)
29- Site-level technical issues (use `seo-technical`)
30 
31---
32 
33## Required inputs
34 
35- The site URL and access to crawl it (or a complete URL list)
36- Search console access (or a 12-month export)
37- Analytics access (sessions, conversions, engagement)
38- A backlink tool (to identify pages with referring domains worth preserving)
39 
40---
41 
42## The framework: 5 actions
43 
44For every content piece, the audit produces one of five decisions.
45 
46### 1. Keep
47The page performs well, has clear intent, and needs no changes.
48 
49**Signals:**
50- Top 10 ranking for its primary query
51- Consistent traffic with no decay
52- Healthy engagement (above-site-average time on page or interaction rate)
53- Up-to-date information
54 
55### 2. Update
56The page has potential but is underperforming due to fixable issues.
57 
58**Signals:**
59- Page 2 ranking for high-value queries (rank 11 to 30)
60- Traffic decay over the last 6 to 12 months
61- Information gone stale
62- Title or meta need rewriting for CTR
63- Thin content that could expand to match competitor depth
64- Missing schema or other technical hygiene
65 
66### 3. Merge
67Two or more pages target overlapping queries and should consolidate.
68 
69**Signals:**
70- Cannibalization (multiple pages ranking for the same query, none ranking well)
71- Significant content overlap between pages
72- Combined, they would outperform either alone
73- Both have backlinks worth preserving
74 
75### 4. Redirect
76The page has no future but has assets (links, equity) worth preserving.
77 
78**Signals:**
79- No traffic, no rankings
80- Holds backlinks (especially editorial ones)
81- A relevant target page exists that would benefit from the equity
82- Topic is still relevant but this specific page is not
83 
84### 5. Delete (and let return 404 or 410)
85The page has no future and no assets worth preserving.
86 
87**Signals:**
88- No traffic, no rankings, no backlinks
89- Content is outdated and not worth updating
90- Topic is no longer relevant
91- Even thin or spam content from a previous era
92 
93Note: In most cases, return 410 (gone) for intentionally deleted content. 410 is processed faster than 404 and signals the deletion was deliberate.
94 
95---
96 
97## Scoring inputs
98 
99Pull these for every URL before deciding:
100 
101| Metric | Source | Threshold for "low" |
102|---|---|---|
103| Sessions (last 90 days) | Analytics | <10/month |
104| Organic traffic (last 90 days) | Search console or analytics | <5/month |
105| Average position for top query | Search console | >30 |
106| Impressions (last 90 days) | Search console | <100/month |
107| Click-through rate | Search console | <1% (when impressions exist) |
108| Referring domains | Backlink tool | 0 |
109| Engagement (avg time on page) | Analytics | <30 seconds |
110| Last meaningful update | Manual / git | >24 months |
111| Word count | Crawler | <300 (for articles) |
112| Internal links in | Crawler | 0 |
113 
114A page can survive low scores on a few metrics. A page that fails on most is a delete or redirect candidate.
115 
116---
117 
118## Decision matrix
119 
120A simplified decision tree:
121 
122```
123Has traffic? ─── Yes ──── Recent decay? ─── Yes ── UPDATE
124 │ │
125 │ └── No ─── KEEP
126 │
127 └── No ──── Has backlinks? ─── Yes ── Has relevant target? ─── Yes ── REDIRECT
128 │ │
129 │ └── No ─── UPDATE (rebuild)
130 │
131 └── No ──── Cannibalizing another page? ─── Yes ── MERGE
132 │
133 └── No ─── DELETE (410)
134```
135 
136For overlapping pages, "merge" usually wins over "delete" because it preserves both link equity and any topical authority.
137 
138---
139 
140## Workflow
141 
1421. **Inventory.** Pull a complete URL list from the crawl, sitemap, and search console (some indexed pages may not be in the sitemap).
1432. **Pull the metrics.** Sessions, organic, search console rank/CTR, backlinks, last-modified date, word count.
1443. **Score each URL.** Use the framework. Mark a decision: Keep / Update / Merge / Redirect / Delete.
1454. **Identify cannibalization clusters.** Group URLs targeting the same query. Decide which becomes the canonical, what to merge, what to redirect.
1465. **Sequence the work.** Do redirects and deletes in batches. Plan updates by priority (highest-traffic-recovery potential first).
1476. **Implement.** With change tracking. Re-crawl after each batch to confirm no broken redirect chains.
1487. **Measure.** Track aggregate organic traffic 30, 60, 90 days post-audit.
149 
150---
151 
152## Failure patterns
153 
154- **Deleting pages with backlinks.** Always check referring domains before deleting. A redirect preserves equity at near-zero cost.
155- **Updating pages that should be merged.** Two thin pages updated to medium pages still cannibalize. Merge first.
156- **Merging without preserving the better URL.** Pick the merge target by which URL has stronger signals (older URL, more backlinks, better URL slug, currently better ranking), not which one has more content.
157- **Mass-deleting low-traffic pages.** Some have value: fresh pages still ramping, niche pages serving a specific audience, evergreen pages with seasonal traffic. Do not bulk-delete by sessions alone.
158- **Over-aggressive pruning of "old" content.** Date alone is not a delete signal. Topic relevance and intent quality are.
159- **No post-audit measurement.** Without measurement, you cannot tell if the audit worked.
160 
161---
162 
163## Output format
164 
165Default output: a spreadsheet with one row per URL, plus a summary markdown report.
166 
167**Spreadsheet columns:**
168- URL
169- Page type (article, product, category, etc.)
170- Sessions (90d), organic clicks (90d), impressions (90d), avg position
171- Referring domains
172- Word count
173- Last modified
174- Decision (keep / update / merge / redirect / delete)
175- Merge target / redirect target (if applicable)
176- Priority (1-5)
177- Notes
178 
179**Summary report:**
1801. Inventory totals (URLs by decision)
1812. Cannibalization clusters identified
1823. Top 20 update priorities
1834. Redirect map (CSV)
1845. Delete list
1856. Implementation roadmap (sequenced by priority)
1867. Measurement plan
187 
188---
189 
190## If required data is unavailable
191 
192This skill's output depends on data, measurements, or tool results it cannot generate on its own. When a required input, tool, or data source is unavailable or unverifiable, the sanctioned output is the deliverable with the gap stated: what was needed, what was actually obtained or verified, and which parts of the output are affected. Fabricating, estimating, or interpolating a required number to complete the deliverable is never sanctioned. A stated gap is a complete answer.
193 
194---
195 
196## Reference files
197 
198- [`references/audit-template.md`](references/audit-template.md) - Spreadsheet column definitions and report template.
199- [`references/cannibalization-resolution.md`](references/cannibalization-resolution.md) - Detailed methodology for resolving cannibalization clusters.
200 

Discussion

Alternatives

Also in SEO & keywordsSee all 364 in Marketing →