feat: enhance SurfSense with new skills, blog section, and improve SEO metadata
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled

- Added multiple new skills to skills-lock.json from the repository `aaron-he-zhu/seo-geo-claude-skills`.
- Introduced `fuzzy-search` dependency in package.json for improved search functionality.
- Updated pnpm-lock.yaml to include the new `fuzzy-search` package.
- Enhanced SEO metadata across various pages, including canonical links and descriptions for better search visibility.
- Improved layout and structure of several components, including the homepage and changelog, to enhance user experience.
This commit is contained in:
DESKTOP-RTLN3BA\$punk 2026-04-11 23:38:12 -07:00
parent 61b3f0d7e3
commit 7ea840dbb2
120 changed files with 25729 additions and 352 deletions

View file

@ -0,0 +1,275 @@
---
name: rank-tracker
description: 'Track keyword rankings and SERP feature changes in traditional search and AI responses over time. 排名追踪/SERP监控'
version: "6.0.0"
license: Apache-2.0
compatibility: "Claude Code ≥1.0, skills.sh marketplace, ClawHub marketplace, Vercel Labs skills ecosystem. No system packages required. Optional: MCP network access for SEO tool integrations."
homepage: "https://github.com/aaron-he-zhu/seo-geo-claude-skills"
when_to_use: "Use when tracking keyword rankings, monitoring position changes, comparing ranking snapshots, or detecting ranking drops."
argument-hint: "<domain> [keyword list]"
metadata:
author: aaron-he-zhu
version: "6.0.0"
geo-relevance: "medium"
tags:
- seo
- geo
- rank-tracking
- keyword-rankings
- serp-positions
- ranking-changes
- position-tracking
- 排名追踪
- ランキング追跡
- 순위추적
- seguimiento-rankings
triggers:
# EN-formal
- "track rankings"
- "check keyword positions"
- "ranking changes"
- "monitor SERP positions"
- "keyword tracking"
- "position monitoring"
# EN-casual
- "how am I ranking"
- "where do I rank for this keyword"
- "did my rankings change"
- "where do I rank now"
- "check my positions"
# EN-question
- "what position am I ranking at"
- "how are my rankings doing"
# ZH-pro
- "排名追踪"
- "关键词排名"
- "SERP位置监控"
- "排名变化"
# ZH-casual
- "查排名"
- "排名变了吗"
- "我排第几"
# JA
- "ランキング追跡"
- "検索順位チェック"
- "順位変動"
- "キーワード順位確認"
# KO
- "순위 추적"
- "키워드 순위"
- "순위 확인"
- "내 순위 어떻게 됐어?"
# ES
- "seguimiento de rankings"
- "posición en buscadores"
- "posicionamiento SEO"
- "en qué posición estoy"
# PT
- "rastreamento de rankings"
- "monitoramento de posições"
- "posição no Google"
# Misspellings
- "rank trackng"
---
# Rank Tracker
> **[SEO & GEO Skills Library](https://github.com/aaron-he-zhu/seo-geo-claude-skills)** · 20 skills for SEO + GEO · [ClawHub](https://clawhub.ai/u/aaron-he-zhu) · [skills.sh](https://skills.sh/aaron-he-zhu/seo-geo-claude-skills)
> **System Mode**: This monitoring skill follows the shared [Skill Contract](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/skill-contract.md) and [State Model](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/state-model.md).
Tracks, analyzes, and reports on keyword ranking positions over time. Monitors both traditional SERP rankings and AI/GEO visibility to provide comprehensive search performance insights.
**System role**: Monitoring layer skill. It turns performance changes into deltas, alerts, and next actions.
## When This Must Trigger
Use this when the conversation involves any of these situations — even if the user does not use SEO terminology:
Use this whenever the task needs time-aware change detection, escalation, or stakeholder-ready visibility.
- Setting up ranking tracking for new campaigns
- Monitoring keyword position changes
- Analyzing ranking trends over time
- Comparing rankings against competitors
- Tracking SERP feature appearances
- Monitoring AI Overview inclusions
- Creating ranking reports for stakeholders
## What This Skill Does
1. **Position Tracking**: Records and tracks keyword rankings
2. **Trend Analysis**: Identifies ranking patterns over time
3. **Movement Detection**: Flags significant position changes
4. **Competitor Comparison**: Benchmarks against competitors
5. **SERP Feature Tracking**: Monitors featured snippets, PAA
6. **GEO Visibility Tracking**: Tracks AI citation appearances
7. **Report Generation**: Creates ranking performance reports
## Quick Start
Start with one of these prompts. Finish with a short handoff summary using the repository format in [Skill Contract](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/skill-contract.md).
### Set Up Tracking
```
Set up rank tracking for [domain] targeting these keywords: [keyword list]
```
### Analyze Rankings
```
Analyze ranking changes for [domain] over the past [time period]
```
### Compare to Competitors
```
Compare my rankings to [competitor] for [keywords]
```
### Generate Reports
```
Create a ranking report for [domain/campaign]
```
## Skill Contract
**Expected output**: a delta summary, alert/report output, and a short handoff summary ready for `memory/monitoring/`.
- **Reads**: current metrics, previous baselines, alert thresholds, and reporting context from [CLAUDE.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/CLAUDE.md) and the shared [State Model](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/references/state-model.md) when available.
- **Writes**: a user-facing monitoring deliverable plus a reusable summary that can be stored under `memory/monitoring/`.
- **Promotes**: significant changes, confirmed anomalies, and follow-up actions to `memory/open-loops.md` and `memory/decisions.md`.
- **Next handoff**: use the `Next Best Skill` below when a change needs action.
## Data Sources
> **Note:** All integrations are optional. This skill works without any API keys — users provide data manually when no tools are connected.
> See [CONNECTORS.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/CONNECTORS.md) for tool category placeholders.
**With ~~SEO tool + ~~search console + ~~analytics + ~~AI monitor connected:**
Automatically pull ranking positions from ~~SEO tool, search impressions/clicks from ~~search console, traffic data from ~~analytics, and AI Overview citation tracking from ~~AI monitor. Daily automated rank checks with historical trend data.
**With manual data only:**
Ask the user to provide:
1. Keyword ranking positions (current and historical if available)
2. Target keyword list with search volumes
3. Competitor domains and their ranking positions for key terms
4. SERP feature status (featured snippets, PAA appearances)
5. AI Overview citation data (if tracking GEO metrics)
Proceed with the full analysis using provided data. Note in the output which metrics are from automated collection vs. user-provided data.
## Instructions
When a user requests rank tracking or analysis:
1. **Set Up Keyword Tracking** -- Configure domain, location, device, language, update frequency. Add keywords with volume, current rank, type, and priority. Set up competitor tracking and keyword categories (brand/product/informational/commercial).
2. **Record Current Rankings** -- Ranking overview by position range (#1, #2-3, #4-10, #11-20, etc.), position distribution visualization, detailed rankings with URL, SERP features, and change.
3. **Analyze Ranking Changes** -- Overall movement metrics, biggest improvements and declines with hypothesized causes, recommended recovery actions, stable keywords, new rankings, lost rankings.
4. **Track SERP Features** -- Feature ownership comparison vs competitors (snippets, PAA, image/video pack, local pack), featured snippet status, PAA appearances.
5. **Track GEO/AI Visibility** -- AI Overview presence per keyword, citation rate and position, GEO performance trend over time, improvement opportunities.
6. **Compare Against Competitors** -- Share of voice table, head-to-head comparison per keyword, competitor movement alerts with threat level.
7. **Generate Ranking Report** -- Executive summary with overall trend, position distribution, key highlights (wins/concerns/opportunities), detailed analysis, SERP feature report, GEO visibility, competitive position, recommendations.
> **Reference**: See [references/ranking-analysis-templates.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/monitor/rank-tracker/references/ranking-analysis-templates.md) for complete output templates for all 7 steps.
## Validation Checkpoints
### Input Validation
- [ ] Keywords list is complete with search volumes
- [ ] Target domain and tracking location are specified
- [ ] Competitor domains identified for comparison
- [ ] Historical baseline data available or initial tracking period set
### Output Validation
- [ ] Every metric cites its data source and collection date
- [ ] Ranking changes include context (vs. previous period)
- [ ] Significant movements have explanations or investigation notes
- [ ] Source of each data point clearly stated (~~SEO tool data, ~~search console data, user-provided, or estimated)
## Example
**User**: "Analyze my ranking changes for the past month"
**Output**:
```markdown
# Ranking Analysis: [current month, year]
## Summary
Your average position improved from 15.3 to 12.8 (-2.5 positions = better)
Keywords in top 10 increased from 12 to 17 (+5)
## Biggest Wins
| Keyword | Old | New | Change | Possible Cause |
|---------|-----|-----|--------|----------------|
| email marketing tips | 18 | 5 | +13 | Likely driven by content refresh |
| best crm software | 24 | 11 | +13 | Correlates with new backlinks acquired |
| sales automation | 15 | 7 | +8 | Correlates with schema markup addition |
## Needs Attention
| Keyword | Old | New | Change | Action |
|---------|-----|-----|--------|--------|
| marketing automation | 4 | 12 | -8 | Likely displaced by new HubSpot guide |
**Recommended**: Update your marketing automation guide with [current year] statistics and examples.
```
## Tips for Success
1. **Track consistently** - Same time, same device, same location
2. **Include enough keywords** - 50-200 for meaningful data
3. **Segment by intent** - Track brand, commercial, informational separately
4. **Monitor competitors** - Context makes your data meaningful
5. **Track SERP features** - Position 1 without snippet may lose to position 4 with snippet
6. **Include GEO metrics** - AI visibility increasingly important
## Rank Change Quick Reference
### Response Protocol
| Change | Timeframe | Action |
|--------|-----------|--------|
| Drop 1-3 positions | Wait 1-2 weeks | Monitor -- may be normal fluctuation |
| Drop 3-5 positions | Investigate within 1 week | Check for technical issues, competitor changes |
| Drop 5-10 positions | Investigate immediately | Full diagnostic: technical, content, links |
| Drop off page 1 | Emergency response | Comprehensive audit + recovery plan |
| Position gained | Document and learn | What worked? Can you replicate? |
> **Reference**: See [references/tracking-setup-guide.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/monitor/rank-tracker/references/tracking-setup-guide.md) for root cause taxonomy, CTR benchmarks by position, SERP feature CTR impact, algorithm update assessment, tracking configuration best practices, keyword selection and grouping strategies, and data interpretation guidelines.
### Save Results
After delivering monitoring data or reports to the user, ask:
> "Save these results for future sessions?"
If yes, write a dated summary to `memory/monitoring/YYYY-MM-DD-<topic>.md` containing:
- One-line headline finding or status change
- Top 3-5 actionable items
- Open loops or anomalies requiring follow-up
- Source data references
If any findings should influence ongoing strategy, recommend promoting key conclusions to `memory/hot-cache.md`.
## Reference Materials
- [Tracking Setup Guide](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/monitor/rank-tracker/references/tracking-setup-guide.md) — Configuration best practices, device/location settings, and SERP feature tracking setup
## Next Best Skill
- **Primary**: [alert-manager](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/monitor/alert-manager/SKILL.md) — operationalize rank changes into thresholds and follow-ups.

View file

@ -0,0 +1,308 @@
# Ranking Analysis Output Templates
Detailed output templates for each step of the rank tracking workflow. Use these templates when setting up tracking, recording snapshots, and generating reports.
---
## 1. Rank Tracking Setup Template
```markdown
## Rank Tracking Setup
### Tracking Configuration
**Domain**: [domain]
**Tracking Location**: [country/city]
**Device**: [Mobile/Desktop/Both]
**Language**: [language]
**Update Frequency**: [Daily/Weekly/Monthly]
### Keywords to Track
| Keyword | Volume | Current Rank | Type | Priority |
|---------|--------|--------------|------|----------|
| [keyword 1] | [vol] | [rank] | Primary | High |
| [keyword 2] | [vol] | [rank] | Primary | High |
| [keyword 3] | [vol] | [rank] | Secondary | Medium |
| [keyword 4] | [vol] | [rank] | Long-tail | Medium |
| [keyword 5] | [vol] | [rank] | Brand | High |
### Competitor Tracking
Track these competitors for benchmark:
1. [Competitor 1] - [domain]
2. [Competitor 2] - [domain]
3. [Competitor 3] - [domain]
### Tracking Categories
| Category | Keywords | Description |
|----------|----------|-------------|
| Brand | [X] | Brand name variations |
| Product | [X] | Product-related terms |
| Informational | [X] | Educational queries |
| Commercial | [X] | Buying intent terms |
```
---
## 2. Current Ranking Snapshot Template
```markdown
## Current Ranking Snapshot
**Date**: [date]
**Domain**: [domain]
### Ranking Overview
| Position Range | Keyword Count | % of Total |
|----------------|---------------|------------|
| #1 | [X] | [X]% |
| #2-3 | [X] | [X]% |
| #4-10 | [X] | [X]% |
| #11-20 | [X] | [X]% |
| #21-50 | [X] | [X]% |
| #51-100 | [X] | [X]% |
| Not ranking | [X] | [X]% |
### Position Distribution
```
Position 1: [X] keywords
Position 2-3: [X] keywords
Position 4-10: [X] keywords
Position 11-20: [X] keywords
Position 21+: [X] keywords
```
### Detailed Rankings
| Keyword | Position | URL | SERP Features | Change |
|---------|----------|-----|---------------|--------|
| [kw 1] | 3 | [url] | Featured Snippet | +2 |
| [kw 2] | 7 | [url] | PAA | -1 |
| [kw 3] | 12 | [url] | None | New |
| [kw 4] | 1 | [url] | Featured Snippet | Stable |
```
---
## 3. Ranking Change Analysis Template
```markdown
## Ranking Change Analysis
**Period**: [start date] to [end date]
### Overall Movement
| Metric | Start | End | Change |
|--------|-------|-----|--------|
| Avg Position | [X] | [Y] | [+/-Z] |
| Keywords in Top 10 | [X] | [Y] | [+/-Z] |
| Keywords in Top 3 | [X] | [Y] | [+/-Z] |
| Keywords #1 | [X] | [Y] | [+/-Z] |
### Biggest Improvements
| Keyword | Old Rank | New Rank | Change | Est. Traffic Impact |
|---------|----------|----------|--------|---------------------|
| [kw 1] | 15 | 4 | +11 | +[X] visits/mo |
| [kw 2] | 25 | 9 | +16 | +[X] visits/mo |
**Possible causes**:
- [kw 1]: [hypothesis - e.g., content refresh may have improved relevance]
### Biggest Declines
| Keyword | Old Rank | New Rank | Change | Est. Traffic Impact |
|---------|----------|----------|--------|---------------------|
| [kw 1] | 3 | 12 | -9 | -[X] visits/mo |
**Likely factors**:
- [kw 1]: [hypothesis - e.g., competitor may have published updated guide]
> These are hypotheses based on available signals, not confirmed causes. Investigate each with the relevant skill to confirm.
**Recommended actions**:
- [kw 1]: [action to recover]
### Stable Keywords
[X] keywords remained within +/-3 positions (stable)
### New Rankings
| Keyword | Position | URL | Notes |
|---------|----------|-----|-------|
| [kw 1] | [pos] | [url] | [notes] |
### Lost Rankings
| Keyword | Last Position | URL | Action |
|---------|---------------|-----|--------|
| [kw 1] | [pos] | [url] | [investigate/refresh] |
```
---
## 4. SERP Feature Tracking Template
```markdown
## SERP Feature Tracking
### Feature Ownership
| Feature | Your Count | Competitor Avg | Opportunity |
|---------|------------|----------------|-------------|
| Featured Snippets | [X] | [Y] | [+/-Z] |
| People Also Ask | [X] | [Y] | [+/-Z] |
| Image Pack | [X] | [Y] | [+/-Z] |
| Video Results | [X] | [Y] | [+/-Z] |
| Local Pack | [X] | [Y] | [+/-Z] |
### Featured Snippet Status
| Keyword | You Own? | Current Owner | Winnable? |
|---------|----------|---------------|-----------|
| [kw 1] | Yes | You | Maintain |
| [kw 2] | No | [Competitor] | High |
### PAA Appearances
| Question | Your Answer? | Position | Action |
|----------|--------------|----------|--------|
| [Question 1] | Yes/No | [pos] | [action] |
```
---
## 5. GEO/AI Visibility Tracking Template
```markdown
## AI/GEO Visibility Tracking
### AI Overview Presence
| Keyword | AI Overview | You Cited? | Citation Position |
|---------|-------------|------------|-------------------|
| [kw 1] | Yes | Yes | 1st source |
| [kw 2] | Yes | Yes | 3rd source |
| [kw 3] | Yes | No | Not cited |
| [kw 4] | No | N/A | N/A |
### AI Citation Rate
| Metric | Value |
|--------|-------|
| Keywords with AI Overview | [X]/[Total] ([Y]%) |
| Your citations in AI Overview | [X]/[Y] ([Z]%) |
| Avg citation position | [X] |
### GEO Performance Trend
| Period | AI Overviews Tracked | Your Citations | Rate |
|--------|---------------------|----------------|------|
| Last week | [X] | [Y] | [Z]% |
| 2 weeks ago | [X] | [Y] | [Z]% |
| Month ago | [X] | [Y] | [Z]% |
### GEO Improvement Opportunities
| Keyword | Has AI Overview | You Cited? | Content Gap |
|---------|-----------------|------------|-------------|
| [kw 1] | Yes | No | Need clearer definition |
| [kw 2] | Yes | No | Missing quotable stats |
```
---
## 6. Competitor Ranking Comparison Template
```markdown
## Competitor Ranking Comparison
### Share of Voice
| Domain | Keywords Ranked | Avg Position | Visibility |
|--------|-----------------|--------------|------------|
| [Your site] | [X] | [Y] | [Z]% |
| [Competitor 1] | [X] | [Y] | [Z]% |
| [Competitor 2] | [X] | [Y] | [Z]% |
### Head-to-Head Comparison
**You vs [Competitor 1]**:
| Keyword | Your Rank | Their Rank | Winner |
|---------|-----------|------------|--------|
| [kw 1] | 3 | 7 | You |
| [kw 2] | 12 | 5 | Them |
**Summary**: You win [X]/[Y] keywords vs [Competitor 1]
### Competitor Movement Alerts
| Competitor | Keyword | Their Change | Threat Level |
|------------|---------|--------------|--------------|
| [Comp 1] | [kw] | +15 positions | High |
| [Comp 2] | [kw] | +8 positions | Medium |
```
---
## 7. Ranking Performance Report Template
```markdown
# Ranking Performance Report
**Domain**: [domain]
**Report Period**: [start] to [end]
**Generated**: [date]
## Executive Summary
**Overall Trend**: [Improving/Stable/Declining]
| Metric | Value | vs Last Period | Status |
|--------|-------|----------------|--------|
| Total keywords tracked | [X] | [+/-Y] | [status] |
| Keywords in top 10 | [X] | [+/-Y] | [status] |
| Keywords in top 3 | [X] | [+/-Y] | [status] |
| Average position | [X] | [+/-Y] | [status] |
| Estimated traffic | [X] | [+/-Y]% | [status] |
## Key Highlights
### Wins
- [Achievement 1]
- [Achievement 2]
### Concerns
- [Issue 1]
- [Issue 2]
### Opportunities
- [Opportunity 1]
## Detailed Analysis
[Include top performing keywords, keywords needing attention, SERP features, GEO visibility, competitive position]
## Recommendations
### Immediate Actions
1. [Action] for [keyword] - [expected impact]
### This Month
1. [Action]
### Next Quarter
1. [Strategic action]
## Next Report
Scheduled: [date]
Focus areas: [areas to monitor]
```

View file

@ -0,0 +1,329 @@
# Rank Tracking Setup Guide
Comprehensive reference for configuring rank tracking systems. Covers tool configuration, keyword selection, grouping strategies, alert thresholds, reporting cadences, and data interpretation.
---
## 1. Tracking Tool Configuration
### Initial Setup Checklist
| Step | Action | Notes |
|------|--------|-------|
| 1 | Select tracking tool | ~~SEO tool with rank tracking capability |
| 2 | Add target domain | Primary domain + any subdomains |
| 3 | Set tracking location | Country, state/region, or city level |
| 4 | Configure device settings | Mobile, desktop, or both (recommended: both) |
| 5 | Set search engine | Google (primary), Bing (optional), local engines |
| 6 | Set language | Match target audience language |
| 7 | Configure update frequency | Daily for priority keywords, weekly for long-tail |
| 8 | Add competitor domains | 3-5 direct competitors |
| 9 | Import keyword list | From keyword research or existing tracking |
| 10 | Verify initial data pull | Confirm positions match manual spot checks |
### Location Configuration
Rank tracking results vary dramatically by location. Configure tracking to match your actual target market.
| Scenario | Location Setting | Example |
|----------|-----------------|---------|
| National business | Country level | United States |
| Regional business | State/region level | California, US |
| Local business | City level | San Francisco, CA, US |
| Multi-location | Separate project per location | NYC + LA + Chicago |
| International | Separate project per country | US + UK + Canada |
**Common mistake**: Tracking from a single location when your audience is distributed. If you serve multiple cities, track key terms in each city separately.
### Device Configuration
| Device | When to Track | Why |
|--------|--------------|-----|
| Desktop | Always | Baseline reference, still significant traffic |
| Mobile | Always | 60%+ of searches are mobile; rankings differ from desktop |
| Both separately | Recommended | Identify device-specific ranking issues |
| Tablet | Optional | Usually mirrors desktop closely |
### Update Frequency Recommendations
| Keyword Tier | Frequency | Rationale |
|-------------|-----------|-----------|
| Top 20 revenue keywords | Daily | Catch drops immediately |
| Brand keywords | Daily | Protect brand presence |
| Page 1 keywords (21-50) | 2-3x per week | Monitor competitive positions |
| Page 2 keywords (51-100) | Weekly | Track progress without excessive API usage |
| Long-tail / monitoring (100+) | Weekly | Cost-efficient tracking |
| New/experimental keywords | Daily for first 30 days, then adjust | Establish baseline quickly |
---
## 2. Keyword Selection for Tracking
### How Many Keywords to Track
| Site Size | Recommended Keywords | Breakdown |
|-----------|---------------------|-----------|
| Small (< 50 pages) | 50-100 | 10 brand + 20 primary + 20 secondary + rest long-tail |
| Medium (50-500 pages) | 100-500 | 20 brand + 50 primary + 100 secondary + rest long-tail |
| Large (500+ pages) | 500-2000+ | Scale proportionally; focus on revenue pages |
| Enterprise | 2000-10000+ | Comprehensive coverage with automated management |
### Keyword Selection Criteria
Select keywords for tracking based on these factors:
| Factor | Weight | Selection Rule |
|--------|--------|---------------|
| Revenue impact | High | Always track keywords that drive conversions |
| Search volume | Medium | Track keywords with meaningful volume for your niche |
| Current ranking | Medium | Track keywords where you rank (pages 1-3) plus targets |
| Competitive value | Medium | Track keywords your competitors target |
| Strategic importance | High | Track keywords aligned with business goals |
| Content investment | Medium | Track keywords for pages you invested in creating |
### Keyword Types to Include
| Type | % of Tracked Keywords | Examples |
|------|----------------------|---------|
| Brand keywords | 5-10% | "[brand name]", "[brand] + product", "[brand] reviews" |
| Primary commercial | 15-25% | "[product category]", "best [product]", "buy [product]" |
| Secondary commercial | 15-25% | "[product] for [use case]", "[product] vs [competitor]" |
| Informational | 20-30% | "how to [topic]", "what is [concept]", "[topic] guide" |
| Long-tail | 15-25% | Specific queries with 3+ words, lower volume |
| Local (if applicable) | 5-10% | "[service] near me", "[service] in [city]" |
### Keywords You Should NOT Track
| Skip These | Why |
|-----------|-----|
| Zero-volume keywords (unless strategic) | No measurable impact |
| Keywords you have no content for | Track only when you create targeting content |
| Extremely broad single-word terms | Too volatile, hard to rank, misleading data |
| Misspellings (unless significant volume) | Clutters reporting |
---
## 3. Keyword Grouping Strategies
Effective grouping transforms raw keyword data into strategic insights.
### Grouping Dimensions
| Dimension | Examples | Insight Gained |
|-----------|---------|----------------|
| **Topic cluster** | "email marketing", "email automation", "email templates" | Content hub performance |
| **Search intent** | Informational, commercial, transactional, navigational | Funnel stage performance |
| **Funnel stage** | Awareness, consideration, decision, retention | Buyer journey alignment |
| **Product/service** | Product A, Product B, Service C | Product line performance |
| **Content type** | Blog, landing page, product page, guide | Format effectiveness |
| **Priority tier** | Tier 1 (revenue), Tier 2 (growth), Tier 3 (monitor) | Resource allocation |
| **Page** | URL-level grouping | Page-specific performance |
| **Competitor overlap** | Keywords where you compete with specific rivals | Competitive intelligence |
### Recommended Group Hierarchy
```
Level 1: Business Unit / Product Line
└── Level 2: Topic Cluster / Category
└── Level 3: Search Intent
└── Level 4: Priority Tier
```
**Example:**
```
SaaS Product
└── Project Management
└── Commercial Intent
└── Tier 1: "project management software", "best PM tools"
└── Tier 2: "PM software for small teams", "agile PM tools"
└── Informational Intent
└── Tier 1: "what is project management", "PM methodologies"
└── Collaboration
└── Commercial Intent
└── Tier 1: "team collaboration software", "best collab tools"
```
### Group Naming Conventions
Use consistent, descriptive names:
| Pattern | Example | Benefit |
|---------|---------|---------|
| `[Category] - [Intent]` | "Email Marketing - Commercial" | Clear context |
| `[Product] / [Feature]` | "CRM / Lead Scoring" | Product-line clarity |
| `T1: [Topic]` | "T1: Core Product Terms" | Priority at a glance |
---
## 4. Alert Threshold Configuration
### Setting Baseline Thresholds
Before setting alerts, establish a baseline by tracking for 2-4 weeks without alerts to understand normal fluctuation ranges.
| Metric | Baseline Period | Normal Fluctuation | Alert When |
|--------|----------------|-------------------|------------|
| Individual keyword position | 2-4 weeks | +/- 2-3 positions | Exceeds normal range |
| Average position (all keywords) | 4 weeks | +/- 1-2 positions | Exceeds normal range |
| Keywords in top 10 | 4 weeks | +/- 5% | Drops >10% |
| Keywords in top 3 | 4 weeks | +/- 3% | Drops >5% |
### Alert Configuration by Keyword Tier
| Keyword Tier | Drop Alert | Gain Alert | Competitor Alert |
|-------------|-----------|-----------|-----------------|
| Tier 1 (revenue) | Drop >= 3 positions | Gain >= 3 positions | Competitor enters top 5 |
| Tier 2 (growth) | Drop >= 5 positions | Enters top 10 | Competitor overtakes you |
| Tier 3 (monitor) | Drop >= 10 positions | Enters top 20 | None |
| Brand | Any drop from #1 | N/A | Competitor ranks for your brand |
### Alert Delivery Preferences
| Alert Type | Channel | Frequency |
|-----------|---------|-----------|
| Critical drops (Tier 1) | Email + Slack | Immediate |
| Significant changes | Email | Daily digest |
| Weekly summary | Email | Every Monday |
| Monthly report | Email + dashboard | 1st of month |
---
## 5. Reporting Cadences
### Recommended Report Schedule
| Report Type | Audience | Frequency | Key Metrics |
|------------|----------|-----------|-------------|
| Quick pulse | SEO team | Daily | Major movements, alerts fired |
| Weekly summary | Marketing team | Weekly | Position changes, trends, actions taken |
| Monthly report | Stakeholders | Monthly | Full performance analysis, MoM comparisons |
| Quarterly review | Leadership | Quarterly | Strategic trends, ROI, competitive position |
| Annual review | Executive | Annually | YoY growth, strategic recommendations |
### Report Content by Cadence
**Daily Pulse (1-2 minutes to review):**
- Keywords with biggest position changes
- Alerts triggered
- Competitor movements
**Weekly Summary (5-10 minutes to review):**
- Position distribution changes
- Top 5 improvements and declines
- SERP feature wins/losses
- AI citation changes
- Week-over-week trend
**Monthly Report (15-30 minutes to review):**
- Full position distribution analysis
- Month-over-month trends
- Competitor share of voice
- SERP feature ownership
- GEO visibility trends
- Content performance by keyword group
- Recommendations for next month
**Quarterly Review (30-60 minutes to review):**
- Quarter-over-quarter trends
- Progress against annual goals
- Competitive landscape shifts
- Strategic keyword opportunities
- Budget and resource recommendations
---
## 6. Data Interpretation Guidelines
### Understanding Rank Fluctuations
| Pattern | Meaning | Action |
|---------|---------|--------|
| Daily +/- 1-2 positions | Normal fluctuation | Ignore; track weekly trend |
| Sudden drop 5+ positions, recovers in 2-3 days | Google testing / data center variation | Monitor, no action needed |
| Steady decline over 2+ weeks | Real ranking loss | Investigate cause (see Root Cause Taxonomy) |
| Sudden drop affecting many keywords | Algorithm update or technical issue | Check Search Status Dashboard + technical health |
| One keyword drops, others stable | Page-specific or competitor-specific issue | Analyze that specific SERP |
| All keywords for one URL drop | Page-level issue (noindex, 404, slow) | Check page technical health |
| Gradual improvement over weeks | SEO efforts working | Document what worked, continue strategy |
### Position vs. Traffic Relationship
Position changes do not translate linearly to traffic changes.
| Position Change | Estimated Traffic Impact |
|----------------|------------------------|
| #1 to #2 | -50% to -60% click loss |
| #2 to #3 | -25% to -30% click loss |
| #3 to #5 | -30% to -40% click loss |
| #5 to #10 | -50% to -60% click loss |
| #10 to #11 | -60% to -80% click loss (page 2 cliff) |
| #11 to #20 | Minimal additional loss (already low) |
**Key insight**: Moving from position #10 to #11 (page 1 to page 2) has a far greater impact than moving from #20 to #30. Prioritize keeping keywords on page 1.
### Interpreting Visibility Score
Visibility score combines position and search volume into a single metric.
| Visibility Change | Interpretation |
|-------------------|---------------|
| Increasing visibility, stable positions | Seasonal search volume increase |
| Decreasing visibility, stable positions | Seasonal search volume decrease |
| Increasing visibility, improving positions | SEO strategy is working |
| Decreasing visibility, declining positions | Ranking loss causing traffic decline |
| Stable visibility, mixed position changes | Gains offsetting losses |
### Comparing Against Competitors
| Competitive Signal | Meaning | Response |
|-------------------|---------|----------|
| Competitor visibility rising, yours stable | They are gaining, you may lose ground | Analyze their strategy, accelerate efforts |
| Your visibility rising faster than competitors | You are winning share of voice | Continue strategy, identify what is working |
| All competitors dropping simultaneously | Algorithm update affecting the niche | Focus on quality, wait for dust to settle |
| One competitor surging | They made a significant change | Analyze what they did (content? links? technical?) |
### Data Quality Checks
Always verify your tracking data quality.
| Check | How | Frequency |
|-------|-----|-----------|
| Spot-check positions manually | Incognito search for 5-10 keywords | Weekly |
| Compare with Search Console | Match tracked positions with GSC average position | Monthly |
| Check for tracking errors | Look for keywords showing "not found" or position 0 | Weekly |
| Verify competitor data | Spot-check competitor rankings manually | Monthly |
| Confirm location accuracy | Search from target location (VPN if needed) | Quarterly |
---
## 7. Common Pitfalls and How to Avoid Them
| Pitfall | Problem | Solution |
|---------|---------|----------|
| Tracking too many keywords | Dilutes focus, increases cost | Focus on keywords with business impact |
| Checking rankings too frequently | Obsessing over daily noise | Focus on weekly and monthly trends |
| Not segmenting data | Averages hide important patterns | Group by intent, topic, priority |
| Ignoring SERP features | Position alone does not tell the whole story | Track featured snippets, AI Overviews, PAA |
| Not tracking competitors | Your data lacks context | Always track 3-5 competitors |
| Single location tracking | Misses local variations | Track each target market separately |
| Forgetting mobile | Mobile and desktop rankings differ | Always track both devices |
| Not documenting changes | Cannot correlate changes to actions | Log all content updates, technical changes, link building |
---
## 8. Migration and Tool Switching
If you need to switch rank tracking tools, follow this process to preserve data continuity.
| Step | Action |
|------|--------|
| 1 | Export all historical data from current tool |
| 2 | Run both tools in parallel for 2-4 weeks |
| 3 | Compare data between tools to understand differences |
| 4 | Document any systematic position differences |
| 5 | Import historical data into new tool if supported |
| 6 | Reconfigure all alerts and reports in new tool |
| 7 | Decommission old tool after confidence in new data |
**Important**: Different tools may report slightly different positions due to data center sampling, timing, and methodology. A 1-2 position variance between tools is normal.