Cómo validar datos estructurados con Schema

Clase 22 de 34Curso de SEO: Posicionamiento en buscadores 2017

Contenido del curso

Resumen

Los datos estructurados bien implementados potencian la visibilidad con rich snippets: estrellas, imágenes y precios que diferencian tus resultados. Aquí verás, paso a paso y con ejemplos, cómo marcar un servicio con Schema.org usando microdata y JSON-LD, definir el alcance correcto y validar con la herramienta de prueba.

¿Cómo definir el servicio con microdata y Schema?

Para que todo el marcado tenga coherencia, primero se define el alcance del Service en el contenedor principal. Así, nombre, reviews y precio quedan atados al mismo servicio. El H1 se marca como name usando itemprop.

  • Define un contenedor con itemscope y itemtype de Service.
  • Marca el título con itemprop="name" para el nombre del servicio.
  • Asegura que reviews y precio estén dentro del mismo alcance.
<section itemscope itemtype="https://schema.org/Service"> <h1 itemprop="name">Seguros terceros completos full para Ford</h1> <!-- aquí irán reviews y precio, siempre dentro del mismo Service --> </section>

Claves: el alcance determina a qué entidad pertenece cada propiedad. Si está dentro de Service, entonces el price, el aggregateRating y el name describen ese servicio.

¿Cómo marcar reviews y precio para rich snippets?

Las valoraciones se modelan con aggregateRating. Dentro, dos propiedades son obligatorias: ratingValue (el puntaje) y reviewCount (la cantidad de votos). Si en la interfaz usas estrellas en vez de número, añade meta para informar a Google sin mostrarlo al usuario.

  • Usa aggregateRating con su propio alcance.
  • Añade ratingValue y reviewCount como meta.
  • Para precios, usa offers: es la vía indicada para price y priceCurrency en microdata.
<section itemscope itemtype="https://schema.org/Service"> <h1 itemprop="name">Seguros terceros completos full para Ford</h1> <div itemprop="aggregateRating" itemscope itemtype="https://schema.org/AggregateRating"> <meta itemprop="ratingValue" content="5" /> <meta itemprop="reviewCount" content="1079" /> </div> <div itemprop="offers" itemscope itemtype="https://schema.org/Offer"> <span itemprop="priceCurrency">pesos argentinos</span> <span itemprop="price">[precio]</span> </div> </section>

Sugerencias prácticas:

  • Usa meta cuando el texto visible no sea numérico, como estrellas.
  • Mantén los paréntesis y palabras fuera de reviewCount: solo el número.
  • En listados, crea un itemscope de Service por cada ítem.

¿Cómo usar JSON-LD y validar la sintaxis?

JSON-LD permite describir la misma información con un script independiente del HTML. Define @context, el @type como Service, y replica name, aggregateRating y offers. Si la herramienta marca error de coma o llave, ajusta la sintaxis y vuelve a probar.

¿Qué incluye el script de JSON-LD?

  • @context: http://schema.org.
  • @type: Service para indicar el tipo.
  • name: el nombre del servicio.
  • aggregateRating: con @type, ratingValue y reviewCount.
  • offers: con @type, priceCurrency y price.
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Service", "name": "Seguros terceros completos full para Ford", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "5", "reviewCount": "1079" }, "offers": { "@type": "Offer", "priceCurrency": "pesos argentinos", "price": "[precio]" } } </script>

¿Cómo validar y resolver errores?

  • Usa la herramienta de Structured Data Testing Tool para pegar tu código local.
  • Verifica que detecte: Service, name, aggregateRating con valor y votos, y offers con precio y moneda.
  • Si aparece error por llave o coma, corrige la sintaxis y vuelve a ejecutar la prueba.

Notas útiles y keywords:

  • Datos estructurados: formato para describir contenido de forma entendible para buscadores.
  • Rich snippets: resultados enriquecidos con rating, imágenes y precio.
  • Schema.org: vocabulario para marcar servicios, productos o personas.
  • Alcance (scope): determina a qué entidad pertenecen las propiedades.
  • itemprop: atributo para propiedades como name, price o reviewCount.
  • aggregateRating: bloque para valoraciones con ratingValue y reviewCount.
  • offers: bloque de precio con price y priceCurrency.
  • Microdata y RDFa: sintaxis en el HTML con estructura similar.
  • JSON-LD: script externo al HTML con las mismas propiedades.

¿Te gustaría que revisemos un snippet o un caso de tu sitio? Deja tus dudas en los comentarios y cuéntame qué servicio estás marcando.