← Torna al blog
AEOScanaris Team · 5 min di lettura · October 04, 2026

Dati strutturati (schema.org): perché l'IA cita alcuni siti e altri no

Cosa sono i dati strutturati

Una macchina che legge il tuo sito vede testo, ma non sempre capisce cos'è ogni cosa. I dati strutturati le mettono delle etichette: questo è un prodotto, questo è il suo prezzo, questa è una domanda frequente, questo è l'autore. Il vocabolario standard si chiama schema.org e lo usano sia i motori di ricerca sia i modelli di IA. Questa guida spiega perché aiutano a farti citare, quali tipi mettere in ogni pagina con esempi completi, gli errori che tolgono credibilità e come verificare che siano corretti.

JSON-LD, il modo facile

Ci sono diversi modi di scrivere schema, ma quello consigliato è JSON-LD: un blocco script in formato JSON che metti nell'head o nel body della pagina. Non cambia nulla di ciò che vede l'utente e resta separato dall'HTML visibile, quindi è facile da generare e rivedere. Se usi Cursor, Bolt o Lovable, chiedere alla tua IA di generare il JSON-LD di una pagina specifica è questione di un prompt. L'alternativa, i microdati incorporati nei tag HTML, funziona allo stesso modo ma è più difficile da mantenere.

Perché aiuta a farti citare

Quando un modello deve riassumere la tua pagina, lo schema riduce l'ambiguità. Invece di dedurre che un numero è un prezzo, lo sa. Invece di indovinare chi ha scritto l'articolo, lo legge. Invece di intuire che "Scanaris" è un'azienda e non una persona, ce l'ha dichiarato. Meno indovinare significa più fiducia, e più fiducia significa più probabilità di essere usato come fonte. Inoltre lo schema collega il tuo sito al resto di internet: il campo sameAs rimanda ai tuoi profili e il modello capisce che tutto parla della stessa entità.

Quali tipi aggiungere e con quali proprietà

  • Organization in home: nome, logo, URL, descrizione in una frase e sameAs con i tuoi profili pubblici.
  • SoftwareApplication (o Product) nella pagina prodotto o prezzi: nome, descrizione, categoria, sistema operativo o piattaforma, e offers con prezzo e valuta.
  • FAQPage dove ci sono domande e risposte reali e visibili.
  • Article o BlogPosting nei post, con autore, data di pubblicazione e di modifica.
  • BreadcrumbList per dare contesto su dove si colloca ogni pagina.
  • WebSite in home, con il nome del sito, che aiuta a farlo comparire correttamente nei risultati.

Non aggiungerli tutti tanto per fare. Marca solo ciò che è davvero nella pagina.

Un esempio completo per un'app

Così appare il blocco della home di un prodotto software, con l'organizzazione e l'applicazione in uno stesso grafo:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://tuodominio.com/#org",
      "name": "Il Tuo Prodotto",
      "url": "https://tuodominio.com",
      "logo": "https://tuodominio.com/logo.png",
      "description": "Il Tuo Prodotto è un [cos'è] per [chi] che [cosa ottiene].",
      "sameAs": [
        "https://github.com/iltuoprodotto",
        "https://www.linkedin.com/company/iltuoprodotto",
        "https://x.com/iltuoprodotto"
      ]
    },
    {
      "@type": "SoftwareApplication",
      "name": "Il Tuo Prodotto",
      "applicationCategory": "DeveloperApplication",
      "operatingSystem": "Web",
      "url": "https://tuodominio.com",
      "description": "Il Tuo Prodotto è un [cos'è] per [chi] che [cosa ottiene].",
      "publisher": { "@id": "https://tuodominio.com/#org" },
      "offers": {
        "@type": "Offer",
        "price": "24",
        "priceCurrency": "EUR",
        "url": "https://tuodominio.com/pricing"
      }
    }
  ]
}
</script>

Nota che la descrizione è la stessa frase nei due blocchi, e dovrebbe essere la stessa che compare in home, nella meta description e nel llms.txt. Quella ripetizione esatta è ciò che i modelli finiscono per citare.

E uno per le domande frequenti

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Il Tuo Prodotto modifica il mio sito?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "No. Esegue controlli in sola lettura su informazioni pubbliche."
      }
    }
  ]
}
</script>

Ogni domanda del JSON deve esistere, con lo stesso testo, nella parte visibile della pagina.

Gli errori più comuni

  • Marcare ciò che non si vede. Domande frequenti che non compaiono nella pagina, recensioni inventate, un prezzo nel JSON diverso da quello della pagina. Toglie credibilità e può portarti un'azione manuale di Google.
  • Dati scaduti. Cambi il prezzo nella pagina e dimentichi lo schema. Genera il JSON-LD dalla stessa fonte di dati della pagina, non a mano.
  • Nome incoerente. "Il Tuo Prodotto" in home, "IlTuoProdotto" nello schema, "il-tuo-prodotto" nei profili. Scegli una grafia e usala ovunque.
  • Tipo sbagliato. Un Product fisico per un servizio web, o un Article in una pagina prezzi.
  • JSON non valido. Una virgola di troppo e l'intero blocco viene ignorato in silenzio.

Dove metterlo a seconda del tuo framework

In Next.js, un elemento script con type="application/ld+json" nel layout o nella pagina, con il JSON serializzato da un oggetto. In Nuxt, con useHead e uno script dello stesso tipo. In una SPA Vite, nell'index.html se il blocco è statico, o iniettato nel prerender se varia per pagina. L'importante è che arrivi nell'HTML iniziale: un JSON-LD che esiste solo dopo aver eseguito JavaScript non lo leggono i bot che non renderizzano.

Come verificare che sia corretto

Richiedi la tua pagina con curl e cerca il blocco:

curl -s https://tuodominio.com/ | grep -o 'application/ld+json' | wc -l

Se esce zero, non arriva nell'HTML. Poi valida il contenuto con lo strumento per i risultati avanzati di Google o con il validatore di schema.org, che ti segnalano errori di sintassi e proprietà sconosciute. E leggilo tu: dice la stessa cosa della pagina? Se no, uno dei due mente.

Scanaris controlla il tuo schema

Il pilastro di visibilità per l'IA di Scanaris rileva se hai dati strutturati, di che tipo, se arrivano nell'HTML senza JavaScript e se hanno senso per la pagina, e ti dà un fix prompt con il JSON-LD suggerito da incollare nella tua IA. È un controllo in sola lettura sull'HTML pubblico del tuo sito. Fa parte della guida all'AEO e della revisione di SEO e AEO nella stessa pagina.

Domande frequenti

Google penalizza lo schema sbagliato?

Lo schema con errori di sintassi viene semplicemente ignorato. Lo schema ingannevole (marcare recensioni o domande che non esistono) può ricevere un'azione manuale che ti toglie i risultati avanzati. Marca solo il visibile.

JSON-LD o microdati?

JSON-LD. È ciò che consigliano Google e schema.org, si genera dai dati senza toccare l'HTML visibile ed è molto più facile da mantenere.

Serve in tutte le pagine?

In quelle pubbliche che vuoi far capire: home, prodotto, prezzi, blog, domande frequenti. La dashboard privata non ne ha bisogno perché nessuno dall'esterno la legge.

Come se la cava il tuo sito?

Lascia che Scanaris lo analizzi e verifica in 30 secondi, gratis.

Scansiona il mio sito

Controlli correlati