API SERP e rank tracking: perché le posizioni dei clienti non tornano
Le API SERP restituiscono pagine diverse da quelle che vedi tu, e anche da una richiesta all'altra. Vanno bene per capire l'intento, non per tracciare le posizioni: per quelle serve Search Console.
Davide Ruggeri
Da dove sono partito
In kwrm, il tool che uso per mappare le pagine dei miei clienti, c’è una sezione che tiene traccia delle query a cui ho già assegnato una pagina. Per sapere dove si trovava ogni pagina in SERP interrogavo SerpApi.
Le posizioni non tornavano. Cercando le stesse query dal mio browser trovavo i siti dei clienti in punti diversi, a volte molto diversi, da quelli che kwrm registrava. E un report di posizionamento che non coincide con quello che il cliente vede dal suo telefono è peggio di nessun report.
Ho ricontrollato i parametri, poi ho costruito un benchmark per capire chi avesse ragione: 30 keyword cercate da me e, subito dopo, con SerpApi e DataForSEO. I numeri li ho raccolti in un articolo a parte. Qui mi interessa quello che ne ho capito: la risposta è stata meno netta di quanto mi aspettassi.
Non esiste una SERP vera
Il primo errore era il mio: davo per scontato che esistesse una pagina di risultati giusta e che l’API dovesse riprodurla. Non è così.
Google personalizza la pagina in base a cronologia, account e posizione. Anche in incognito ti localizza dall’indirizzo IP. Nel mio primo test, cercando “pizzeria napoli”, il primo risultato era una pizzeria di Bergamo con “Napoli” nel nome, a pochi chilometri da casa mia. Nessuna API poteva vederla, perché simulava una ricerca dall’Italia in generale.
Lo stesso problema lo descrive un SEO in una discussione su Local Search Forum: gli strumenti automatici mostrano spesso risultati diversi da quelli che vedono le persone. Nelle risposte qualcuno fa notare che ogni persona e ogni strumento ottiene una pagina diversa. Anche DataForSEO, nella sua pagina sulle differenze tra API e SERP, indica personalizzazione, località e aggiornamenti dell’algoritmo come cause.
La sorpresa più grande però è arrivata ripetendo le ricerche. Con le stesse impostazioni, la stessa API restituiva ogni volta una pagina diversa: circa metà dei risultati cambiava da una richiesta all’altra, e spesso cambiava anche il primo.
Quindi la SERP cambia anche senza cambiare nulla. Qualsiasi confronto basato su una singola ricerca, mia o dell’API, contiene una buona dose di caso.
Perché il rank tracking è il caso peggiore
Tracciare una posizione vuol dire chiedere all’API proprio quello che sa fare peggio: un numero preciso, ripetuto nel tempo. I problemi che ho incontrato sono tre.
Il primo è la posizione assoluta. Anche l’API più fedele nel mio test sbagliava spesso il primo risultato, e solo in una minoranza di casi un risultato stava nella stessa identica posizione in cui lo vedevo io. Se scrivi a un cliente “sei terzo su questa keyword” partendo da un’API, lui cerca dal telefono, si trova quinto e perdi credibilità.
Il secondo è il monitoraggio. In kwrm facevo una richiesta per keyword a ogni controllo. Con una SERP che cambia per metà da una richiesta all’altra, quel dato misurava soprattutto il rumore: un salto di tre posizioni poteva essere un cambiamento reale o una richiesta finita su un’altra versione della pagina.
Il terzo è la località lasciata vaga. In kwrm, su una query nazionale con la località impostata solo su Italia, SerpApi mi restituiva pagine di istituzioni svizzere. Non so dire se con coordinate precise sarebbe andata meglio, ma indicare solo il paese non basta nemmeno sulle query nazionali. Su quelle locali il problema è ancora più evidente, come nel caso della pizzeria. Nel benchmark ho passato le coordinate del mio comune, ma anche così resta una differenza, perché Google continua a stimare la posizione dall’IP.
Dove invece funzionano: capire l’intento
Se smetti di guardare i singoli URL e guardi che tipo di pagine ci sono, il quadro cambia. Nelle mie ricerche gli URL cambiavano spesso, la natura della SERP quasi mai.
Su “miglior robot aspirapolvere” sia io sia le API vedevamo guide, recensioni e prodotti in vendita. Su “come fare il pane in casa” ricette e video. Su “pizzeria napoli” classifiche e risultati locali. Le posizioni erano diverse, ma chiunque avrebbe tratto la stessa conclusione sull’intento.
Anche gli elementi speciali reggono meglio degli organici. Local pack, video, prodotti e AI Overview comparivano nella maggior parte dei casi sia nella mia pagina sia in quelle delle API, spesso con le stesse fonti citate.
Per questo le uso per rispondere a domande come queste:
- questa query porta a pagine di servizio, a e-commerce o a guide?
- c’è un local pack, uno shopping, un’AI Overview?
- chi sono, a grandi linee, gli attori che occupano la prima pagina?
È quello che serve a un altro tool che sto costruendo, che decide se una keyword per Google Ads corrisponde all’intento di una landing. Un URL in più o in meno non cambia il verdetto. Se una SERP sembra ambigua, una seconda richiesta costa pochi centesimi e toglie il dubbio.
Come le uso adesso
Dopo il benchmark ho separato le domande in due gruppi: quelle a cui un’API SERP risponde bene e quelle per cui serve un’altra fonte.
- Per l’intento e il tipo di risultati uso le API SERP, sempre con la località indicata in modo esplicito. Giudico che tipo di pagine ci sono, non quali siti.
- Per la posizione dei siti dei clienti, quella che finiva nel monitoraggio di kwrm, la fonte giusta è Search Console: la posizione media arriva dalle impressioni reali di chi ha cercato, non da una simulazione.
Se vuoi capire come impostare la ricerca di keyword o le campagne per il tuo sito, raccontaci il tuo progetto.