GuideDi 6 min di lettura

Sito in JavaScript: ChatGPT vede i tuoi contenuti? Come verificarlo

ChatGPT, Claude e Perplexity non eseguono JavaScript. Scopri come verificare in 5 controlli cosa vedono del tuo sito e cosa sistemare per primo.

Copertina dell'articolo: il codice di una pagina web letto da un crawler AI, con alcune righe evidenziate

In breve

Probabilmente no, se testi, prezzi o recensioni vengono caricati con JavaScript: i crawler di ChatGPT, Claude e Perplexity leggono solo l'HTML che arriva dal server. Google invece esegue JavaScript, per questo un sito può comparire in AI Mode e non in ChatGPT. La soluzione è avere i contenuti essenziali già nell'HTML iniziale.

  • I crawler di OpenAI, Anthropic e Perplexity scaricano l'HTML ma non eseguono JavaScript.
  • Google AI Overviews e AI Mode usano l'indice di Google, che invece elabora JavaScript.
  • Il codice sorgente della pagina (Ctrl+U) è il modo più rapido per vedere cosa legge un crawler AI.
  • Prezzi, recensioni, FAQ e schede prodotto caricati via JavaScript sono i contenuti più a rischio.
  • Non serve rifare il sito: basta servire dal server l'HTML delle pagine che contano.

Scritto dall'agente AI di Geosnap, rivisto e approvato da Rinald Sefa.

Apri una pagina del tuo sito, poi apri il codice sorgente con Ctrl+U (Cmd+Opt+U su Mac). Se il testo che leggi nella pagina non compare nel sorgente, quei contenuti vengono caricati con JavaScript dopo l'apertura. Per Google spesso non è un problema. Per ChatGPT, Claude e Perplexity sì: le prove pubblicate finora dicono che i loro crawler leggono l'HTML così come arriva dal server e non eseguono il codice. In questa guida vedi come verificarlo in pochi minuti e cosa sistemare per primo.

Perché i crawler AI non vedono i contenuti caricati con JavaScript?

I crawler AI scaricano la pagina ma non la "eseguono" come farebbe un browser: leggono l'HTML iniziale e si fermano lì. Se prezzi, descrizioni o recensioni arrivano solo dopo che uno script ha chiamato un'API, per loro quella parte della pagina è vuota.

Il dato più citato viene da un'analisi di Vercel e MERJ sul traffico reale dei crawler nella rete di Vercel. Nessuno dei principali crawler AI misurati esegue JavaScript: GPTBot, OAI-SearchBot e ChatGPT-User di OpenAI, ClaudeBot di Anthropic, PerplexityBot e altri. Alcuni scaricano i file JavaScript senza eseguirli: l'11,5% delle richieste di ChatGPT e il 23,8% di quelle di Claude riguardavano file .js, mai eseguiti.

Lo stesso studio ha misurato un'altra cosa utile: il 34,8% delle richieste di ChatGPT e il 34,2% di quelle di Claude finivano su pagine 404, contro l'8,2% di Googlebot. Molti errori riguardavano risorse statiche vecchie. Tradotto: i crawler AI sono meno precisi di Google e perdono facilmente quello che non trovano subito.

L'analisi di Vercel è di dicembre 2024, ma i test più recenti la confermano. A gennaio 2026 Resoneo ha costruito una pagina di prova con 15 modi diversi di inserire un testo, dall'HTML statico agli script con ritardo, e ha chiesto a ogni assistente di visitarla. ChatGPT e Claude hanno letto l'HTML statico e il contenuto nel tag noscript, ma nulla di quanto inserito via JavaScript.

Google sì, ChatGPT no: chi legge cosa

La differenza principale è tra Google e tutti gli altri. Google esegue JavaScript da anni: a marzo 2026 ha rimosso dalla sua documentazione una sezione sull'accessibilità dei siti JavaScript perché la considerava superata. Come nota Search Engine Journal, però, questo vale per Google: altri motori e crawler possono non elaborare le pagine allo stesso modo.

Motore AIEsegue JavaScript?Da dove prende il contenuto
Google AI Overviews e AI ModeSì, tramite GoogleDall'indice di Google Search, costruito da Googlebot che esegue JavaScript
GeminiDipendeUsa l'infrastruttura di Googlebot, che esegue JavaScript; nel test di Resoneo la visita "dal vivo" su richiesta dell'utente non lo eseguiva
ChatGPTNoHTML iniziale letto da OAI-SearchBot, GPTBot e ChatGPT-User
ClaudeNoHTML iniziale letto da ClaudeBot e dagli altri agenti di Anthropic
PerplexityNoHTML iniziale letto da PerplexityBot
Microsoft CopilotIn parteNel test di Resoneo eseguiva JavaScript, ma con un tempo di attesa molto breve

Questo spiega un caso frequente: un sito che compare in Google AI Mode e quasi mai in ChatGPT. Se i contenuti chiave arrivano via JavaScript, Google li vede e ChatGPT no. Nel test di Resoneo, inoltre, nessun assistente ha letto contenuti comparsi dopo circa 2 secondi.

Come capire se l'AI vede i tuoi contenuti: 5 controlli

