El problema
Monitorear manualmente los rankings de búsqueda de los competidores es tedioso e inconsistente. Los equipos de SEO revisan un puñado de palabras clave semanalmente, pierden cambios de posición entre revisiones y no tienen una forma sistemática de rastrear cuándo los competidores ganan o pierden posiciones en palabras clave de alto valor. Las herramientas empresariales de seguimiento SERP resuelven esto pero cuestan $100-500/mes y son excesivas para un monitoreo enfocado de competidores.
La solucion de Scavio
Construye un pipeline automatizado que consulte el endpoint de Google de Scavio diariamente para tus palabras clave rastreadas, analice los resultados orgánicos en busca de dominios competidores y almacene los rankings en una base de datos u hoja de cálculo. Configura alertas para cambios significativos: un competidor entrando al top 5, tu dominio cayendo por debajo de la posición 10 o un nuevo dominio apareciendo en una palabra clave que dominas. El pipeline se ejecuta como un cron job o un flujo de n8n y cuesta una fracción de las herramientas empresariales porque solo pagas por consulta mediante el modelo de créditos de Scavio.
Antes
Antes del seguimiento automatizado, el equipo de SEO revisaba manualmente 30 palabras clave cada lunes. No detectaron una ofensiva de contenido de un competidor que conquistó 4 posiciones en el top 5 a mitad de semana, descubriéndolo el lunes siguiente cuando el tráfico orgánico ya había caído un 12%.
Después
Tras implementar el seguimiento automatizado con Scavio, los cambios de ranking activan alertas en Slack en menos de 24 horas. El equipo detectó la ofensiva de contenido de un competidor el mismo día que ocurrió y publicó un contraartículo antes de que los rankings del competidor se consolidaran.
Para quien es
Equipos de SEO y marketers que necesitan visibilidad diaria de los rankings de competidores sin pagar por plataformas empresariales de seguimiento SERP.
Beneficios clave
- Revisiones automatizadas diarias de rankings para todas las palabras clave rastreadas
- Alertas de dominios competidores ante cambios en las posiciones top N
- Precios basados en créditos en lugar de tarifas mensuales fijas empresariales
- Datos exportables para dashboards e informes personalizados
- Fácil de ampliar con seguimiento de citaciones en AI Overview
Ejemplo en Python
import requests, os, json
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}
KEYWORDS = ['best crm 2026', 'project management software', 'invoice tool small business']
COMPETITORS = ['competitor1.com', 'competitor2.com']
def track_rankings(keywords: list) -> list:
report = []
for kw in keywords:
resp = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
json={'platform': 'google', 'query': kw}, timeout=10)
for i, r in enumerate(resp.json().get('organic', [])[:20], 1):
domain = r.get('link', '').split('/')[2] if '/' in r.get('link', '') else ''
if any(c in domain for c in COMPETITORS):
report.append({'keyword': kw, 'position': i, 'domain': domain, 'title': r['title']})
return report
for r in track_rankings(KEYWORDS):
print(f"[{r['position']}] {r['domain']} - {r['keyword']}")Ejemplo en JavaScript
const KEYWORDS = ['best crm 2026', 'project management software'];
const COMPETITORS = ['competitor1.com', 'competitor2.com'];
async function trackRankings(keywords) {
const report = [];
for (const kw of keywords) {
const resp = await fetch('https://api.scavio.dev/api/v1/search', {
method: 'POST',
headers: { 'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({ platform: 'google', query: kw })
});
const data = await resp.json();
(data.organic || []).forEach((r, i) => {
const domain = new URL(r.link).hostname;
if (COMPETITORS.some(c => domain.includes(c))) report.push({ keyword: kw, position: i + 1, domain, title: r.title });
});
}
return report;
}Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA