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
sameAscon i tuoi profili pubblici. - SoftwareApplication (o Product) nella pagina prodotto o prezzi: nome, descrizione, categoria, sistema operativo o piattaforma, e
offerscon 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
Productfisico per un servizio web, o unArticlein 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.