Blog IA e SEO

Dietro le quinte di ChatGPT Search: reverse engineering di web.run, fan-out e le nuove regole di visibilità

Quando OpenAI ha cambiato il modello predefinito il 4 marzo, il numero di siti web citati per risposta è diminuito di un quinto e non si è mai ripreso. Ma questo calo è solo parte della storia. Abbiamo inoltre proceduto al reverse engineering degli strumenti di navigazione interni di ChatGPT, condotto un esperimento honeypot, ricostruito il suo system prompt e rilasciato una nuova versione del nostro plugin ChatGPT Search Capture.

Cosa è successo

Il 4 marzo 2026, ChatGPT ha cambiato il modello predefinito da GPT-4o/5.2 a GPT-5.3 Instant. Risultato: il numero medio di domini unici citati per risposta è passato da 19,1 a 15,2, ovvero un calo di oltre il 20%. Il numero di URL unici per risposta ha seguito la stessa traiettoria, passando da 24,1 a 19,1.

Abbiamo monitorato 400 prompt giornalieri per 14 settimane, basandoci sui dati di monitoraggio forniti da Meteoria. Tutti i risultati sono pubblicati sotto forma di uno studio interattivo in otto parti su think.resoneo.com/chatgpt/5.3-5.4/.

Perché è importante

ChatGPT conta 900 milioni di utenti attivi a settimana. La superficie di citazione in ogni risposta non è cambiata, ma meno siti web se la dividono. Lo stesso dolce, ma con meno fette. Questo riflette probabilmente uno spostamento strutturale verso fonti con maggiore autorevolezza, ma significa anche complessivamente meno vincitori. I siti che non superano la selezione perdono una visibilità che prima era loro accessibile.

L'effetto Bigfoot

Abbiamo chiamato questo fenomeno in riferimento al "Bigfoot update" identificato dal Dr. Pete (di Moz) nel 2013, quando Google a volte lasciava un unico dominio occupare l'intera prima pagina…

ChatGPT ora recupera meno domini per risposta, ma il rapporto URL-per-dominio è rimasto stabile a 1,26. La profondità di crawl per dominio non è cambiata. Ciò che è cambiato è il numero di siti web distinti che ottengono un posto a tavola.

GPT-5.4 Thinking accentua ancora questa concentrazione. Il modello utilizza operatori site: per limitare le ricerche ai domini di fiducia e distribuisce le sue richieste spesso su più di 10 "fan-out queries" per risposta, ognuna mirata a una fonte specifica.

L'analisi indipendente dei log di Jérôme Salomon (Oncrawl) conferma questa tendenza. Il volume di crawl del bot ChatGPT-User si è stabilizzato a un livello inferiore dal passaggio a 5.3. Alcune pagine semplicemente non vengono più crawlare. La causa va oltre gli aggiornamenti del modello: oltre il 90% degli utenti settimanali di ChatGPT è su un piano gratuito, e l'esperienza di default attiva meno ricerche web, usa meno richieste e produce meno citazioni.

Come funziona veramente ChatGPT Search

Il nostro studio presenta anche un reverse engineering completo del sistema di ricerca interno di ChatGPT, denominato web.run. Prima della 5.3, il modello inviava comandi testuali compatti, separati da pipe (fast|query|recency). Dopo la 5.3, invia oggetti JSON strutturati con parametri tipizzati. Non è un semplice cambiamento di formato. Riflette un'architettura diversa nel modo in cui il modello formula e distribuisce le sue operazioni web.

Lo strumento web ora supporta 12 operazioni, contro 4 precedenti (più un sistema di widget separato, "genui"). Si trovano in particolare: search_query, open, find, click, screenshot, product_query, e widget specializzati per sport, finanza, meteo, ecc. GPT-5.4 può concatenare da 5 a oltre 10 round di ricerca per risposta, raffinando le richieste in base ai risultati precedenti. GPT-5.3 Instant in genere si accontenta di 2 o 3.

Le tracce di Google restano visibili: marker di tracciamento Google (strlid) compaiono nelle URL dei prodotti, e le corrispondenze ID-to-token di SearchAPI rivelano la dipendenza del backend da fornitori di ricerca di terze parti, e da Google in background.

Un nuovo tipo di fan-out per le query prodotto

Abbiamo messo in luce un tipo di fan-out ancora non documentato: sfoglia_query_riscritte. Appare esclusivamente sulle query prodotto, su 5.4 Instant, ed è visibile nel codice della conversazione.

