Crea il tuo SEO Rank Tracker con un SERP API
I rank tracker pronti all'uso sono una scatola nera che noleggi per parola chiave. Collega un SERP API a un database da solo e possiedi la profondità geografica, la cattura dell'AI-Overview e gli avvisi — a una frazione del prezzo.
I rank tracker commerciali addebitano per parola chiave e ti consegnano una dashboard che non puoi interrogare. Costruisci il tuo su un SERP API e ribalta la situazione: possiedi gli snapshot SERP grezzi, scegli esattamente quali geos e dispositivi tracciare, cattura le parti della pagina dei risultati che ora decidono la visibilità — AI Overviews, People Also Ask, il local pack — e collega gli avvisi a ciò che già utilizzi. Questo è un tutorial completo: lo schema, l'esecuzione giornaliera, la cattura di AI-Overview e PAA, il diffing e gli avvisi, e le insidie del 2026 che rompono i tracker ingenui. Funziona sul QuantumProxies SERP API, quindi non c'è nessun pool di proxy da gestire.
L'insidia che ha rimodellato il tracciamento del posizionamento
Due cambiamenti fanno sembrare un tracker moderno diverso da uno del 2020. Primo, Google ha rimosso il parametro &num=100, quindi non puoi più ottenere 100 risultati in una singola richiesta — devi paginare circa dieci alla volta, il che cambia quanto in profondità puoi permetterti di tracciare e rende un API efficiente obbligatorio piuttosto che opzionale. Secondo, la pagina dei risultati non è più una lista pulita di dieci link blu: un AI Overview può sedersi sopra tutto e rispondere direttamente alla query, le caselle People Also Ask e gli snippet in primo piano assorbono i clic, e il local pack possiede l'intento commerciale. Tracciare un semplice numero di posizione ignorando questi elementi significa tracciare la cosa sbagliata. La nostra spiegazione su come funziona il scraping SERP nel 2026 copre in dettaglio le conseguenze del num=100.
Passo 1: uno schema costruito per il diffing
L'intero sistema è uno snapshot giornaliero che confronti con quello di ieri, quindi lo schema è orientato agli snapshot: una riga per parola chiave, geo, dispositivo e giorno, con i dati di posizionamento e le caratteristiche SERP memorizzate accanto. Mantieni l'AI Overview e PAA come colonne strutturate in modo da poterle interrogare direttamente.
CREATE TABLE serp_snapshot (
id bigserial PRIMARY KEY,
keyword text NOT NULL,
country text NOT NULL, -- gl: us, gb, de...
city text, -- optional city-level
device text NOT NULL, -- desktop | mobile
position int, -- your domain's best rank, null = not found
landing_url text,
aio_present boolean NOT NULL, -- AI Overview shown?
aio_cited boolean NOT NULL, -- did it cite your domain?
paa jsonb, -- People Also Ask questions
top3 jsonb, -- who owns positions 1-3
captured_at date NOT NULL,
UNIQUE (keyword, country, city, device, captured_at)
);
Passo 2: l'esecuzione geografica giornaliera
Il ciclo principale itera le tue parole chiave su ciascun geo e dispositivo target, chiama il SERP API una volta per combinazione, e trova la migliore posizione del tuo dominio. Poiché l'API restituisce JSON analizzato e gestisce internamente rotazione, geo e blocco, questo rimane un ciclo semplice — nessun browser senza testa, nessun codice di rotazione proxy, nessuna gestione CAPTCHA. Imposta gl per il paese e una posizione per il livello cittadino, e i risultati tornano già localizzati.
import requests, datetime
QP = "https://api.quantumproxies.io/serp"
HEAD = {"Authorization": f"Bearer {QP_KEY}"}
def run_keyword(keyword, country, device="desktop", city=None):
params = {"engine": "google", "q": keyword,
"gl": country, "device": device, "num": 20}
if city:
params["location"] = city
data = requests.get(QP, headers=HEAD, params=params, timeout=45).json()
pos, url = None, None
for r in data.get("organic", []):
if "yourdomain.com" in r["link"]:
pos, url = r["position"], r["link"]
break
return data, pos, url
Ottieni una chiave SERP API per alimentare il tuo tracker

Passo 3: cattura AI Overviews e PAA
Qui è dove un tracker fatto in casa supera quelli commerciali economici, la maggior parte dei quali riporta ancora solo i dieci link. Un AI Overview può spingere il tuo risultato organico sotto la piega anche quando "classifichi" terzo, ed essere citato all'interno dell'AI Overview è ora un proprio metro di visibilità che vale la pena tracciare separatamente. Estrai sia la presenza dell'AIO che se fa riferimento al tuo dominio, e memorizza le domande PAA — raddoppiano come nuove idee di parole chiave e contenuti.
def extract_features(data, domain="yourdomain.com"):
aio = data.get("ai_overview") or {}
aio_present = bool(aio)
aio_cited = any(domain in s.get("link", "")
for s in aio.get("sources", []))
paa = [q["question"] for q in data.get("people_also_ask", [])]
top3 = [r["link"] for r in data.get("organic", [])[:3]]
return aio_present, aio_cited, paa, top3
Tracciare la citazione AIO nel tempo sta rapidamente diventando la metrica SEO principale — la nostra guida su catturare la presenza dell'AI Overview in modo programmatico approfondisce i segnali che vale la pena registrare. Esegui la stessa parola chiave da diversi paesi e vedrai le classifiche e le citazioni AIO divergere per geo, che è esattamente il motivo per cui le esecuzioni a livello cittadino sono importanti per chiunque abbia una presenza locale o internazionale, come trattato in monitorare i cambiamenti SERP a livello globale.

