Agent skill

Content Decay Scan

by indranilbanerjee in indranilbanerjee/digital-marketing-pro

Scan content for decay by script and rank refreshes by recoverable traffic.

MITAuto-check passedMarketing & SEO

Install Content Decay Scan

skills CLI
$ npx skills add indranilbanerjee/digital-marketing-pro --skill content-decay-scan -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install indranilbanerjee/digital-marketing-pro content-decay-scan --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/indranilbanerjee/digital-marketing-pro.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/content-decay-scan .claude/skills/content-decay-scan && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
content-decay-scan
GitHub stars
862
Used in
1 other repo
Token cost
~2.9k tokens
SKILL.md length
1,492 words
Files
1
Skills in repo
162
Repo updated
First seen
Licence
MIT

At a glance

Scan content for decay by script and rank refreshes by recoverable traffic.

  • Works in 7 steps: Load brand context: Read… → Gather content performance data: Connect… → Score each content piece for decay: Run… → …
  • Marketing & SEO work in your project
  • SKILL.md covers Purpose, Input Required, Process and Output, plus 2 more sections
  • Calls python

What it does

Content Decay Scan is an agent skill from indranilbanerjee/digital-marketing-pro. Scan content for decay by script and rank refreshes by recoverable traffic. "which content is losing traffic"

Its SKILL.md is about 2.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Marketing & SEO. The repository describes itself as: An open-source AI marketing operating system for strategy, SEO, AEO/GEO, paid media, content, CRM, and analytics - grounded in brand context, human approval, and verifiable… The licence is MIT.

When your agent uses it

  • Marketing & SEO work in your project

Example prompts

  • “which content is losing traffic”
  • “/content-decay-scan”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Load brand context: Read ~/.claude-marketing/brands/_active-brand.json for the active slug, then load…
  2. Gather content performance data: Connect to analytics MCPs (Google Analytics, Google Search Console) and pull performance data for the…
  3. Score each content piece for decay: Run the decay scorer with the performance data
  4. Calculate business impact score: For each content piece, compute the revenue impact of its decay — current monthly traffic multiplied by…
  5. Prioritize refreshes by impact: Rank all decaying content by recoverable revenue impact — highest-impact decaying content first. Group…
  6. Generate refresh briefs for top priority items: For the Critical and High priority content, produce specific refresh briefs — what needs…
  7. Estimate traffic recovery potential: For each prioritized content piece, project the traffic recovery if refreshed — based on the…

What it can do on your machine

Read from SKILL.md and the folder at commit 9e949f3. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Content Decay Scan loads about 2.9k tokens when it runs. Until then it costs about 32 tokens; SKILL.md has 1,492 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~32
When it runs · the whole SKILL.md, loaded when a task matches
~2.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from indranilbanerjee/digital-marketing-pro at commit 9e949f3, republished under its MIT licence (© indranilbanerjee). 1,492 words, ~2,918 tokens.