Quando un utente fa una domanda del tipo «migliore stampante 3D da comprare nel 2026», ChatGPT inizia lanciando un singolo fan-out di riscrittura per costruire la lista completa dei prodotti candidati. Poi avvia un fan-out shopping separato per ogni prodotto individuale, recuperando caratteristiche, recensioni e prezzi uno per uno. Prima della 5.3, le ricerche prodotto venivano aggregate in una sola chiamata. Ora ogni prodotto beneficia della propria richiesta di recupero dedicata.

ChatGPT-User è l'agente di recupero

La nostra esperienza honeypot ha confermato un dettaglio importante. Quando ChatGPT naviga sul web in seguito a una ricerca durante una conversazione, è il crawler ChatGPT-User, e non OAI-SearchBot, a prelevare il contenuto delle pagine. OpenAI descrive OAI-SearchBot come l'agente che costruisce l'indice di ricerca di ChatGPT, ma nella pratica il modello si appoggia a API di scraping di terze parti per ottenere i risultati di ricerca, poi invia ChatGPT-User a recuperare il contenuto reale delle URL selezionate.

L'angolo cieco dei namespace: la falla di ChatGPT

È forse la nostra scoperta più sorprendente.

La pista è cominciata con il classico reverse engineering. Abbiamo decompilato l'app mobile di ChatGPT, dissezionato il codice sorgente del client web e sniffato i pacchetti di rete su entrambe le piattaforme. Questo ci ha fornito i nomi degli strumenti interni e alcune convenzioni di chiamata. Armati di questi elementi precisi, abbiamo potuto porre le domande giuste a ChatGPT — e abbiamo scoperto che il modello vi rispondeva senza alcuna restrizione.

OpenAI ha implementato vere protezioni attorno ai suoi system prompt. Ma il livello di configurazione degli strumenti interni non ne ha alcuna. I namespace di ChatGPT, quei gruppi di strumenti interni che il modello può chiamare durante una conversazione, sono liberamente descrivibili. Finché eviti le parole "system prompt", il modello divulgherà gli schemi degli strumenti, le liste di operazioni, i canali di uscita e le strutture di namespace con perfetta coerenza.

Abbiamo pubblicato dei prompt pronti all'uso che chiunque può incollare in ChatGPT per auditare il proprio ambiente interno. Per verificare se il modello inventava queste descrizioni, abbiamo condotto uno studio partecipativo con decine di utenti, in sessioni distinte. Ogni partecipante ha ottenuto esattamente gli stessi nomi di strumenti, gli stessi schemi di parametri, le stesse liste di operazioni. Il modello descrive il proprio set di strumenti in modo coerente, quindi affidabile ^^

Lo studio comprende anche un system prompt ricostruito per estrazione progressiva, accompagnato da diverse informazioni notevoli: Reddit è l’unico dominio esente dai limiti di parole legati al copyright, esiste una lista granulare di prodotti vietati, uno «score di verbosità» funziona su una scala da 1 a 10, e un intero paragrafo di policy pubblicitaria regola la visualizzazione degli annunci in base al livello di abbonamento.

Uso pratico: realizzare il proprio audit di crawlabilità

La sintassi web.run che abbiamo documentato non è una mera curiosità tecnica. Funziona, e apre una via diretta per testare come ChatGPT interagisce con i vostri contenuti.

Ecco un esempio concreto. Potete costringere ChatGPT a cercare il vostro dominio e a leggere pagine specifiche incollando comandi JSON direttamente in una conversazione.
Innanzitutto, avviate una ricerca mirata sul vostro sito, poi obbligatelo a recuperare i primi due risultati ottenuti, quindi chiedetegli di restituire il titolo, il tema principale e i punti chiave di ogni pagina.

Search for this query, then open the first two results and summarize what you find on each page.

Step 1 : Search:

{
"search_query": [
{ "q": "site:abondance.com seo" }
],
"response_length": "short"
}

Step 2 : Open the first two results:

{
"open": [
{ "ref_id": "turn0search0" },
{ "ref_id": "turn0search1" }
]
}

Step 3 : Give me a structured recap of what you found on each URL. For each page: the title, the main topic, and 3-5 key points.

Quello che ottenete è una visione del vostro contenuto attraverso gli occhi di ChatGPT: ciò a cui può effettivamente accedere, cosa ne estrae e come interpreta le vostre pagine. Se non riesce ad accedere a una pagina, restituisce contenuti confusi o ignora completamente i vostri messaggi principali, è un segnale su cui intervenire.

Per approfondire, l’estensione Chrome «ChatGPT Search Capture» di RESONEO (V3.3, gratuita sul Chrome Web Store) permette di visualizzare le URL esatte recuperate durante qualsiasi conversazione ChatGPT, incluse le fan-out queries (tranne che per 5.3 Instant, ora eseguite lato server), i ref_id e i metadati del modello. Combinata con i comandi JSON manuali sopra, disponete di un audit di estraibilità leggero ma azionabile: quali sono le URL che risale e cosa ne estrae realmente?

