# Seo Page
> Inteligencia SEO a nivel de URL: qué keywords rankea, tráfico captado, historial de posiciones, contexto SERP y citación en AI Search, con veredicto keep/refresh/consolidate/kill.
Fuente: https://skillsagentes.com/skills/seranking/seo-skills/seo-page
Markdown: https://skillsagentes.com/skills/seranking/seo-skills/seo-page.md
Repositorio: https://github.com/seranking/seo-skills
Autor: seranking
Licencia: MIT
Actualizado: hace 4 meses
Coste de contexto: 144 tok instalada, 3.6k tok al activarse, 3.6k tok con todos los archivos del bundle
Bundle: 1 archivo, 14 KB
Permisos que pide: ninguno declarado
## Instalación
Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina.
```bash
# Claude Code
npx -y skills add seranking/seo-skills --skill seo-page --agent claude-code
# Cursor
npx -y skills add seranking/seo-skills --skill seo-page --agent cursor
# Codex
npx -y skills add seranking/seo-skills --skill seo-page --agent codex
# Gemini CLI
npx -y skills add seranking/seo-skills --skill seo-page --agent gemini
# Windsurf
npx -y skills add seranking/seo-skills --skill seo-page --agent windsurf
# Cline
npx -y skills add seranking/seo-skills --skill seo-page --agent cline
```
## Qué hace
- Analiza una URL específica: keywords por las que rankea, tráfico capturado, historial de posición y contexto SERP
- Verifica autoridad de página (PA) y su trayectoria en 90 días
- Detecta canibalización con otras páginas del mismo dominio
- Comprueba citaciones en AI Overview (AIO) y hace un sense-check del HTML
- Produce un veredicto: KEEP, REFRESH, CONSOLIDATE o KILL con plan de acción
## Cuándo usarla
- El usuario pide "analizar esta página" o "rendimiento SEO de la página"
- El usuario pregunta qué rankea una URL o cuánto tráfico capta
- El usuario pregunta si debería refrescar una página
- El usuario proporciona una única URL para análisis
## Cuándo no
- Se necesita una auditoría de salud técnica (usar seo-technical-audit)
- Se quiere crear un artículo nuevo desde un tema (usar seo-content-brief)
## Qué la activa
- "Analiza esta página y dime qué rankea"
- "¿Debería refrescar esta URL o consolidarla con otra?"
- "¿Qué tráfico capta esta página y hay canibalización con otras del dominio?"
- "Dame el veredicto SEO de esta URL"
## Antes de instalar
- Requiere el servidor MCP de SE Ranking conectado y la herramienta WebFetch de Claude; Firecrawl y Google Search Console son opcionales pero amplían los datos.
## Archivos
- SKILL.md — 14 KB
## SKILL.md
Reproducido tal cual desde seranking/seo-skills bajo MIT. Esta sección es el documento original y está en inglés.
> Example output: [examples/seo-page-notion-keyboard-shortcuts-20260514/PAGE.md](../../examples/seo-page-notion-keyboard-shortcuts-20260514/PAGE.md)
# Page Intelligence
Show what a single URL ranks for, what traffic it captures, where its weak and strong points are, and what to do about it. The deliverable is an opinionated verdict — **KEEP**, **REFRESH**, **CONSOLIDATE**, or **KILL** — anchored in objective signals from SE Ranking's URL-level data.
## Prerequisites
- SE Ranking MCP server connected.
- Claude's `WebFetch` tool available (for the page-level HTML sense-check).
- User provides: (a) a target URL, optionally (b) target market country (default: `us`), (c) primary topical keyword (auto-inferred from `
` + `` if not supplied).
## Process
1. **Validate target & preflight.** See `skills/seo-firecrawl/references/preflight.md` for the canonical 3-stage preflight (credit balance, Firecrawl availability, Google APIs). Skill-specific notes:
- Confirm the URL is fetchable; derive parent domain. If the user supplied a primary keyword, use it; otherwise infer it in step 3.
- Estimated SE Ranking cost for this skill: ~10–15 credits typical (URL overview, ranking keywords, page authority, SERP context for top 3–5 keywords).
- Firecrawl: optional with WebFetch fallback, ~1 Firecrawl credit if available. When available, step 6 recovers `og:*`, `twitter:*`, canonical, robots meta, JSON-LD types, and hreflang count from raw `` — WebFetch returns markdown only and strips those fields. Without Firecrawl, the affected lines in `PAGE.md` emit `(skipped — Firecrawl not installed)`. Pass `--no-firecrawl` to treat Firecrawl as unavailable even when installed (credit conservation).
- Google APIs: tier 1 (GSC available) unlocks step 4b (GSC URL performance + URL Inspection) after the page-authority step. See `skills/seo-google/references/cross-skill-integration.md` § "seo-page" for the full recipe.
2. **URL-level overview** `DATA_getUrlOverviewWorldwide`
- Pull keyword count, organic traffic estimate, paid keyword count, paid traffic estimate, top regions.
- Note: traffic estimates are directional — they don't replace Google Search Console.
3. **Ranking keywords** `DATA_getDomainKeywords` (use the `url` param for exact match — not `filter_url`)
- Pull every keyword the URL ranks for in the target country, with positions.
- Sort by traffic-weighted score: `volume × CTR-by-position` (use a standard CTR curve: 1=28%, 2=15%, 3=11%, 4=8%, 5=7%, 6=5%, 7=4%, 8=3%, 9=2%, 10=2%, 11+=1%).
- Take the top 3–5 as the URL's "primary keywords" for SERP work in step 5.
4. **Page authority** `DATA_getPageAuthority` + `DATA_getPageAuthorityHistory`
- Current PA score and its 12-month trajectory.
- Flag any drop > 5 points in the last 90 days.
4b. **GSC URL performance + URL Inspection** *(only if google-api.json is present, tier ≥ 1)*
- Replaces the directional traffic estimate from step 2 with first-party Google data for the exact URL.
- Pull GSC search analytics for the URL (last 28 days, by query and page):
`python3 scripts/gsc_query.py --property "{config.default_property}" --url "{target_url}" --days 28 --json`
- Pull URL Inspection (real indexation status, canonical Google sees, last crawl date):
`python3 scripts/gsc_inspect.py "{target_url}" --site-url "{config.default_property}" --json`
- If the URL's domain isn't a verified GSC property: surface "GSC: {target_domain} not verified — add it in Search Console" and continue with SE Ranking data only.
- Surface in `PAGE.md` "## Snapshot": `GSC last 28d: {clicks}/{impressions}/{ctr}% CTR / pos {position}` and `Google sees: {INDEXED|EXCLUDED} · canonical {userCanonical} → {googleCanonical} · last crawled {date}`.
- **Feed into the verdict heuristic:** `INDEXED` + impressions > 100 + position 4–10 → harden REFRESH (clear quick-win). `EXCLUDED` (any reason) → harden KILL or CONSOLIDATE. `userCanonical ≠ googleCanonical` → flag as critical issue regardless of verdict.
- See `skills/seo-google/references/cross-skill-integration.md` § "seo-page" for the full recipe.
5. **SERP context** `DATA_getSerpResults` and `DATA_getAiOverview`
- For each of the 3–5 primary keywords:
- Top 10 organic results (URL, title, snippet).
- SERP features present (PAA, image carousel, video, shopping, etc.).
- AIO presence and citations — is this URL cited in the AIO?
6. **HTML sense-check** `WebFetch` (always) + `mcp__firecrawl-mcp__firecrawl_scrape` (when available)
- **WebFetch first** (free, instant): extract ``, meta description, all ``, lang, word count, internal-link count, image count. WebFetch returns markdown so anything in `` beyond `` is lost — the next bullet recovers it.
- **Firecrawl second** (1 Firecrawl credit; pass `formats: ["rawHtml"]`) — recovers what WebFetch can't see. Pin the format to `rawHtml`; the default `html` is post-processed and silently strips canonical, hreflang, and `