Download SKILL.mdSave it as .claude/skills/content-decay-scan/SKILL.md (or your agent's skills folder).
name
content-decay-scan
description
Scan content for decay by script and rank refreshes by recoverable traffic. "which content is losing traffic"
user-invocable
true

/digital-marketing-pro:content-decay-scan

Script location. If your host does not set ${CLAUDE_PLUGIN_ROOT}, the scripts are in this plugin's scripts/ folder, next to skills/.

Purpose

Scan the entire content library for decay signals and prioritize refreshes by business impact. Content decay is invisible revenue loss — pages that once ranked well and drove conversions silently lose traffic as competitors publish fresher content, search algorithms evolve, statistics become outdated, and AI systems stop citing stale sources. This command detects declining organic traffic, falling keyword positions, outdated content (stale dates, broken links, deprecated information), lost AI citations, and conversion rate drops. It then ranks every piece of content by business impact — traffic multiplied by conversion rate multiplied by revenue per conversion — so you refresh the content that recovers the most revenue first, not just the content that lost the most traffic.

Input Required

The user must provide (or will be prompted for):

  • Content library data: URLs of the content to scan — can be a full sitemap, a specific content directory (e.g., /blog/, /resources/), or a curated list of high-value pages. For each URL, the system will pull or needs: current monthly traffic, traffic 3 and 6 months ago for trend analysis, primary keyword rankings (current and historical positions), publish date and last updated date, conversion rate if tracked (form fills, signups, purchases), and revenue attribution if available
  • Analytics source: Where to pull performance data — Google Analytics and Google Search Console via connected MCPs, or exported CSV data. If MCPs are connected, data is pulled automatically. If not, the user provides exported analytics covering at least the past 6 months
  • Priority metrics: Which decay signals matter most for this scan — traffic decline (default highest weight), ranking drops, content freshness (time since last update), AI citation loss, broken links, or conversion rate decline. The user can adjust weights or accept defaults. Revenue impact is always calculated regardless of signal weights
  • Decay thresholds (optional): Brand-specific thresholds for what constitutes "decay" — e.g., "flag anything with 20%+ traffic decline over 3 months" or "flag content not updated in 12+ months." If not provided, standard thresholds are applied: 15% traffic decline over 3 months, 10+ position drop on primary keyword, 18+ months since last update, or 20%+ conversion rate decline
  • Exclusions (optional): Content to exclude from the scan — seasonal pages, archived content, redirect targets, or pages scheduled for removal. Prevents false positives and focuses the scan on content the brand intends to maintain

Process

  1. Load brand context: Read ~/.claude-marketing/brands/_active-brand.json for the active slug, then load ~/.claude-marketing/brands/{slug}/profile.json. Apply content strategy priorities, target keyword clusters, historical content performance baselines, and industry context for freshness expectations (fast-moving industries like tech need more frequent updates than evergreen niches). Also check for guidelines at ~/.claude-marketing/brands/{slug}/guidelines/_manifest.json. Check for agency SOPs at ~/.claude-marketing/sops/. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with industry defaults.
  2. Gather content performance data: Connect to analytics MCPs (Google Analytics, Google Search Console) and pull performance data for the content library — monthly traffic for the past 6 months per URL, keyword position data for primary and secondary keywords, click-through rates from search results, and conversion data if available. For content not covered by MCPs, use any exported data the user provided. Build a performance timeline for each content piece showing the trajectory over the past 6 months.
  3. Score each content piece for decay: Run the decay scorer with the performance data:
    bash
    python "${CLAUDE_PLUGIN_ROOT}/scripts/creative-fatigue-predictor.py" \
        --action decay-scan \
        --data '[{"content_id":"blog_01","url":"/blog/post-a","monthly_traffic_current":1200,"monthly_traffic_previous":1600,"monthly_traffic_6mo_ago":2100,"keyword_positions_current":{"seo tips":12},"keyword_positions_previous":{"seo tips":7},"last_updated":"2024-11-01"}, ...]'
    (creative-fatigue-predictor.py actions: score-health, predict-fatigue, generate-refresh-brief, decay-scan, priority-refresh, batch-health. --data is a JSON object or array; there is no --brand flag on this script.) The decay scoring model evaluates multiple signals per content piece — traffic trend (3-month and 6-month decline rates, weighted by the user's priority metrics), keyword position changes (drops on primary keyword, movement direction and velocity), content freshness (months since last substantive update, presence of dated statistics or references), broken links (internal and external link health), and conversion rate trend (declining conversion even with stable traffic indicates content quality decay). Each piece receives a decay score from 0-100 where 0 is healthy and 100 is severely decayed.
  4. Calculate business impact score: For each content piece, compute the revenue impact of its decay — current monthly traffic multiplied by conversion rate multiplied by estimated revenue per conversion. Then calculate the recoverable revenue — the difference between peak performance (from the last 12 months) and current performance, multiplied by the probability of recovery based on decay type and refresh feasibility. Content with high recoverable revenue is prioritized regardless of its raw decay score.
  5. Prioritize refreshes by impact: Rank all decaying content by recoverable revenue impact — highest-impact decaying content first. Group into priority tiers: Critical (top 10% by revenue impact, refresh immediately), High (next 20%, refresh within 2 weeks), Medium (next 30%, schedule for refresh within 1-2 months), and Monitor (remaining, track but don't invest refresh effort yet). For each tier, estimate the total traffic and revenue recoverable if all pieces in that tier are refreshed.
  6. Generate refresh briefs for top priority items: For the Critical and High priority content, produce specific refresh briefs — what needs updating (outdated statistics, stale examples, missing recent developments, broken links, thin sections), SEO improvements (keyword gaps versus current top-ranking competitors, missing subtopics, schema markup opportunities, internal linking gaps), and content enhancements (new sections to add, visuals to create, format improvements). Each brief is actionable enough to hand directly to a content writer.
  7. Estimate traffic recovery potential: For each prioritized content piece, project the traffic recovery if refreshed — based on the content's historical peak performance, current competitive landscape for its target keywords, and typical recovery curves for refreshed content (a substantive refresh often recovers a majority of lost traffic within 2-4 months — the "60-80%" figure is an illustrative rule of thumb, not a measured benchmark; validate against your own refresh outcomes). Aggregate into total portfolio recovery potential.
Show full SKILL.md (526 more words)Show less

Output

A content decay assessment containing:

  • Content decay radar: All scanned content scored and visualized — showing URL, title, decay score (0-100), primary decay signals (traffic decline, ranking drop, freshness, broken links, conversion drop), trend direction (improving, stable, or declining), and days since last update
  • Priority refresh list: Content ranked by business impact — showing URL, decay score, recoverable monthly traffic, recoverable monthly revenue, priority tier (Critical/High/Medium/Monitor), and recommended refresh urgency with timeline
  • Decay signals per content piece: For each decaying piece, the specific signals driving the decay assessment — which metrics are declining, by how much, over what period, and how they compare to the content's historical peak and to competing content on the same keywords
  • Refresh briefs for top items: Detailed, actionable refresh recommendations for Critical and High priority content — what to update (statistics, examples, links), what to add (new sections, subtopics, visuals), what to optimize (keywords, meta tags, internal links, schema), and estimated effort level (light refresh, moderate rewrite, or major overhaul)
  • Traffic recovery estimates: Per content piece and in aggregate — projected monthly traffic recoverable through refresh, projected monthly revenue recoverable, expected time to recovery (typically 2-4 months), and confidence level based on competitive landscape and refresh scope
  • Content health summary: Portfolio-level view showing percentage of content that is healthy (no decay signals), decaying (active decline), and critical (severe decay requiring immediate attention) — with month-over-month trend if historical scan data is available, plus total revenue at risk from the decaying and critical segments

Tips & caveats

  • Decay isn't always content quality — seasonal swings, Core Updates, and SERP-feature changes all look like decay in raw GSC data. Always cross-reference with /digital-marketing-pro:seo-drift to separate causes.
  • Don't refresh everything that's decaying. Some content is supposed to decay (one-time event coverage, dated news). Refresh only what has lasting search intent.
  • Refresh > delete in most cases. A decayed page with backlinks is more valuable than a 404 + redirect. Refresh, restructure, and re-link rather than removing.
  • Refresh recovery takes 2-4 months typically. Don't measure success at 30 days. Record the next measurement window alongside each item in the priority refresh list.
  • AI Mode citations decay differently. A piece that's lost AI Mode citations (per /digital-marketing-pro:gsc-ai-performance) needs entity consistency refresh (re-align schema, author bios) — different fix than traditional decay.
  • Don't refresh during a Core Update window. Wait until rollout-complete + 7-14 days settling so you can attribute the lift to the refresh, not to the algorithm reshuffle.

Agents Used

  • content-creator — Content refresh strategy including update prioritization, new section recommendations, example and statistic replacement sourcing, format improvement suggestions, and actionable refresh briefs that can be handed directly to writers with clear scope and direction for each content piece
  • seo-specialist — SEO decay analysis including keyword position tracking and drop diagnosis, competitive gap analysis against current top-ranking content, technical SEO issue detection (broken links, missing schema, crawl issues), internal linking gap identification, and search intent alignment assessment to ensure refreshed content matches evolved searcher expectations
  • performance-monitor-agent — Traffic trend analysis with multi-period decay detection (3-month and 6-month windows), conversion rate decline identification, anomaly detection to separate true decay from seasonal fluctuations or algorithm updates, recovery potential estimation based on historical refresh outcomes, and portfolio-level health scoring with trend monitoring

© indranilbanerjee, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/content-decay-scan of indranilbanerjee/digital-marketing-pro.

Open the folder on GitHubat commit 9e949f3

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in indranilbanerjee/digital-marketing-pro, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Content Decay Scan next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Content Decay Scan compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Content Decay Scan this skillindranilbanerjee/digital-marketing-pro8621 repos~2.9kAutomated safety check: PassMIT
Geo Fundamentalswasp-lang/wasp19k9 repos~861Automated safety check: PassMIT
Ab Testingcoreyhaines31/marketingskills54k3 repos~3.1kAutomated safety check: PassMIT
Hreflang and International SEOAgriciDaniel/claude-seo19k5 repos~3.4kAutomated safety check: PassMIT
Referralscoreyhaines31/marketingskills54k2 repos~2.6kAutomated safety check: PassMIT
SEO GeoReScienceLab/opc-skills1.8k4 repos~2.1kAutomated safety check: PassApache-2.0

Similar skills

  • Geo Fundamentals

    wasp-lang/wasp

    Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).

    19k GitHub starsUsed in 9 repos~861 tokens
    Marketing & SEOAuto-check passed
  • Ab Testing

    coreyhaines31/marketingskills

    When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program.

    54k GitHub starsUsed in 3 repos~3.1k tokens
    Marketing & SEOAuto-check passed
  • Hreflang and International SEO

    AgriciDaniel/claude-seo

    Audits, validates and generates hreflang tags for multi-language and multi-region sites in HTML, HTTP headers or XML sitemaps, flagging common code and return-tag mistakes.

    19k GitHub starsUsed in 5 repos~3.4k tokens
    Marketing & SEOAuto-check passed
  • Referrals

    coreyhaines31/marketingskills

    When the user wants to create, optimize, or analyze a referral program, affiliate program, or word-of-mouth strategy.

    54k GitHub starsUsed in 2 repos~2.6k tokens
    Marketing & SEOAuto-check passed
  • SEO Geo

    ReScienceLab/opc-skills

    SEO & GEO (Generative Engine Optimization) for websites. An agent skill from ReScienceLab/opc-skills.

    1.8k GitHub starsUsed in 4 repos~2.1k tokens
    Marketing & SEOAuto-check passed
  • Ad Creative

    LeoYeAI/openclaw-marketing-skills

    When the user wants to generate, iterate, or scale ad creative — headlines, descriptions, primary text, or full ad variations — for any paid advertising platform.

    1k GitHub starsUsed in 8 repos~3.4k tokens
    Marketing & SEOAuto-check passed

More from indranilbanerjee/digital-marketing-pro

All 162 skills in this repo
  • Import Template

    indranilbanerjee/digital-marketing-pro

    Import a deliverable template as a reusable placeholder template per brand.

    862 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed
  • Ab Test Plan

    indranilbanerjee/digital-marketing-pro

    Plan an A/B test by script: sample size per variant, days to run, stopping rules.

    862 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Aeo Audit

    indranilbanerjee/digital-marketing-pro

    Run a one-time AEO audit of six AI answer engines, scored per surface.

    862 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Agent Readiness Audit

    indranilbanerjee/digital-marketing-pro

    Audit agent readiness by script: AI-crawler rules, product schema, no-JS HTML, feeds.

    862 GitHub starsUsed in 1 repo~3.7k tokens
    Auto-check passed
  • Backlink Gap

    indranilbanerjee/digital-marketing-pro

    Find backlink gap domains linking to competitors, not you, scored by script.

    862 GitHub starsUsed in 1 repo~2.6k tokens
    Auto-check passed
  • C2pa Metadata

    indranilbanerjee/digital-marketing-pro

    Embed C2PA provenance in AI-generated images, video or PDF by script.

    862 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed

Categories

Questions about Content Decay Scan

What does Content Decay Scan do?

Scan content for decay by script and rank refreshes by recoverable traffic. Content Decay Scan is an agent skill from indranilbanerjee/digital-marketing-pro. Scan content for decay by script and rank refreshes by recoverable traffic.

When should I use Content Decay Scan?

Content Decay Scan fits situations like: marketing & SEO work in your project.

How do I install Content Decay Scan in Claude Code?

Run `npx skills add indranilbanerjee/digital-marketing-pro --skill content-decay-scan -a claude-code`. Or copy the skill folder (skills/content-decay-scan in indranilbanerjee/digital-marketing-pro) into .claude/skills/content-decay-scan in your project. Claude Code loads it when a task matches its description.

How do I install Content Decay Scan in Codex?

Run `npx skills add indranilbanerjee/digital-marketing-pro --skill content-decay-scan -a codex`. Or copy the skill folder (skills/content-decay-scan in indranilbanerjee/digital-marketing-pro) into .agents/skills/content-decay-scan in your project. Codex loads it when a task matches its description.

Can I use Content Decay Scan in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add indranilbanerjee/digital-marketing-pro --skill content-decay-scan -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/content-decay-scan, .gemini/skills/content-decay-scan, .github/skills/content-decay-scan and .opencode/skills/content-decay-scan in your project.

What does Content Decay Scan need to run?

Going by SKILL.md and its folder, Content Decay Scan needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Content Decay Scan access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Content Decay Scan safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Content Decay Scan use?

Content Decay Scan is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Content Decay Scan use?

About 2.9k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Content Decay Scan?

Skills that share tags, products or a category with Content Decay Scan: Geo Fundamentals (wasp-lang/wasp, 19k stars), Ab Testing (coreyhaines31/marketingskills, 54k stars), Hreflang and International SEO (AgriciDaniel/claude-seo, 19k stars) and Referrals (coreyhaines31/marketingskills, 54k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Content Decay Scan?

indranilbanerjee (a GitHub user) maintains it in indranilbanerjee/digital-marketing-pro, which has 862 GitHub stars. The repository holds 162 skills in this directory. The repository was last updated on October 9, 2026.

Source: indranilbanerjee/digital-marketing-pro on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.