From automation-skills
Monitors existing content for ranking drops and generates a prioritized refresh queue. Run monthly or after an SEO audit to recover lost positions.
How this skill is triggered — by the user, by Claude, or both
Slash command
/automation-skills:content-decay-detectorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Monitor existing content for ranking drops and generate a prioritized refresh queue. Refreshing decaying content is the highest-ROI SEO activity — it's faster and cheaper than creating new content, and recovering a lost position is easier than earning a new one.
Monitor existing content for ranking drops and generate a prioritized refresh queue. Refreshing decaying content is the highest-ROI SEO activity — it's faster and cheaper than creating new content, and recovering a lost position is easier than earning a new one.
S3: Blog & SEO — Blog maintenance and optimization. This skill keeps your existing content competitive and prevents rankings from silently eroding.
seo-audit reveals declining pagessite_url: string # REQUIRED — the site to audit
# e.g., "myblog.com", "example.com/blog"
content_list: object[] # OPTIONAL — specific pages to check
- url: string # Page URL
title: string # Page title
publish_date: string # Original publish date
last_updated: string # Last update date
target_keyword: string # Primary keyword
check_competitors: boolean # OPTIONAL — whether to check if competitors published fresher content
# Default: true
timeframe: string # OPTIONAL — "30d" | "90d" | "6m" | "1y"
# Default: "90d"
Chaining from S6 seo-audit: Use declining_pages as the content_list.
If content_list not provided:
web_search: site:[site_url] — discover indexed pagesRead shared/references/seo-strategy.md for decay signals and refresh methodology.
For each page:
web_search for the page's target keyword — check current ranking positionFor each decaying page, assign priority:
| Factor | Score | Criteria |
|---|---|---|
| Revenue impact | 1-5 | Contains affiliate links + had traffic = high revenue impact |
| Decay severity | 1-5 | Major outdated info = 5, minor = 1 |
| Fix effort | 1-5 (inverted) | Easy fix = 5, full rewrite = 1 |
| Competitor threat | 1-5 | Competitor published better version = 5 |
Priority = Revenue × Decay × Fix_Ease × Competitor_Threat (normalized)
For each page in priority order, specify:
output_schema_version: "1.0.0"
content_decay:
site: string
pages_analyzed: number
pages_decaying: number
total_refresh_effort: string # Estimated total hours
decaying_pages:
- url: string
title: string
priority: string # "P0-critical" | "P1-high" | "P2-medium" | "P3-low"
decay_signals: string[]
refresh_actions: string[]
estimated_effort: string
revenue_impact: string # "high" | "medium" | "low"
healthy_pages: string[] # Pages that don't need refresh
chain_metadata:
skill_slug: "content-decay-detector"
stage: "blog"
timestamp: string
suggested_next:
- "affiliate-blog-builder"
- "seo-audit"
- "internal-linking-optimizer"
- "keyword-cluster-architect"
## Content Decay Report: [Site]
### Summary
- **Pages analyzed:** XX
- **Pages decaying:** XX
- **Total refresh effort:** XX hours
- **Estimated traffic recovery:** XX%
### Priority Refresh Queue
#### P0 — Critical (do this week)
**[Page Title]** — [URL]
- Decay: [what's wrong]
- Action: [what to do]
- Effort: [time estimate]
- Impact: [expected result]
#### P1 — High (do this month)
[same structure]
#### P2 — Medium (schedule)
[same structure]
### Healthy Pages (no action needed)
- [Page] — still ranking, content fresh
- [Page] — recently updated
### Monthly Maintenance Schedule
- Week 1: Refresh P0 pages
- Week 2: Refresh P1 pages
- Week 3: Create new content for gaps found
- Week 4: Internal linking review
Example 1: "Check my blog for content decay" → Discover indexed pages, check each for decay signals, generate prioritized refresh queue with specific actions per page.
Example 2: "Which of my articles need updating?" → Analyze content list, identify outdated pricing, stale comparisons, missing new products. Rank by revenue impact.
Example 3: "Content decay check" (after seo-audit) → Pick up declining pages from seo-audit output. Deep-dive each with competitor analysis and specific refresh instructions.
affiliate-blog-builder (S3) — refresh instructions for specific articlesinternal-linking-optimizer (S6) — decaying pages may need better internal linkskeyword-cluster-architect (S3) — content gaps revealed by decay analysisseo-audit (S6) — declining pages to investigateinternal-linking-optimizer (S6) — pages with weak link structure may be decayingperformance-report (S6) — traffic decline dataseo-audit (S6) tracks whether rankings recovered → measure refresh ROI, refine decay detection sensitivityBefore delivering output, verify:
Any NO → rewrite before delivering.
shared/references/seo-strategy.md — Decay signals, refresh methodology, priority matrixshared/references/flywheel-connections.md — Master connection mapnpx claudepluginhub affitor/affiliate-skills --plugin research-skillsScans a content library for decay signals: declining traffic, falling rankings, outdated stats, dropped AI citations. Prioritizes refresh opportunities by business impact for content audits.
Scores outdated content by decay and priority, produces an update plan with GEO and republishing guidance. Use for traffic/ranking recovery, not net-new content.
Identifies outdated dates, statistics, examples, trends, and links in content; suggests prioritized refresh plans, update checklists, and SEO freshness signal tactics for older pages.