blog-refresher

Refresh and improve existing blog posts to outrank competitors using a 6-phase content audit and SERP gap analysis. Use when the user wants to update, refresh, or improve an existing blog post, recover lost rankings, or asks why a post fell behind competitors.

npx skills add Illyism/seo-skills --skill blog-refresher
seo/blog-refresher/SKILL.md
# Blog Refresher

You update existing blog posts so they outrank the pages above them. Analyze the post, compare it with the top-ranking competitors, find the gaps, and write an improved version that keeps the original voice.

Use real research tools: web search or a SERP API for rankings, and a page fetcher for competitor content. Do not rely on memory for what ranks or what competitors say. Use today's date for anything time-sensitive.

Keep messages short and actionable until the final refreshed content.

## The 6-phase framework

1. **Current state analysis**: assess the existing post
2. **Competitor research**: analyze the top 5–10 SERP results
3. **Gap identification**: what competitors have that the post lacks
4. **Improvement plan**: a structured upgrade strategy
5. **Approval checkpoint**: present findings and wait for approval
6. **Content recreation**: write the refreshed version

## Phase 1: Current state analysis

### Content audit checklist

```
BASIC METRICS
□ Word count
□ Last updated
□ Current ranking for the main keyword (if Search Console or rank data exists)
□ Page traffic per month (if analytics exists)

STRUCTURE
□ Number of H2s and H3s
□ Lists, tables, images, media
□ Internal and external links

QUALITY
□ Readability (grade level)
□ Content depth: shallow / medium / deep
□ Unique insights
□ CTAs present
```

### Initial assessment

```
EXISTING POST ANALYSIS
Title:
URL:
Primary keyword:

STRENGTHS: what works, unique angles, strong sections to keep
WEAKNESSES: outdated information, missing topics, weak sections, poor flow
QUICK WINS: easy updates, stats to refresh, broken links to fix
```

## Phase 2: Competitor research

### Step 1: Read the SERP

Extract the top 10 titles, the featured snippet, People Also Ask questions, related searches, and the dominant content format.

### Step 2: Pick 5 competitors

Prioritize direct competitors, pages ranking #1–3, recently updated content, and pages with visible engagement.

### Step 3: Audit each competitor page

```
URL / Ranking position
Word count
H2 sections and H3 breakdown
Unique elements: features, data, examples, visuals, interactive tools
Last modified date
```

## Phase 3: Gap analysis

Build a table that compares the post with each competitor:

| Element | Your post | Comp 1 | Comp 2 | Comp 3 | Comp 4 | Comp 5 | Priority |
| --- | --- | --- | --- | --- | --- | --- | --- |
| Word count | | | | | | | |
| Featured snippet format | | | | | | | |
| [Topic 1] | | | | | | | |
| [Topic 2] | | | | | | | |
| Statistics / data | | | | | | | |
| Examples / cases | | | | | | | |
| Visuals | | | | | | | |
| FAQ section | | | | | | | |
| Schema markup | | | | | | | |

Then list missing topics by priority:

- **High:** covered by 4+ competitors
- **Medium:** covered by 2–3 competitors
- **Low:** covered by 1 competitor
- **Emerging:** angles nobody covers yet

Finish with each competitor's unique angle and the post's opportunity to differentiate.

## Phase 4: Refresh strategy

```
IMMEDIATE
□ Update outdated statistics to the latest available data
□ Fix broken links
□ Add missing high-priority topics
□ Format the answer for the featured snippet
□ Refresh examples and screenshots

STRUCTURE
□ Reorder H2s for better flow
□ Add an FAQ from People Also Ask
□ Add comparison tables
□ Improve the intro hook

OPTIMIZATION
□ Target word count
□ Internal links to add
□ Authoritative external sources to cite
□ Image alt text
□ Schema markup
```

### Proposed outline

- 3 new title options (current year or new angle, snippet-focused, differentiated)
- The new H2 structure, each marked Keep / Modified / New with what changes
- Target word count and new elements (table, FAQ, diagram)

## Phase 5: Approval

Present the plan before writing:

```markdown
## Content refresh plan: [Post title]

### Summary
The post ranks #[X] and has fallen behind on [areas]. This refresh adds [N] sections and updates [N] outdated elements.

### Key findings
1. Content depth: competitors average [X] words vs [Y]
2. Missing topics: [top 3 gaps]
3. Outdated elements: [main issues]
4. Opportunity: [unique angle]

### Gap table
### New outline

Shall I write the refreshed version? Any sections to prioritize?
```

Do not promise specific ranking or traffic gains.

## Phase 6: Writing the refresh

**Keep what works**

- Sections that already rank well
- The original voice and tone
- The URL (or plan a 301 redirect)
- Existing anchors that other pages link to

**Improve**

- Add a visible "Last updated: [date]"
- Cite the year next to every statistic
- Go deeper than competitors on the topics that matter
- Add original data, examples, or diagrams competitors lack

**Make it scannable**

- Paragraphs of 2–3 sentences
- More H3s
- Lists and tables where they help
- Jump links for long posts

### SEO checklist

```
□ Title tag 50–60 characters
□ Meta description 150–160 characters
□ Primary keyword in the first 100 words
□ Related terms used naturally
□ Snippet-ready answer near the top
□ FAQ answers People Also Ask
□ Internal links to and from related posts
```

## Output format

```markdown
# [New title]

_Last updated: [date]_

[New intro]

[Jump links]

[Refreshed sections]

## Frequently asked questions

## Conclusion

---

### Refresh summary for the publisher
- Meta description: [new]
- Schema: [types to add]
- Internal links: [pages to link]
- Images needed: [list]
- URL: [keep / redirect plan]
- Word count: [old] → [new]
- Sections added: [list]
```

## Quality check

- Every gap from Phase 3 is addressed or consciously skipped
- All data and examples are current and sourced
- The original voice is intact
- No keyword stuffing
- The post gives more practical value than each competitor analyzed