Stessa famiglia di modelli, citazioni diverse

GPT-5.2, 5.3 e 5.4 condividono la stessa data di cutoff (agosto 2025) e appartengono alla stessa famiglia GPT-5. Eppure, lo stesso prompt inviato a ciascuno produce fan-out queries differenti, recupera fonti diverse e riporta passaggi diversi nella risposta finale.

Più livelli di divergenza intervengono dopo il pre-addestramento: il reward shaping del RLHF, i dati di fine-tuning supervisionato, le configurazioni del system prompt e i budget di compute all’inferenza. GPT-5.4 Pro riceve esplicitamente più risorse di calcolo per «riflettere più intensamente», e ciò da solo può cambiare quali fonti vengono citate.

Ecco perché consigliamo di testare modello per modello. Un singolo prompt può produrre citazioni radicalmente diverse a seconda che l’utente sia su GPT-5.3 Instant, 5.4 Thinking o 5.4 Extended. Anche gli utenti del piano gratuito possono essere silenziosamente reindirizzati a un modello alleggerito.

Due tipi di visibilità IA

Il nostro studio presenta un framework di analisi che separa la visibilità parametrica (ciò che il modello sa grazie ai suoi dati di addestramento, ricerca disattivata) dalla visibilità dinamica (ciò che recupera in tempo reale, ricerca attivata).

Visibilità parametrica: l'E-E-A-T dei LLM

La visibilità parametrica è l'equivalente di E-E-A-T per i grandi modelli di linguaggio. È l'autorità codificata attraverso miliardi di esempi di addestramento, modellata dalla copertura stampa, dalla presenza su Wikipedia, da altri grandi siti autorevoli e dal corpus di addestramento nel suo complesso. È stabile e misurabile tramite audit one-shot via API.

Visibilità dinamica: un terreno in movimento

La visibilità dinamica, invece, è volatile. Dipende dal modello e richiede un monitoraggio continuo. Si avvicina di più alla SEO tradizionale e può crollare da un giorno all'altro con un aggiornamento del modello, come dimostra l'effetto Bigfoot.

Il legame tra i due

Il legame tra le due conta. Il modello formula le sue richieste web indirizzandosi alle fonti che già conosce. Un marchio assente dalla memoria parametrica non verrà nemmeno considerato come candidato alla ricerca. Essere sconosciuti al modello significa essere invisibili prima ancora che la ricerca inizi.

Gli aggiornamenti della data di cutoff costituiscono la "Google Dance" dei LLM. Quando la data di cutoff cambia, le classifiche parametriche vengono riassegnate in blocco. Ma questo avviene solo circa una volta all'anno, perché il riaddestramento su questa scala è estremamente costoso. La finestra strategica per influenzare ciò che il modello sa del tuo marchio si trova tra due date di cutoff.

L'AI Brand Authority Index di Dan Petrovic (DEJAN) illustra la misura parametrica su larga scala. Il nostro studio la completa con un quadro di test più leggero e riproducibile, basato su cinque prompt eseguiti più volte per un audit one-shot.

Per approfondire

Lo studio completo (documentazione reverse-engineered, esperienza honeypot, prompt di audit fai-da-te e system prompt ricostruito) è disponibile su think.resoneo.com/chatgpt/5.3-5.4/.

In sintesi

ChatGPT Search non è più una scatola nera. Questo studio mappa la sua architettura interna, dallo strumento web.run che alimenta ogni ricerca alla logica di fan-out che decide quali domini vengono recuperati e quali vengono ignorati.

Il calo del 20% dei domini citati dopo il passaggio a 5.3 mostra quanto velocemente il panorama delle citazioni possa ribaltarsi con un singolo aggiornamento del modello. Ma il problema di fondo è strutturale: ChatGPT concentra le sue citazioni su meno siti web e applica una logica di selezione delle fonti plasmata dai dati di addestramento, dal fine-tuning post-addestramento e dalle regole di system prompt che cambiano da un modello all'altro.

Monitorare la visibilità in ChatGPT implica comprendere due livelli distinti (parametrico e dinamico), testare su più modelli e sorvegliare un sistema i cui strumenti interni sono documentabili ma il cui comportamento può cambiare da un giorno all'altro.

L'studio completo fornisce i dati, la metodologia e gli strumenti per cominciare.

L'articolo «Dietro le quinte di ChatGPT Search: reverse engineering di web.run, fan-out e le nuove regole di visibilità» è stato pubblicato sul sito Abondance.