Controllo dati strutturati
Risposta breve
Controlla il JSON-LD di una pagina: che ogni blocco si legga, i tipi schema.org che dichiara, campi di base come @context e @type, e se ci sono Organization, WebSite e BreadcrumbList.
Cosa non fa: Controlla che il JSON-LD si legga, i suoi tipi e alcuni campi di base, non ogni proprietà obbligatoria di ogni risultato multimediale; non legge microdati, RDFa né markup aggiunto da script.
Cosa fa
Estrae ogni blocco JSON-LD della pagina e riporta in due parti. Validità del JSON-LD: se ogni blocco è JSON valido e quali tipi schema.org dichiara (Organization, Product, Article e così via). Entità e campi obbligatori: se ogni entità ha @context e @type, se una Organization ha un nome (name) e un WebSite un indirizzo (url), e quali entità principali (Organization, WebSite, BreadcrumbList, Article, Product, LocalBusiness) dichiara la pagina. Il punteggio è la media delle due parti.
Perché è importante
I dati strutturati descrivono una pagina in un formato che i motori di ricerca possono leggere, e Google li usa per i rich result come prezzi dei prodotti, stelle delle recensioni e breadcrumb. Un blocco JSON-LD che non viene interpretato correttamente viene ignorato del tutto, e un aggiornamento del CMS o di un plugin può rompere tutte le pagine che condividono un template. Controllare il markup dopo ogni rilascio permette di individuarlo per tempo.
Come funziona
-
Inserisci l'URL di una pagina o incolla il suo HTML
-
Estraiamo ogni blocco JSON-LD dall'HTML, comprese le entità dentro un @graph
-
Controlliamo che ogni blocco si legga e che ogni entità abbia @context, @type e i suoi campi di base
-
Ottieni i tipi trovati, gli eventuali errori e quali entità principali ci sono o mancano
Esempio di input e output
url: https://rankproof.eu/tools
Validità del JSON-LD 100/100
blocchi JSON-LD: 1 · tipi schema.org: 5
blocchi non validi: 0 OK
tipi trovati: Organization, SoftwareApplication,
WebSite, CollectionPage, ItemList
Entità e campi obbligatori 92/100
tipi di entità: 5 · errori: 0 · avvisi: 0
Organization, WebSite presenti
BreadcrumbList manca
Article, Product, LocalBusiness mancano
Punteggio: 96/100 — 2 parti su 2 in buono stato Come leggere il risultato
- Blocchi JSON-LD (1 nell'esempio)
- Quanti blocchi <script type="application/ld+json"> contiene l'HTML. Un blocco con un @graph vale quanto più blocchi separati; il numero ti dice soprattutto dove guardare quando qualcosa si rompe.
- Tipi trovati (5)
- I tipi schema.org dichiarati in cima a ogni blocco o nel suo @graph — nell'esempio Organization, SoftwareApplication, WebSite, CollectionPage e ItemList. I tipi annidati in una proprietà, come un indirizzo dentro una Organization, non sono elencati a parte.
- Blocchi non validi (0)
- Blocchi che non sono JSON valido. Una sola virgola di troppo o delle virgolette non escape fanno ignorare l'intero blocco ai motori di ricerca, quindi qualsiasi errore qui è la prima cosa da correggere.
- Entità e campi obbligatori (92/100)
- La seconda parte legge ogni entità, anche quelle dentro un @graph: ognuna richiede @context e @type, una Organization un nome (name) e un WebSite un url; errori e avvisi sono elencati uno per riga. Mostra anche quali entità principali dichiara la pagina. Nell'esempio Organization e WebSite ci sono; tra quelle mancanti solo BreadcrumbList abbassa la parte, perché Article, Product e LocalBusiness descrivono tipi di pagina che /tools non è.
- Punteggio (96/100)
- La media delle due parti, 100 e 92. La riga di sintesi conta le parti in buono stato ed è verde solo quando lo sono entrambe; una pagina senza alcun JSON-LD prende 0 in tutte e due.
- Cosa non significa superare il controllo
- Un JSON valido con i campi di base è il primo passo. Se il markup può ottenere un risultato multimediale dipende dalle proprietà obbligatorie di ogni tipo e dalle linee guida di Google, che verificano il Test dei risultati multimediali e i report sui miglioramenti di Search Console.
Chi lo usa
-
SEO tecnico
Prima del lancio, verifica che i blocchi Article, Product e BreadcrumbList di ogni template vengano interpretati senza errori.
-
Sviluppatore e-commerce
Controlla un template di prodotto dopo ogni aggiornamento della piattaforma per individuare markup Product danneggiato.
-
Content manager
Verifica che il markup Article dei tuoi articoli principali venga ancora interpretato correttamente dopo un aggiornamento di tema o plugin.
Problemi comuni e come risolverli
-
Un blocco non si riesce ad analizzare
Cerca una virgola dopo l'ultima proprietà, delle virgolette senza escape in un valore o una variabile del modello che non ha stampato nulla. Incolla il blocco in un validatore JSON per trovare la riga, poi correggi il modello che lo genera, così sistemi tutte le pagine in una volta.
{ "@context": "https://schema.org", "@type": "Organization", "name": "Example Ltd", "url": "https://example.com" } -
La pagina non ha dati strutturati
Parti da ciò che descrive tutto il sito — un nodo Organization (o Person) e uno WebSite nel modello del sito — poi aggiungi il tipo adatto a ogni pagina: Article per gli articoli, Product per le schede prodotto, BreadcrumbList dove sono mostrati i breadcrumb.
<script type="application/ld+json"> { "@context": "https://schema.org", "@graph": [ { "@type": "Organization", "@id": "https://example.com/#org", "name": "Example Ltd", "url": "https://example.com" }, { "@type": "WebSite", "url": "https://example.com", "publisher": { "@id": "https://example.com/#org" } } ] } </script> -
Il markup FAQ o HowTo non porta risultati multimediali
FAQPage e HowTo restano tipi schema.org validi, ma Google non mostra più risultati FAQ o HowTo nella ricerca. Tieni il markup solo se qualcos'altro lo usa e non aspettarti da esso una scheda più ricca.
-
Il markup dice più di quanto mostra la pagina
Le linee guida di Google chiedono che i dati strutturati descrivano contenuti visibili ai visitatori. Valutazioni, prezzi o eventi presenti solo nel markup possono portare a un'azione manuale, quindi genera il JSON-LD dagli stessi dati che la pagina mostra.
-
Il markup è aggiunto da uno script
Lo strumento legge l'HTML così come viene consegnato, quindi il JSON-LD inserito da JavaScript non viene contato. Google sa leggere il JSON-LD iniettato, altri motori e strumenti forse no; la scelta più sicura è stamparlo nell'HTML del server.
-
Manca BreadcrumbList
Aggiungi BreadcrumbList nelle pagine che mostrano un percorso di navigazione, generato dallo stesso percorso che vede il visitatore, così markup e pagina non si contraddicono. Google può usarlo per mostrare dove si trova la pagina nel sito invece del solo URL.
Domande frequenti
- Controlla l'idoneità ai risultati multimediali?
- No. Controlla che ogni blocco si legga, elenca i suoi tipi e verifica alcuni campi di base (@context, @type, il nome di una Organization, l'url di un WebSite). Ogni risultato multimediale ha le sue proprietà obbligatorie; verificale con il Test dei risultati multimediali di Google.
- Dovrei usare JSON-LD, microdata o RDFa?
- Google supporta tutti e tre i formati e consiglia JSON-LD, il più semplice da aggiungere e mantenere. Questo strumento legge solo JSON-LD.
- Quali tipi possono ancora ottenere i rich result?
- Google elenca i tipi supportati nella sua Search Gallery, ad esempio Article, Product, Breadcrumb, Event, Local business, Recipe e Review snippet. I rich result FAQ e HowTo non vengono più mostrati in Google Search.
- Vede il markup aggiunto da JavaScript?
- No. Legge l'HTML così come viene consegnato, quindi il JSON-LD aggiunto in seguito dagli script non viene incluso.
- Perché cerca Organization e WebSite?
- Dicono chi pubblica il sito e come si chiama. Google usa i dati strutturati WebSite, insieme ad altri segnali, per scegliere il nome del sito mostrato nei risultati, e il markup Organization per dettagli come il logo. Vanno nel modello del sito, così una sola modifica copre ogni pagina.
Fonti
La documentazione su cui si basano questo strumento e le spiegazioni di questa pagina.
- Intro to How Structured Data Markup Works — Google Search Central
- General Structured Data Guidelines — Google Search Central
- Structured Data Markup that Google Search Supports — Google Search Central
- JSON-LD 1.1 — W3C
- RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format — RFC Editor