Bastano pochi controlli per sapere se hai un problema. Falli sulle pagine che contano di più: home, pagine dei servizi, schede prodotto, prezzi.

  1. Confronta sorgente e pagina. Apri il codice sorgente (non "Ispeziona", che mostra la pagina già elaborata) e cerca con Ctrl+F una frase importante: il nome di un servizio, un prezzo, una recensione. Se non c'è, un crawler AI non la vede.
  2. Disattiva JavaScript nel browser. Nelle impostazioni del sito in Chrome puoi bloccare JavaScript e ricaricare la pagina. Quello che resta è vicino a ciò che legge ChatGPT.
  3. Scarica la pagina come un crawler. Da terminale, curl -A "GPTBot" https://example.com/servizi restituisce l'HTML grezzo. Se il risultato è quasi vuoto, con un solo contenitore e tanti script, il sito dipende da JavaScript.
  4. Fai una prova con l'assistente. Chiedi a ChatGPT di aprire una pagina e di riportare un dettaglio preciso, per esempio il prezzo di un servizio. Attenzione: a volte l'assistente ricostruisce il contenuto dall'indirizzo invece di leggerlo, come Resoneo ha osservato con Gemini. Scegli quindi un dettaglio che non si può indovinare.
  5. Guarda i log del server. Se GPTBot o ClaudeBot visitano le tue pagine ma ricevono molti errori 404 su file statici, il sito sta servendo risorse che i crawler non riescono a usare.

Lo strumento Controllo URL di Google Search Console mostra l'HTML elaborato, ma solo dal punto di vista di Google: se lì la pagina è completa, non significa che lo sia anche per ChatGPT.

Quali parti del sito sono più a rischio?

I contenuti più esposti sono quelli che servono proprio a rispondere alle domande dei clienti. Ecco dove guardare per primo.

ElementoProblema tipicoCosa fare
Prezzi e listiniCaricati da un'API dopo l'apertura della paginaInserirli nell'HTML iniziale
RecensioniMostrate da un widget esternoRiportare almeno una sintesi nel testo della pagina
Domande frequentiRisposte caricate solo al clic sulla domandaTenere il testo nell'HTML e nasconderlo solo con il CSS
Schede prodotto di un e-commerceDescrizioni e caratteristiche generate lato clientRendering lato server o pagine statiche
Menu e link interniNavigazione con script invece di link veriUsare link <a href> che i crawler possono seguire
Titolo e descrizioneImpostati da JavaScriptScriverli direttamente nel codice della pagina

Pensa a un'agenzia di viaggi di Torino con le offerte caricate da un motore di prenotazione. Chi chiede a ChatGPT "pacchetti per Lisbona a novembre da Torino" non vedrà mai quelle offerte citate: per il crawler, la pagina contiene solo il titolo e il menu.

Come rimediare senza rifare il sito

Non serve eliminare JavaScript: serve che i contenuti essenziali siano già nell'HTML che il server invia. Vercel lo riassume così: rendering lato server per testo principale, metadati e navigazione; JavaScript lato client va bene per le funzioni accessorie come contatori, chat dal vivo o feed social.

  • Rendering lato server o generazione statica. I framework JavaScript più diffusi permettono di generare l'HTML sul server o in fase di pubblicazione. Spesso basta cambiare la modalità di rendering delle pagine più importanti.
  • Pre-rendering. Se il sito è una single-page application difficile da modificare, un servizio di pre-rendering può servire ai crawler una versione HTML già pronta. Tienilo come soluzione ponte e verifica che il contenuto sia lo stesso che vedono le persone.
  • Un'alternativa nel tag noscript. Nel test di Resoneo ChatGPT e Claude leggevano il contenuto inserito in noscript. È un rimedio parziale, utile per testi brevi come una descrizione o un prezzo.
  • Niente contenuti importanti in Shadow DOM o iframe. Nel test quasi nessun assistente li leggeva.

Se il tuo sito è su WordPress, di solito parti avvantaggiato: le pagine vengono generate sul server. Controlla però i plugin e i page builder che caricano blocchi di contenuto via JavaScript, come recensioni, tabelle prezzi e cataloghi.

Il rendering è solo uno dei motivi per cui l'AI può non vedere un sito. Il secondo è il blocco dei crawler nel robots.txt o nel firewall, di cui parliamo nella guida ai crawler AI. Nell'analisi tecnica di Geosnap entrambi i controlli sono automatici: pagine bloccate, contenuti caricati solo via JavaScript ed errori 404 compaiono in un unico elenco. Dopo ogni correzione, ripeti i cinque controlli: è il modo più rapido per sapere se il problema è risolto.

Fonti

Domande frequenti

I crawler AI eseguono JavaScript?

Quelli di OpenAI, Anthropic e Perplexity no: secondo l'analisi di Vercel e MERJ e i test di Resoneo del 2026 leggono solo l'HTML inviato dal server. Google esegue JavaScript, e Microsoft Copilot lo fa in parte con tempi di attesa molto brevi.

Se Google indicizza bene il mio sito, anche ChatGPT vede i miei contenuti?

Non necessariamente. Google elabora JavaScript prima di indicizzare, quindi vede contenuti che i crawler di ChatGPT non vedono. Controlla il codice sorgente della pagina: se il testo non c'è, ChatGPT non lo legge.

Un sito WordPress ha questo problema?

Di solito meno, perché WordPress genera le pagine sul server. Il problema può comparire con plugin o page builder che caricano recensioni, cataloghi o tabelle prezzi via JavaScript: verifica quelle sezioni una per una.

Devo rifare il sito con il rendering lato server?

Non per forza. Spesso basta attivare il rendering lato server o la generazione statica solo per le pagine principali, oppure usare un servizio di pre-rendering come soluzione temporanea. L'obiettivo è che testo, prezzi e link siano nell'HTML iniziale.