Skip to content
Marketing
Skill

/rank-monitor

Monitor keyword rankings and SERP features. Use when: tracking keyword positions, detecting ranking drops, alerting on position changes, or tracking SERP-feature presence (AI Overviews, snippets, PAA, local pack).

From plugin
digital-marketing-pro
727158 skills24 agents18 commands
Install
$ npx -y skills add indranilbanerjee/digital-marketing-pro --skill rank-monitor --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/rank-monitor

Context preview

The summary Claude sees to decide when to auto-load this skill.

Monitor keyword rankings and SERP features. Use when: tracking keyword positions, detecting ranking drops, alerting on position changes, or tracking SERP-feature presence (AI Overviews, snippets, PAA, local pack).

SKILL.md

rank-monitor.SKILL.md
name: rank-monitor
description: "Monitor keyword rankings and SERP features. Use when: tracking keyword positions, detecting ranking drops, alerting on position changes, or tracking SERP-feature presence (AI Overviews, snippets, PAA, local pack)."
argument-hint: "[brand-name] [--features]"

/digital-marketing-pro:rank-monitor

Purpose

Set up and manage keyword ranking monitoring — and, with `--features`, SERP-feature tracking in the same run. Track target keyword positions across Google, establish baselines, detect drops greater than 5 positions, and generate alerts when rankings change significantly. In `--features` mode, also track which SERP features appear for each query (AI Overviews, Featured Snippets, People Also Ask, Knowledge Panels, Local Pack, Image Pack, Video Carousel, Shopping) and whether the brand owns them. This gives ongoing visibility into organic performance — catching ranking declines early, spotting upward trends, and tracking the increasingly feature-rich results page.

> **Merged skill (was `rank-monitor` + `serp-tracker`).** SERP-feature tracking is now the `--features` mode of this one skill. The old `/digital-marketing-pro:serp-tracker` is a deprecation pointer to here.

Data sources (read this before configuring)

  • **Google Search Console MCP** is the authoritative position + impressions source for verified properties. GSC returns per-query/per-page positions, impressions, clicks, and CTR — it does **not** return the full per-query SERP-feature layout or AI Overview citation lists. Do not claim otherwise.
  • **Rank-tracker MCPs** (Ahrefs / Semrush / SE Ranking, if connected) fill in positions for keywords/competitors GSC can't see and provide their own SERP-feature flags.
  • **Moz MCP** (`mcp-moz`) is **optional** — verify the package exists on npm before use (`npm view mcp-moz`); `npx` executes remote code, so don't wire an unverified package. If Moz isn't connected, use GSC + whichever rank-tracker MCP the brand already has.
  • **AI Overview presence** in `--features` mode records only *whether* an AI Overview appeared and *whether the brand was cited in it* (a binary SERP-feature signal). For scored AI-visibility measurement across the 6 canonical AI surfaces, use `/digital-marketing-pro:geo-monitor` / `/digital-marketing-pro:aeo-audit` (the canonical AI-visibility scoring standard) and, for actual impressions, `/digital-marketing-pro:gsc-ai-performance`. Do not re-implement AI-visibility scoring here.

Input Required

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

  • **Target keywords**: A list of keywords to monitor — provided directly, imported from a CSV or Google Sheet, or pulled from the brand's existing keyword tracking list at `${CLAUDE_PLUGIN_DATA}/{brand}/seo/keywords.json`. Keywords should include search intent classification (informational, navigational, transactional, commercial) if available
  • **Mode**: default is rankings-only. Pass `--features` to also build the SERP-feature presence matrix per query in the same run
  • **Monitoring frequency**: `daily` or `weekly` — daily for high-priority head terms and active-campaign keywords (and volatile feature sets), weekly for long-tail and lower-priority terms
  • **Alert thresholds**: Position change that triggers an alert — default is >5 position drop. Customizable per keyword group (e.g., >3 for brand terms, >5 for head terms, >10 for long-tail). Both drop and gain thresholds are supported
  • **Competitor domains (optional)**: Domains to track alongside the brand for the same keywords / features — up to 10
  • **Device type**: `mobile`, `desktop`, or `both`
  • **Target country**: The Google locale to check rankings in — e.g., US, UK, AU, CA, IN

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 brand voice, compliance rules for target markets (`skills/context-engine/compliance-rules.md`), and industry context. Also check for guidelines at `~/.claude-marketing/brands/{slug}/guidelines/_manifest.json` — if present, load restrictions. 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 defaults. 2. **Capture current rankings baseline**: Query the connected rank sources (GSC MCP, plus any rank-tracker / Moz MCP available) for the current ranking position of each target keyword. Record position, ranking URL, click-through rate and impressions from GSC where available. In `--features` mode, also record which SERP features are present for the query (from the rank-tracker's feature flags or manual observation) and the owning domain per feature. For competitor domains, capture their positions (and feature ownership) for the same keywords. 3. **Configure monitoring schedule**: Save the keyword list, mode (`rankings` or `rankings+features`), monitoring frequency, alert thresholds, competitor domains, device type, and target country to `${CLAUDE_PLUGIN_DATA}/{brand}/seo/rank-monitor/config.json`. Create or update the baseline snapshot at `${CLAUDE_PLUGIN_DATA}/{brand}/seo/rank-monitor/baseline.json` with the current positions (and, in `--features` mode, the feature matrix) as the reference point. 4. **On each monitoring check: query and compare**: Pull current positions for all tracked keywords. Compare each keyword's current position to both the baseline (original position when monitoring started) and the previous check (last recorded position). Calculate absolute change from baseline, change since last check, rolling 7-day and 30-day trend direction, and average position across all tracked keywords. In `--features` mode, diff the feature matrix against the previous snapshot (features gained/lost, ownership changes, AI Overview appearance/citation changes). 5. **Detect significant changes**: Identify keywords that crossed alert thresholds — drops exceeding the co

Read more
Ships withdigital-marketing-pro

Your agency just signed a 50-brand client. The previous agency left no playbook. Three brands are bleeding budget, two have stale positioning, one is launching in a regulated jurisdiction next month. Where do you start?

Get the whole plugin