Passo 4: diff e avviso
Un tracker che nessuno legge è un file di log. Il valore sta nell'avviso — un messaggio nel momento in cui qualcosa si muove. Dopo ogni esecuzione, confronta il nuovo snapshot con il giorno precedente e attiva sugli spostamenti che contano: una caduta di tre o più posizioni, guadagnare o perdere una citazione di AI Overview, un concorrente che entra nei primi tre, o un URL che cade dalla prima pagina. Invia questi avvisi a Slack, email o un webhook in modo che il team SEO ne venga a conoscenza prima che lo faccia il rapporto sul traffico.
def diff_and_alert(kw, geo, today, yesterday):
alerts = []
if yesterday.position and today.position:
if today.position - yesterday.position >= 3:
alerts.append(f"{kw} [{geo}] dropped "
f"{yesterday.position} -> {today.position}")
if yesterday.aio_cited and not today.aio_cited:
alerts.append(f"{kw} [{geo}] lost its AI Overview citation")
if today.position and today.position > 10 and \
(yesterday.position or 0) <= 10:
alerts.append(f"{kw} [{geo}] fell off page one")
for a in alerts:
notify(a) # -> Slack / email / webhook
Pianificazione e onestà sul volume
Esegui il tutto su un cron giornaliero, idealmente a un'ora costante in modo che i diff giorno su giorno siano comparabili. Sii realistico sulla scala: parole chiave moltiplicate per paesi moltiplicate per città moltiplicate per dispositivi è il tuo vero conteggio delle query, e cresce rapidamente — cento parole chiave in cinque paesi su due dispositivi sono mille chiamate SERP al giorno. Il SERP API addebita per query, quindi traccia le combinazioni su cui agirai effettivamente piuttosto che tutto ciò che è immaginabile. Se stai costruendo questo in un prodotto piuttosto che in uno strumento interno, il nostro post su scegliere un SERP API per strumenti AI e SEO copre l'economia per query. Gli stessi endpoint sono disponibili tramite il nostro server MCP se preferisci eseguire le esecuzioni da un agente.
Domande frequenti
Come posso costruire un rank tracker con un SERP API?
Memorizza uno snapshot per parola chiave, geo, dispositivo e giorno; chiama il SERP API una volta per combinazione per ottenere risultati analizzati; estrai la posizione del tuo dominio più i dati di AI Overview e PAA; quindi differenzia ogni giorno rispetto al precedente e avvisa sui movimenti significativi. L'API gestisce proxy, geo e blocco, quindi il tuo codice rimane un ciclo programmato su un database.
Posso ancora ottenere 100 risultati per query?
Non in una sola richiesta — Google ha rimosso il parametro num=100, quindi i risultati arrivano circa dieci per pagina e un tracciamento più profondo significa paginazione. Per la maggior parte del tracciamento hai bisogno solo dei primi 20 circa, il che mantiene basso il volume delle query e i costi. Un SERP API che pagina per te nasconde questo dettaglio dietro una singola chiamata.
Come posso tracciare la presenza dell'AI Overview?
Cattura due cose per esecuzione: se un AI Overview è apparso per la query e se ha citato il tuo dominio tra le sue fonti. Memorizza entrambi come campi separati in modo da poter monitorare la citazione nel tempo — essere referenziato all'interno dell'AI Overview è ora un proprio metro di visibilità, distinto dalla tua posizione organica.
Con quale frequenza dovrebbe funzionare un rank tracker?
Giornalmente è lo standard per la SEO, a un orario costante in modo che i diff siano comparabili. Termini volatili o di alto valore possono giustificare esecuzioni due volte al giorno; termini stabili e di bassa priorità vanno bene settimanalmente. Adatta la frequenza a quanto velocemente la parola chiave si muove effettivamente e al tuo budget di query SERP-API, poiché parole chiave per geos per dispositivi è il tuo vero driver di costo.
Un rank tracker è uno schema, una chiamata SERP giornaliera e un diff — la leva è possedere tutti e tre. Cattura posizione, AI Overviews e PAA nei geos che ti interessano, avvisa su movimenti reali, e hai un tracker che costa una frazione di quelli commerciali e risponde a domande che non ti permettono mai di fare.