Dati strutturati Schema.org
Crea i dati strutturati Schema.org di una pagina e te li restituisce in JSON-LD, pronti da incollare nel codice. I dati strutturati spiegano a Google cos'è il contenuto — un articolo, un prodotto, un'attività locale, una lista di domande — e sono ciò che sblocca i risultati arricchiti: stelline delle recensioni, prezzo, orari e domande direttamente in pagina.
Esegui online
Esegui questo sui nostri server con il tuo account. Gli strumenti gratuiti girano nel tuo browser; questo viene addebitato sul tuo saldo KIT al prezzo indicato sopra.
Cosa sono i dati strutturati e cosa ottieni
I dati strutturati sono un blocco di codice che descrive il contenuto in un linguaggio che Google capisce senza ambiguità: questo è il nome del prodotto, questo il prezzo, questa la recensione. Non spostano da soli il posizionamento, ma abilitano i rich result, quei risultati arricchiti con stelline, prezzo, orari o domande a scomparsa che occupano più spazio e attirano più clic. Google raccomanda il formato JSON-LD, un blocco separato nel codice: è quello che lo strumento genera, pronto da incollare.
Il tipo giusto per ogni pagina
A ogni contenuto corrisponde un tipo di schema: Article per un post di blog, Product per una scheda prodotto, LocalBusiness per l'attività di un negozio o uno studio con indirizzo e orari, FAQPage per una pagina di domande e risposte, Recipe per una ricetta. Usare il tipo sbagliato o inventarsi proprietà non porta a niente. Gli dai il contenuto o l'indirizzo della pagina e lo strumento sceglie il tipo adatto e compila i campi con i dati reali, invece di lasciarti a copiare un esempio generico da adattare a mano.
Onestà: il markup deve corrispondere alla pagina
Regola d'oro di Google: i dati strutturati devono descrivere ciò che l'utente vede davvero. Mettere recensioni in Schema su una pagina che non le mostra, o un prezzo diverso da quello reale, porta a una penalizzazione manuale, non a un vantaggio. Lo strumento compila il markup a partire dal contenuto effettivo della pagina, così resta coerente. Dopo aver incollato il codice, conviene controllarlo con il test dei risultati arricchiti di Google.
Prezzo
$0.003 a richiesta più $0.0135 a pagina: circa $0.0165 per pagina. Generare i dati strutturati per le pagine principali di un sito costa pochi centesimi di dollaro. Prezzo pubblicato, pagamento a consumo con PayPal, senza abbonamento.
Casi d'uso
Negozio con schede prodotto
Il negozio online di Rossi & Figli S.r.l. genera lo schema Product per le sue schede: prezzo, disponibilità e valutazione media compaiono nel markup, aprendo la strada ai risultati arricchiti che rendono le schede più visibili tra i concorrenti.
Attività locale che vuole farsi trovare
Uno studio dentistico a Torino genera lo schema LocalBusiness con indirizzo, orari e telefono +39 011 123 4567: aiuta Google a mostrare l'attività con le informazioni giuste a chi cerca un dentista in zona.
Pagina di FAQ
Un sito di servizi trasforma la sua pagina di domande frequenti in schema FAQPage: le domande possono comparire espandibili direttamente nei risultati di Google, occupando più spazio e rispondendo prima ancora del clic.
Domande frequenti
In che formato genera i dati strutturati?
In JSON-LD, il formato raccomandato da Google: un blocco di codice separato che incolli nella pagina, senza dover intrecciare gli attributi in mezzo all'HTML come con i formati più vecchi.
Come sceglie il tipo di schema?
In base al contenuto: Article per un post, Product per una scheda, LocalBusiness per un'attività con indirizzo, FAQPage per le domande. Analizza cosa contiene la pagina e usa il tipo adatto compilando i campi con i dati reali.
I dati strutturati mi fanno salire su Google?
Non direttamente: non sono un fattore di posizionamento. Servono a sbloccare i risultati arricchiti — stelline, prezzo, orari — che rendono il risultato più visibile e possono aumentare i clic.
Quanto costa?
Circa $0.0165 a pagina ($0.003 a richiesta più $0.0135 a pagina). Prezzo pubblicato, pagamento a consumo con PayPal, senza abbonamento.
Il contenuto della pagina resta privato?
Sì: il testo che invii viene usato solo per generare il markup e poi eliminato, senza essere conservato né riutilizzato dopo l'elaborazione.
Va bene per una pagina in italiano?
Sì: lo schema descrive i contenuti indipendentemente dalla lingua, e i testi come nome, descrizione e domande restano in italiano, esattamente come sono sulla tua pagina.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/seo/schema-generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/seo/schema-generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/schema-generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/schema-generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/schema-generate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"input": "…"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.schema_generate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
413 | input_too_large | Il file o il testo inviato supera il limite di questo strumento. |
422 | task_failed | L'attività non è andata a buon fine: non ti viene addebitato nulla. |