seoskills.sh
Catalog/seoskills/internal

SERP Feature Volatility Tracker

Snapshots each keyword's SERP features and top rankings on a schedule and computes a volatility score from period-over-…

0 installs

Use this skill

$ npx skills add seoskills.sh/serp-volatility-tracker
Repository
seoskills/internal
GitHub stars
License

SKILL.md

---
name: SERP Feature Volatility Tracker
description: Snapshots each keyword's SERP features and top rankings on a schedule and computes a volatility score from period-over-period churn, flagging keywords whose SERP composition is destabilizing before rankings move. Use when the user wants SERP monitoring, ranking stability analysis, or early warning of algorithm/feature shifts on target terms.
category: keyword-research
---

# SERP Feature Volatility Tracker

AGENT ROLE: Autonomous SERP-monitoring agent. Take a current SERP snapshot per keyword, diff it against the prior snapshot, compute volatility, and emit the JSON in `references/output.schema.json`. This skill is stateful across runs via the `previous` snapshot input.

## OBJECTIVE
Quantify how much each keyword's SERP is changing over time — both organic ranking churn and the presence/absence of SERP features — to surface destabilizing terms early.

## INPUTS
- `keywords` (REQUIRED string[]).
- `previous` (OPTIONAL): the prior run's `snapshots` array; absent on first run (establishes a baseline).
- `top_n` (OPTIONAL, default 10).
- `track_features` (OPTIONAL): subset of `["featured_snippet","people_also_ask","ai_overview","local_pack","video","image_pack","shopping","top_stories"]`. Default all.
- `location`/`hl` (OPTIONAL): default "United States"/"en".

## AUTHENTICATION (SERP API)
1. REQUIRE env `SERP_API_KEY`. IF unset THEN STOP `error.code="AUTH_MISSING_API_KEY"`.
2. Endpoint (SerpApi shape): `GET https://serpapi.com/search.json?engine=google&q={kw}&num={top_n}&api_key={key}`.

## EXPECTED TOOL CALLS
- Run `scripts/volatility.py --keywords keywords.json [--previous previous.json]`.
- One SERP fetch per keyword; capture ordered organic URLs + which tracked features are present.

## PROCEDURE (deterministic, per keyword)
STEP 1 — SNAPSHOT: fetch SERP; record `{ranking: [urls], features: {feature: bool}, captured_at}`.
STEP 2 — IF no `previous` snapshot for this keyword THEN `status="baseline"`, volatility `null`, and return the snapshot for next run.
STEP 3 — RANKING CHURN: compute a rank-biased overlap between prior and current top-N (weight higher positions more). `rank_volatility = 1 − RBO` in [0,1].
STEP 4 — FEATURE CHURN: `feature_changes = set of features that appeared or disappeared`; `feature_volatility = |changes| / |tracked|`.
STEP 5 — `volatility_score = round(0.7*rank_volatility + 0.3*feature_volatility, 3)`; classify `stable (<0.2) | shifting (0.2–0.5) | volatile (>0.5)`.
STEP 6 — EMIT current snapshots (for persistence) + a `changes` list sorted by volatility desc; note new/lost features explicitly.

## RATE LIMITS & ERROR HANDLING
- SERP API bills per search. `429`/quota → backoff `2^attempt` (max 5) then STOP `error.code="RATE_LIMITED"` with `partial`.
- `5xx`/timeout retry ≤3 then mark keyword `status="serp_error"`; carry forward its previous snapshot unchanged so history is not lost.
- Concurrency ≤ 3.

## MISSING / INSUFFICIENT DATA
- First run for any keyword is always `baseline` (no volatility) — this is expected, not an error.
- IF the SERP returns fewer than `top_n` results THEN compare on the intersection length; note `partial_serp=true`.

## OUTPUT
One JSON object per `references/output.schema.json`. The `snapshots` array MUST be persisted and passed as `previous` next run.

## FILES
- `scripts/volatility.py` — SERP snapshot, RBO ranking churn, feature-diff volatility.
- `references/output.schema.json` — output contract.

Not using the CLI? Copy the SKILL.md and paste it straight into ChatGPT, Claude, or any agent.

Embed a badge

seoskills.sh install badge

More in Keyword Research

Keyword Researchcalm-north/seojuice-skills

find-keywords

Build a prioritized keyword list for a website, topic, or campaign. Use when the user asks about keyword research, finding keywords to target, building a keyword list, search demand, keyword difficulty, intent mapping, or which keywords to prioritize. For writing content around keywords, see brief. For grouping keywords into clusters, see build-clusters.

6.9K installs
Keyword Researchagricidaniel/claude-seo

seo-plan

Strategic SEO planning for new or existing websites. Industry-specific templates, competitive analysis, content strategy, and implementation roadmap. Use when user says "SEO plan", "SEO strategy", "SEO planning", "content strategy", "keyword strategy", "content calendar", "site architecture", or "SEO roadmap".

5.4K installs
Keyword Researchagricidaniel/claude-seo

seo-cluster

SERP-based semantic topic clustering for content architecture planning. Groups keywords by actual Google SERP overlap (not text similarity), designs hub-and-spoke content clusters with internal link matrices, and generates interactive visualizations. Optionally executes content creation if claude-blog is installed. Use when user says "topic cluster", "content cluster", "semantic clustering", "pillar page", "hub and spoke", "content architecture", "keyword grouping", or "cluster plan".

5K installs
Keyword Researchagricidaniel/claude-seo

seo-sxo

Search Experience Optimization: reads Google SERPs backwards to detect page-type mismatches, derives user stories from search intent signals, and scores pages from multiple persona perspectives. Identifies why well-optimized pages fail to rank by analyzing what Google rewards for each keyword. Use when user says "SXO", "search experience", "page type mismatch", "SERP analysis", "user story", "persona scoring", "why isn't my page ranking", "intent mismatch", or "wireframe".

4.4K installs
Keyword Researchcalm-north/seojuice-skills

target-serp

Identify and capture SERP features for target keywords — featured snippets, People Also Ask boxes, knowledge panels, and rich results. Use when the user asks about featured snippets, position zero, PAA optimization, rich results, schema markup for SERP features, or how to get more SERP real estate.

2K installs
Keyword Researchnexscope-ai/amazon-skills

amazon-keyword-research

Amazon keyword research and market opportunity analysis for sellers. Retrieve autocomplete suggestions (long-tail keywords), analyze competitor landscape, and assess market opportunity for any keyword on 12 Amazon marketplaces (US/UK/DE/FR/IT/ES/JP/CA/AU/IN/MX/BR). No API key required. Make sure to use this skill whenever the user mentions Amazon product research, finding products to sell on Amazon, Amazon keyword ideas, niche analysis, competition analysis for Amazon, market opportunity on Amazon, comparing Amazon keywords, evaluating whether a product is worth selling, Amazon autocomplete da

1.3K installs