Hace poco estuve en Japón y una de las cosas que hice fue entrar en un bazar en Tokio. Pequeñito, al fondo de una galería, con luz cálida y estanterías de madera hasta el techo.
Todo estaba perfectamente colocado, pero los carteles estaban en japonés. Había tarros con cosas, cajas con objetos que no sabía si eran dulces, herramientas o incienso.
Intenté preguntar, pero la señora mayor que lo atendía no hablaba inglés. Sonreía mucho, eso sí.
Al final, conseguí comprar lo que quería. O al menos, algo que se le parecía. Pero estuve más de media hora dando vueltas y varias veces pensé en salir de allí.
Esto mismo le pasa a Google cuando entra en tu web y no encuentra datos estructurados: tiene que descubrirlo todo. Y eso implica que quizá no examine tu sitio completamente o no muestre las cosas tal y como a ti te gustaría.
En este post te explico qué son los datos estructurados, por qué son tan importantes para el SEO y, sobre todo, cómo implementarlos bien según el tipo de web que tengas, con ejemplos que puedes copiar y adaptar sin necesidad de ser un experto en código.
¿Me acompañas?
¿Qué son los datos estructurados y por qué son importantes para el SEO?
Los datos estructurados son fragmentos de código que se insertan en el HTML de una página web para decirle a Google (y a otros motores de búsqueda) cuál es el contenido exacto de dicha página web.
Vamos a verlo con un ejemplo:
<script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "name": "Caldera Bosch Condens C6000 W 25/32", "image": [ "https://www.tusitio.com/img/caldera-bosch-C600W.jpg" ], "description": "Caldera de condensación de alta eficiencia.", "sku": "C600W", "brand": { "@type": "Brand", "name": "Bosch" }, "offers": { "@type": "Offer", "url": "https://www.tusitio.com/productos/caldera-bosch-C600W", "priceCurrency": "EUR", "price": "1659.90", "availability": "https://schema.org/InStock", "itemCondition": "https://schema.org/NewCondition" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.6", "reviewCount": "634" } } </script>
Con este fragmento, le estamos indicando a los buscadores que accedan a nuestra página web lo siguiente:
“Esto es un producto, se llama Caldera Bosch Condens Condens C6000 W 25/32, cuesta 1659,90€, tiene una valoración de 4.6 y está en stock”.
Es decir, le estamos poniendo las cosas fáciles tanto a Google, como a otros sistemas de rastreo. Y eso tiene unos claros beneficios de cara al SEO.
- Ayudan a que Google interprete mejor tu contenido. Le estás dando información clara que reduce ambigüedades y mejora la interpretación del tipo de página y su propósito.
- Permiten aparecer en resultados enriquecidos especiales. Como carruseles de recetas, preguntas frecuentes, eventos locales o vídeos destacados, que están por encima del clásico resultado azul.
- Incrementan el CTR (Click Through Rate). Al destacar visualmente, es más probable que un usuario haga clic en tu resultado frente a otros.
- Refuerzan tus señales de autoridad (EEAT). Puedes marcar tu autoría, tu organización, referencias, etc. lo que mejora tu percepción como fuente confiable.
Datos enriquecidos de Google vs datos estructurados. ¿Son lo mismo?
Muchas veces verás que estos dos conceptos aparecen muy ligados. Sin embargo, no son lo mismo y debes saber diferenciarlos.
Los datos estructurados son el código que tú añades en tu web para explicarle a Google qué hay en la página.
En cambio, los datos enriquecidos (o Rich Snippets) son el resultado visible que Google puede mostrar en su buscador si entiende ese marcado y decide que tu contenido merece la pena.
Y como lo mejor es verlo con un ejemplo, aquí tienes una representación en Google para el caso anterior de la caldera.
Ahora bien: ¿puedes tener datos estructurados y no conseguir resultados enriquecidos?
Sí. Y es normal, ya que Google decide lo que quiere mostrar y lo que no. Pero si no tienes datos estructurados en tu página, normalmente puedes ir olvidándote de los Rich Snippets.
¿Qué es Schema.org?
Schema.org es un proyecto colaborativo cuyo propósito es definir y mantener un vocabulario estándar que pueda utilizarse dentro de los datos estructurados.
Detrás de este proyecto tenemos organizaciones como Google, Bing, Yahoo o Yandex.
Y no es casualidad, ya que a todos estos gigantes les interesa que los datos estructurados que implementemos sigan un conjunto de propiedades o etiquetas conocidas y de uso común que puedan procesar sin problemas.
Por eso, muchas veces se habla de datos estructurados y de marcado esquema para referirnos a lo mismo, aunque realmente sean cosas diferentes:
- Los datos estructurados es el concepto general, que incluye el vocabulario y el formato concreto que deben tener estos fragmentos de código para que los entiendan las máquinas (como Google).
- El marcado de esquema (o schema markup) es la forma específica en la que aplicas esos datos estructurados usando el vocabulario de Schema.org.
Existen por lo tanto otros vocabularios que podríamos utilizar, como Open Graph o Dublin Core, pero Schema es el que tiene un uso más extendido y el que es recomendado por Google.
¿Pero Google entiende todo lo que hay en Schema.org?
La realidad es que no. El listado de tipos de datos definidos por Schema.org es enorme y Google sólo entiende un subconjunto de ellos a la hora de activar funciones reales en las SERPs.
Más adelante te comentaré algunos de los más interesantes para mejorar el SEO de tu web.
Formatos más habituales que presentan los datos estructurados
Antes ya te he anticipado que, cuando hablamos de datos estructurados, no solo importa el vocabulario que utilizas, sino también su representación.
A continuación te comento los tres formatos de marcado más comunes que nos podemos encontrar.
JSON-LD (JavaScript Object Notation for Linked Data)
Es el formato que nos recomienda utilizar Google. Va encapsulado en un bloque <script> dentro del <head> o el <body> del HTML, lo que lo hace fácil de implementar y mantener.
El ejemplo que hemos visto antes es un JSON-LD.
Microdata
Se inserta directamente dentro del HTML, añadiendo atributos a las etiquetas.
Fue muy popular en su día, pero puede ensuciar el código y resulta más difícil de mantener en proyectos grandes. Sin embargo, aún lo usan algunos plugins antiguos y plantillas.
<div itemscope itemtype="https://schema.org/Product"> <h1 itemprop="name">Caldera Bosch Condens C6000 W 25/32</h1> <img src="https://www.tusitio.com/img/caldera-bosch-C600W.jpg" alt="Caldera Bosch C6000 W" itemprop="image"> <p itemprop="description">Caldera de condensación de alta eficiencia, ideal para viviendas unifamiliares.</p> <p>Referencia: <span itemprop="sku">C600W</span></p> <p>Marca: <span itemprop="brand" itemscope itemtype="https://schema.org/Brand"> <span itemprop="name">Bosch</span> </span> </p> <div itemprop="offers" itemscope itemtype="https://schema.org/Offer"> <p>Precio: <span itemprop="price">1659.90</span> <span itemprop="priceCurrency" content="EUR">€</span></p> <link itemprop="availability" href="https://schema.org/InStock">En stock <link itemprop="itemCondition" href="https://schema.org/NewCondition"> <meta itemprop="url" content="https://www.tusitio.com/productos/caldera-bosch-C600W"> </div> <div itemprop="aggregateRating" itemscope itemtype="https://schema.org/AggregateRating"> <p> Valoración media: <span itemprop="ratingValue">4.6</span> (basado en <span itemprop="reviewCount">634</span> valoraciones) </p> </div> </div>
RDFa (Resource Description Framework in Attributes)
Es bastante parecido a Microdata a la hora de integrarlo en tus páginas, pero tiene mucha más potencia semántica. Se usa sobre todo en entornos académicos, gubernamentales o muy técnicos.
Google lo entiende, pero no es la opción más práctica ni sencilla de implementar para SEO.
<div vocab="https://schema.org/" typeof="Product"> <h1 property="name">Caldera Bosch Condens C6000 W 25/32</h1> <img src="https://www.tusitio.com/img/caldera-bosch-C600W.jpg" alt="Caldera Bosch C6000 W" property="image"> <p property="description">Caldera de condensación de alta eficiencia, ideal para viviendas unifamiliares.</p> <p>Referencia: <span property="sku">C600W</span></p> <p>Marca: <span property="brand" typeof="Brand"> <span property="name">Bosch</span> </span> </p> <div property="offers" typeof="Offer"> <p>Precio: <span property="price">1659.90</span> <span property="priceCurrency" content="EUR">€</span></p> <link property="availability" href="https://schema.org/InStock">En stock <link property="itemCondition" href="https://schema.org/NewCondition"> <meta property="url" content="https://www.tusitio.com/productos/caldera-bosch-C600W"> </div> <div property="aggregateRating" typeof="AggregateRating"> <p> Valoración media: <span property="ratingValue">4.6</span> (basado en <span property="reviewCount">634</span> valoraciones) </p> </div> </div>
Cómo implementar el marcado de datos estructurados en tu web. Guía paso a paso
Al llegar a este punto, la primera pregunta que quizá se te venga a la cabeza es:
¿Necesito saber código para usar datos estructurados?
Afortunadamente, la respuesta es no.
Tienes a tu disposición diferentes plugins, generadores visuales y asistentes que te lo ponen muy fácil. Y en este apartado te voy a contar los más prácticos y cómo puedes usarlos.
Ahora bien, también te advierto que sí conviene entender un poco el formato JSON-LD, así como revisar lo que generan todas estas herramientas para evitar errores que puedan perjudicar a tu web.
Dicho esto, vamos con el paso a paso para integrar datos estructurados de tus páginas.
1. Crear del fragmento de código JSON-LD
El primer paso será crear el código en formato JSON-LD que, como hemos visto, es el recomendado por Google.
Pero no lo haremos a mano. En lugar de eso, vamos a ayudarnos de algunas utilidades gratuitas que nos hacen buena parte del trabajo.
Asistente para el marcado de datos estructurados de Google
Una de las principales herramientas que existen para crear datos estructurados nos la proporciona el propio Google. Puedes acceder a ella desde aquí.
Cuando la abras en tu navegador, comprobarás que es muy sencilla de usar. Simplemente introduce la URL de la página de tu web que quieras etiquetar y elige el tipo de datos estructurados que mejor encaje con el contenido de tu página. Después pulsa el botón “empezar a etiquetar”.
Si no te funciona este método, puedes introducir directamente el HTML de tu web. Para ello, visualiza el código fuente de tu página con un navegador, selecciona todo el texto, cópialo y pégalo en el cuadro correspondiente del asistente de Google.
Si todo va bien, la herramienta cargará una visualización de tu página y completará algunos de los campos que reconozca.
El resto de campos los deberás ir completando tú. Pero no te preocupes, no es difícil. Tan sólo tendrás que seleccionar los elementos que contengan información relevante y, con el botón derecho, indicar con qué propiedades se corresponden.
Cuando lo tengas todo, pulsa el botón “Crear HTML” y verás directamente el JSON-LD que te puedes descargar.
Herramienta de datos estructurados online gratuita
Ya hemos visto que el asistente para el marcado de datos estructurados de Google es una herramienta muy práctica y realmente fácil de utilizar. Sin embargo, a veces no es capaz de cargar bien nuestra página.
O también puede ocurrir que las opciones de tipos de datos que ofrece se te queden algo cortas.
Si éste es tu caso, te recomiendo esta otra herramienta para crear datos estructurados, que es algo más completa (y también algo menos visual).
Con Schema Markup Generator deberás seleccionar el esquema más apropiado para tu página web y completar manualmente todos los campos que te presenta.
Conforme rellenas la información, verás cómo se va generando el JSON-LD correspondiente.
Como te digo, no es tan amigable como la herramienta de Google, pero es mucho más potente y nada difícil de utilizar.
Extra: crear datos estructurados con ChatGPT
Y, cómo no, en el momento actual no podemos olvidarnos de la IA.
ChatGPT es quizá la herramienta que más trabajo te puede ahorrar a la hora de crear los datos estructurados de una página. Eso sí, debes pasarle tú toda la información con la mayor precisión y, como siempre, comprobar después que el código que te crea es correcto.
Para que te sirva de guía, aquí tienes un ejemplo de prompt:
Genera un código JSON-LD válido según Schema.org para marcar la ficha de producto de una tienda online. El producto es: - Nombre: Caldera Bosch Condens C6000 W 25/32 - Descripción: Caldera de condensación de alta eficiencia, ideal para viviendas unifamiliares. - Imagen: https://www.tusitio.com/img/caldera-bosch-C600W.jpg - Identificador del modelo: C600W - Marca: Bosch - Precio: 1659.90 € - Producto nuevo y en stock - URL del producto: https://www.tusitio.com/productos/caldera-bosch-C600W - Valoración: 4.6 - Número de valoraciones: 634
Y éste sería el resultado:
2. Insertar los datos estructurados en tu web
Vale, ya tienes listo tu código JSON-LD. Ahora toca colocarlo en tu web para que Google lo vea, lo entienda y lo use.
Es muy probable que tu sitio esté construido sobre WordPress. Al menos, es el caso que más me suelo encontrar. Por eso, vamos a ver primero cómo hacerlo con este CMS y después te explicaré qué opciones tienes si no es tu caso.
Si utilizas WordPress
La mayoría de plugins de SEO más utilizados en WordPress (como pueden ser Rank Math o Yoast SEO) ya incluyen opciones para añadir marcado Schema automáticamente.
No obstante, sus opciones pueden quedarse algo limitadas en ciertos casos.
Por eso, mi recomendación es que seas tú quien se encargue de incrustar el código JSON-LD directamente en las páginas de tu web. Al menos, en las más importantes.
Para ello, muchos temas ya incluyen la posibilidad de modificar el contenido de la etiqueta <head> de cada URL.
Y si el tuyo no tiene esta opción, siempre puedes utilizar un plugin específico, como el que te contamos en este otro post sobre cómo implementar datos estructurados en WordPress.
Si no utilizas WordPress
Pero claro, no todo es WordPress y es posible que tú estés utilizando otra tecnología diferente para tu web.
En ese caso, debes saber que muchos CMS y plataformas de ecommerce ya vienen con funciones de datos estructurados integradas, o bien permiten añadirlos con relativa facilidad.
Por ejemplo, Shopify, Prestashop o Magento incluyen ciertas opciones de marcado Schema más o menos completas, mientras que Joomla o Drupal permiten usar extensiones para completar datos estructurados.
Ahora bien, si tu sistema no dispone de estas facilidades, o bien quieres tener un mayor control, deberás ser tú quien edite el HTML de tu página (o la plantilla) y pegue el código del JSON justo antes del cierre del <head> o dentro del <body>.
Aquí te muestro un ejemplo esquemático de cómo quedaría:
<!DOCTYPE html> <html lang="es"> <head> <title>Caldera Bosch Condens C6000 W</title> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Product", ... } </script> </head> <body> <!-- contenido visible --> </body> </html>
¿Dónde es mejor colocar el JSON-LD, en el <head> o en el <body>?
Realmente da lo mismo. Google lo lee igual. Lo importante es que esté completo, sin errores y cargue con el HTML.
3. Comprobar los datos estructurados
A lo largo de este artículo he insistido varias veces en la necesidad de validar que los datos estructurados que vas a insertar en tu web sean correctos.
De lo contrario, es posible que Google no los entienda y, por lo tanto, no los utilice.
Por eso, a continuación te voy a mostrar dos herramientas muy útiles para evitar errores en tus datos.
Validador de datos estructurados de Schema.org
La primera herramienta es el validador oficial de Schema.org.
Lo más fiable suele ser siempre acudir a la fuente oficial y, por eso, este validador debería estar ya en los marcadores de tu navegador.
Para usarlo, simplemente introduce la URL de la página que contenga los datos estructurados o bien copia y pega el fragmento de JSON que quieras validar.
La herramienta te dirá si tu código está bien formado y si las etiquetas son correctas o, por el contrario, tienen algún error.
Prueba de datos estructurados de Google
La segunda herramienta que deberías conocer pertenece a Google. Se trata de su prueba de resultados enriquecidos que, como su nombre indica, nos permite saber si nuestra página es susceptible de generar algún tipo de Rich Snippet.
De nuevo, introduce la URL de tu página (o pega su código HTML) y el validador te dirá:
- Qué tipo de Schema ha detectado.
- Si es elegible para algún tipo de dato enriquecido.
- Si hay errores o advertencias.
Tipos de datos estructurados más comunes en función del tipo de web. Explicación con ejemplos
Ahora ya sabes cómo crear los datos estructurados para tu web de manera sencilla y sin necesidad de saber programar.
Pero ¿por dónde empezar? ¿Qué tipos de datos son más apropiados para tu página web?
Porque está claro que un blog no es lo mismo que una tienda online.
Ni una página de un negocio local puede tener el mismo trato que una receta de cocina.
Por eso, en este apartado quiero mostrarte los esquemas de datos estructurados más útiles desde el punto de vista SEO en función de cuál sea la tipología de tu proyecto.
Y como siempre, lo veremos con ejemplos, para que te resulte mucho más fácil de seguir.
¡Vamos allá!
Datos estructurados para un blog o web de noticias
Si tienes una web con contenido informativo, el Schema Article y sus variantes es uno de los tipos de datos que más vas a utilizar.
A continuación te comento los dos casos más habituales:
Article o NewsArticle para noticias
Article es el tipo de Schema genérico para un artículo informativo. Si publicas contenidos periodísticos de opinión, textos evergreen, escritos científicos y, en general, cualquier tipo de artículo, éste es el tipo de dato estructurado que debes utilizar.
Ahora bien, si tu página lo que contiene es una noticia, aunque también podrías usar el Schema Article, es preferible emplear NewsArticle, que es una especialización para este tipo de medios.
Aquí puedes ver un ejemplo del aspecto que tiene el JSON correspondiente:
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "NewsArticle", "headline": "La ola de calor se alarga hasta octubre", "image": ["https://www.tusitio.com/img/ola-calor.jpg"], "datePublished": "2025-09-20", "dateModified": "2025-09-21", "author": { "@type": "Person", "name": "Pepa Martín" }, "publisher": { "@type": "Organization", "name": "Noticias Verdes", "logo": { "@type": "ImageObject", "url": "https://www.tusitio.com/logo.png" } }, "mainEntityOfPage": "https://www.tusitio.com/noticias/ola-calor" } </script>
De este modo le indicamos a Google aspectos como:
- El título del artículo.
- La imagen destacada.
- El nombre del autor y el medio donde se publica.
- Las fechas de publicación y actualización.
Y así podemos conseguir que nuestra noticia aparezca destacada en las SERPs.
BlogPosting para artículos de blog
Si lo que tienes es un blog también podrías utilizar el esquema Article pero, tal y como ocurre con las noticias, conviene ser más específico y utilizar un tipo de datos más concreto. Para eso, el esquema BlogPosting es el que mejor encaja en estas situaciones.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BlogPosting", "headline": "5 errores comunes al implementar datos estructurados", "image": ["https://www.tusitio.com/img/blog/schema-errores.jpg"], "datePublished": "2025-09-22", "dateModified": "2025-09-24", "author": { "@type": "Person", "name": "Pepe Pérez" }, "description": "Te contamos los errores más comunes con Schema.org", "mainEntityOfPage": "https://www.tusitio.com/blog/schema-errores" } </script>
Como ves, la información es muy parecida al caso anterior, pero semánticamente es más precisa, ya que informamos a Google de que nuestro artículo es un post dentro de un blog.
En definitiva, por si todavía te queda alguna duda:
¿Qué Schema debo usar para un artículo: Article, BlogPosting o NewsArticle?
- Si escribes noticias: NewsArticle.
- Si escribes en un blog personal o profesional: BlogPosting.
- Si no sabes qué poner, Article es el comodín general.
Datos estructurados para un ecommerce
Si en el caso de las páginas web informativas los datos estructurados son importantes, cuando lo que gestionamos es una tienda online, pueden ser el aspecto diferencial entre pasar desapercibidos o que nuestros productos resalten en las SERPs.
Y, por lo tanto, que atraigan a un mayor número de posibles compradores.
Estos son los esquemas que te pueden ayudar a conseguirlo:
Product para fichas de producto
No hace falta que te diga que las páginas de producto son uno de los elementos más importantes de tu ecommerce.
Por eso, Schema.org les dedica un tipo de datos específicos denominado Product que nos sirve para marcar una ficha de producto individual.
Antes ya hemos visto un ejemplo de este tipo de esquema pero, para que te quede más claro, aquí te dejo otro más:
<script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Product", "name": "Zapatillas Running JOMA R2000", "image": "https://www.tutienda.com/img/zapatillas-r2000.jpg", "description": "Zapatillas de running ligeras.", "sku": "R2000", "brand": { "@type": "Brand", "name": "Joma" }, "offers": { "@type": "Offer", "url": "https://www.tutienda.com/productos/zapatillas-running-pro-2000", "priceCurrency": "EUR", "price": "89.90", "availability": "https://schema.org/InStock", "itemCondition": "https://schema.org/NewCondition" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.7", "reviewCount": "112" } } </script>
Así, puedes indicar cosas como:
- El nombre
- La marca
- El precio
- Si está o no en stock
- La valoración media
Y, en definitiva, todo lo que Google necesita para mostrarlo en sus resultados enriquecidos.
CollectionPage para categorías de producto
Las categorías de producto son el otro tipo de páginas que debes cuidar dentro de tu ecommerce.
Sin embargo, para este caso tenemos el problema de que Schema.org no define un tipo de datos especializado. Pero no te preocupes, sí que tenemos una solución.
El esquema CollectionPage es un tipo de datos que describe a una página web que contiene un listado de elementos y, por lo tanto, encaja perfectamente para describir categorías. Aquí te muestro ejemplo:
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "CollectionPage", "name": "Zapatillas de Running", "description": "Zapatillas para correr.", "mainEntity": { "@type": "ItemList", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@type": "Product", "name": "Zapatillas Pro 2000", "url": "https://www.tutienda.com/productos/pro-2000" } }, { "@type": "ListItem", "position": 2, "item": { "@type": "Product", "name": "Zapatillas Urban Speed", "url": "https://www.tutienda.com/productos/urban-speed" } } ] } } </script>
Ten en cuenta que este tipo de datos no suele generar rich snippets visuales directos. Sin embargo, mejora la comprensión de la estructura de tu sitio por parte de Google y ayuda a su indexación.
Entonces, ¿me conviene más marcar mis productos uno a uno o marcar solo las categorías con CollectionPage?
- Si cada producto tiene su propia ficha: marca cada Product.
- Si son catálogos grandes o no puedes mantenerlos: marca las categorías como CollectionPage.
- Y si puedes: haz ambas cosas.
Review para las opiniones
Review es un tipo de Schema que se usa para marcar una opinión concreta que aparece en la página. Puede estar sola o dentro de un Product, como parte del conjunto de valoraciones.
"review": { "@type": "Review", "author": { "@type": "Person", "name": "Lucía Rodríguez" }, "datePublished": "2025-09-22", "reviewRating": { "@type": "Rating", "ratingValue": "5", "bestRating": "5" }, "reviewBody": "Son comodísimas. Perfectas para correr por asfalto." }
Si en tu ecommerce recoges las opiniones de los clientes, suele ser una buena idea decírselo a Google, ya que puede mostrar aspectos de esas reseñas en las SERPs, como las estrellas e incluso algún fragmento concreto.
Eso sí, ten mucho cuidado al hacerlo: si marcas opiniones que no están visibles en la página, Google puede penalizarte.
¿Qué diferencia hay entre Review y AggregateRating?
- Review es una reseña concreta (de una persona).
- AggregateRating es la media de varias valoraciones.
¿Y qué es mejor utilizar? Si muestras una única opinión: Review. Si tienes estrellas con media: AggregateRating. Y si puedes, usa ambos.
Datos estructurados para una web de negocio local
Si tienes una tienda física, un despacho, una clínica o cualquier otro negocio que atienda al público en una zona concreta, también puedes optimizar el SEO de tu web gracias a los datos estructurados.
Para eso, tienes dos tipos de datos clave: uno para la ficha del negocio y otro para las páginas de servicios.
Vamos a verlos.
LocalBusiness para la página de descripción del negocio local
LocalBusiness es el esquema de datos que va a permitir a Google (y a otros sistemas) entender las características de tu negocio local: quién eres, dónde estás, qué haces, a qué horas atiendes al público, etc.
<script type="application/ld+json"> { "@context" : "http://schema.org/", "@type" : "LocalBusiness", "@id" : "https://www.persianasmarinzaragoza.com", "name" : "Persianas Marín", "address" : { "@type" : "PostalAddress", "streetAddress" : "Calle Agustina de Aragón 50", "addressLocality" : "Zaragoza", "addressRegion" : "Zaragoza", "postalCode" : "50004", "addressCountry" : "ES" }, "geo" : { "@type" : "GeoCoordinates", "latitude" : "41.654625", "longitude" : "-0.888139" }, "url" : "https://www.persianasmarinzaragoza.com", "telephone" : "976 43 91 19", "logo" : "https://de.cdn-website.com/80544158c6034264905a00c23879a96e/dms3rep/multi/PERSIANAS-MARIN-web.png", "openingHoursSpecification" : [ { "@type" : "OpeningHoursSpecification", "dayOfWeek" : [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens" : "09:00", "closes" : "13:00" }, { "@type" : "OpeningHoursSpecification", "dayOfWeek" : [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens" : "16:00", "closes" : "20:00" } ], "sameAs" : [ "https://facebook.com/287837064643977" ] } </script>
Toda esta información ayuda a reforzar la visibilidad de tu negocio en Google Maps y Google Business Profile, ya que mejora el reconocimiento de tu marca por parte del buscador.
¿Y es lo mismo utilizar Organization que LocalBusiness?
Lo cierto es que no. Organization (que veremos más adelante) es genérico y es válido para empresas, ONGs, marcas, etc.
En cambio, LocalBusiness es para negocios que atienden en una ubicación física o zona concreta.
Por lo tanto, si tienes un negocio local, usa LocalBusiness. Si no, Organization.
Service para las páginas de servicios
Service es el tipo de dato estructurado que te permitirá describir cada uno de los servicios que ofrece tu negocio, especialmente si cada servicio tiene su propia landing.
De este modo puedes indicar no sólo en qué consiste tu servicio, sino aspectos tan importantes como el precio, planes específicos, el área donde prestas el servicio o las opiniones de los usuarios.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Service", "name": "Revisión de caldera", "description": "Revisión anual obligatoria para calderas domésticas.", "provider": { "@type": "LocalBusiness", "@id": "https://www.miwebdenegociolocal.com/" }, "areaServed": { "@type": "Place", "name": "Madrid" }, "offers": { "@type": "Offer", "price": "89.00", "priceCurrency": "EUR", "availability": "https://schema.org/InStock", "url": "https://miwebdenegociolocal.com/servicios/revision-caldera" } } </script>
Este esquema no genera un Rich Snippet visual directo, como sí lo haría un Product, pero refuerza la conexión entre tus servicios, tu negocio local y la zona geográfica de influencia.
Entonces, ¿uso Product o Service para lo que ofrezco?
- Si vendes algo físico o digital con carrito y precio: Product.
- Si ofreces algo que se contrata (mantenimiento, clases, asesoría): Service.
Datos estructurados para contenidos específicos
Hemos visto esquemas de datos estructurados para páginas informativas, tiendas online y páginas de negocio locales. Sin embargo, como sabes, existen muchos otros contenidos que podrías publicar en tu web.
Por eso, en este apartado te comento otros tipos de datos que te podrían resultar de utilidad.
Recipe para recetas
El tipo Recipe sirve para marcar recetas de cocina con todo lujo de detalles: ingredientes, pasos, tiempo de preparación, valores nutricionales, valoraciones y mucho más.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Recipe", "name": "Tarta de queso clásica", "image": "https://www.miwebderecetas.com/img/tarta-queso.jpg", "description": "Una receta fácil para una tarta de queso al horno.", "recipeYield": "8 raciones", "prepTime": "PT15M", "cookTime": "PT50M", "totalTime": "PT1H5M", "recipeIngredient": [ "500g de queso crema", "200ml de nata", "3 huevos", "100g de azúcar" ], "recipeInstructions": [ "Precalienta el horno a 180ºC.", "Mezcla todos los ingredientes.", "Vierte en un molde y hornea 50 minutos." ], "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.9", "reviewCount": "212" } } </script>
De este modo, Google puede mostrar diferentes elementos de tu receta en las SERPs e incluso incluirte dentro de su carrusel de recetas.
Ahora bien, además de Recipe, debes saber que hay otro tipo de dato que también te permite documentar instrucciones paso a paso. Se trata de HowTo, que también puede generar resultados enriquecidos en Google.
¿Cuándo uso HowTo y cuándo uso Recipe?
- Si estás explicando cómo hacer algo (montar un mueble, configurar un dispositivo): HowTo.
- Si es comida o bebida con ingredientes: Recipe.
Event para eventos
Usa Event si organizas o promocionas eventos con fecha concreta, presenciales o en línea: conciertos, talleres, ferias, webinars, etc.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Event", "name": "Radiografía del SEO local en 2025", "startDate": "2025-09-15T18:00", "endDate": "2025-09-15T20:00", "eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode", "location": { "@type": "VirtualLocation", "url": "https://www.youtube.com/watch?v=UV1Uub6-7iM" }, "description": "Aprende cómo posicionar tu negocio local en Google Maps en 2025.", "offers": { "@type": "Offer", "price": "0", "priceCurrency": "EUR", "availability": "https://schema.org/InStock" }, "organizer": { "@type": "Organization", "name": "DinoRANK", "url": "https://www.dinorank.com" } } </script>
Si marcas tus páginas de eventos con este esquema aumentas tus posibilidades de aparecer en resultados enriquecidos y en carruseles de eventos dentro de Google.
Course para cursos
Las formaciones también tienen su esquema correspondiente. Se trata del tipo de dato Course, que te permite documentar aspectos como el nombre del curso, el proveedor, las fechas de inicio y fin o las ediciones.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Course", "name": "Curso intensivo de copywriting", "description": "Aprende a escribir textos que venden.", "provider": { "@type": "Organization", "name": "Escribir Mejor", "url": "https://www.escribirmejor.com" }, "hasCourseInstance": { "@type": "CourseInstance", "startDate": "2025-11-01", "endDate": "2025-11-30", "location": { "@type": "Place", "name": "Online" } } } </script>
Ahora bien, si lo que vendes es un curso como infoproducto, quizá te habías planteado también la posibilidad de clasificarlo como tipo Product. Vamos a despejar esta duda de una vez por todas:
¿Es mejor marcar los cursos como Product o como Course?
- Si quieres reforzar que se trata de una formación: Course.
- Si solo quieres mostrar precio y disponibilidad, sin contexto educativo: Product.
- Si puedes: usa Course con CourseInstance que incluya un Offer.
JobPosting para ofertas de empleo
Si en tu web publicas ofertas de empleo, entonces marcar tus páginas con Schema JobPosting hace que sea más visible para los motores de búsqueda e incluso te puede permitir aparecer en el módulo de empleos de Google.
Para que te hagas una idea de los elementos que puedes indicar en este tipo de datos, a continuación te muestro un ejemplo ficticio:
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "JobPosting", "title": "Especialista en SEO técnico", "description": "Buscamos un perfil con experiencia en datos estructurados.", "datePosted": "2025-08-24", "validThrough": "2025-09-15T23:59", "employmentType": "FULL_TIME", "hiringOrganization": { "@type": "Organization", "name": "Agencia TopSEO", "sameAs": "https://www.topseo.com", "logo": "https://www.topseo.com/logo.png" }, "jobLocation": { "@type": "Place", "address": { "@type": "PostalAddress", "addressLocality": "Barcelona", "addressCountry": "ES" } }, "baseSalary": { "@type": "MonetaryAmount", "currency": "EUR", "value": { "@type": "QuantitativeValue", "value": 30000, "unitText": "YEAR" } } } </script>
Datos estructurados para trabajar el EEAT
El EEAT es un aspecto crucial hoy en día para conseguir que nuestra web acabe posicionando en los principales buscadores.
Lo bueno es que hay formas de reforzarlo con Schema.org.
Aquí lo que buscamos no son estrellitas ni carruseles en las SERPs. Lo que queremos es que Google entienda quiénes somos y por qué debería fiarse de nosotros a la hora de tener en cuenta nuestros contenidos.
Estos son los datos estructurados que pueden darte un empujón en este sentido.
Organization para definir la marca
Organization te permite describir la entidad que hay detrás de un sitio web: una empresa, una institución, una ONG, etc.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Organization", "@id": "https://dinorank.com/", "name": "DinoRANK", "url": "https://dinorank.com/", "logo": "https://dinorank.com/img/web/dinorank-logo-white.svg", "sameAs": [ "https://www.linkedin.com/company/dinorank/", "https://www.youtube.com/c/DinoRANK" ], "contactPoint": { "@type": "ContactPoint", "contactType": "Atención al cliente", "email": "info@dinorank.com" } } </script>
De esta manera refuerzas tu perfil de marca y tu autoridad ante Google y le ayudas a que aspectos como el logo o los datos de contacto aparezcan bien en los resultados y paneles de conocimiento.
¿Puedes usar Organization aunque seas autónomo o freelance y únicamente tengas una marca personal?
Claro que sí. Puedes definirte como Organization con tu nombre comercial, aunque seas tú solo y, de esta manera, reforzar tu faceta profesional.
Person para las páginas de autor
Person te permite describir al autor de un contenido o al experto que firma una sección.
Es clave para todo tipo de webs, pero muy especialmente para aquéllas que publican contenidos sobre la salud, finanzas, o legales, donde Google quiere saber quién está hablando.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Person", "@id": "https://dinorank.com/blog/author/dean-romero/", "name": "Dean Romero", "jobTitle": "Cofundador de DinoRANK y fundador de SEOWarriors.club", "image": "https://dinorank.com/img/web/equipo/avatar-Dean.jpg", "affiliation": { "@type": "Organization", "name": "DinoRANK" }, "sameAs": [ "https://deanromero.com/", "https://www.instagram.com/deanromero10/", "https://x.com/DeanRomero10" ], "knowsAbout": ["SEO técnico", "Datos estructurados", "Auditoría web"] } </script>
Con este código en nuestra página de autor conseguimos reforzar la autoría y experiencia de los contenidos que creamos, aumentamos la confianza y facilitamos a Google que pueda relacionarnos con otros sitios o publicaciones si coinciden las señales.
¿Qué diferencia hay entre marcar a un autor con Person y simplemente poner su nombre en el texto?
- Solo nombre: Google lo puede leer, pero probablemente no lo vincule a otros contextos.
- Con Person: puedes enlazar biografía, credenciales, redes sociales, etc. En definitiva, das más contexto para mejorar el EEAT.
Citation para referencias externas
Citation no es realmente un tipo de Schema, sino una propiedad que puedes usar dentro de otros tipos de datos, como un Article, para indicar de dónde proviene una afirmación, idea o dato.
"citation": [ { "@type": "WebPage", "name": "Introducción al lenguaje de marcado de datos estructurados en la Búsqueda de Google", "url": "https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data?hl=es-419" }, { "@type": "Article", "name": "Rich snippets", "url": "https://es.wikipedia.org/wiki/Rich_snippets" } ]
Es el elemento ideal para citar otras fuentes y reforzar así la veracidad de un contenido de cara a Google.
Otros tipos de datos estructurados de propósito más general
Para acabar, vamos a ver algunos datos estructurados que pueden ser utilizados en cualquier tipo de web, ya que permiten describir elementos que pueden aparecer en una página, ayudando así a Google a reconocerlos y a enriquecer los resultados de búsqueda con formatos más visuales.
BreadcrumbList para las migas de pan
BreadcrumbList permite marcar las migas de pan que ves en muchas webs (esa ruta de navegación del tipo “Inicio > Blog > Artículos SEO”).
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Inicio", "item": "https://www.ejemplo.com/" }, { "@type": "ListItem", "position": 2, "name": "Blog", "item": "https://www.ejemplo.com/blog" }, { "@type": "ListItem", "position": 3, "name": "Errores comunes con Schema", "item": "https://www.ejemplo.com/blog/errores-schema" } ] } </script>
Le ayuda a Google a entender la jerarquía de tu sitio y puede reemplazar la URL en los resultados por esta estructura.
FAQPage para las preguntas frecuentes
FAQPage se usa para marcar secciones de preguntas frecuentes, donde el usuario ve la pregunta y su respuesta directamente.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [ { "@type": "Question", "name": "¿Qué son los datos estructurados?", "acceptedAnswer": { "@type": "Answer", "text": "Es una forma de etiquetar tu web para que los buscadores la entiendan mejor." } }, { "@type": "Question", "name": "¿Apareceré mejor posicionado si los uso?", "acceptedAnswer": { "@type": "Answer", "text": "Ayudan mucho a mejorar la visibilidad en las SERP, pero no garantizan mejores posiciones." } } ] } </script>
Es uno de los formatos más visibles de la SERP, aunque Google ha empezado a limitar su uso a páginas “relevantes” y “útiles”.
VideoObject para los vídeos
VideoObject permite describir un vídeo embebido en tu página: título, miniatura, duración, fecha de publicación, descripción, etc.
<script type="application/ld+json"> { "@context": "https://schema.org", "@type": "VideoObject", "name": "Cómo implementar datos estructurados", "description": "Guía rápida para añadir JSON-LD en una web paso a paso.", "thumbnailUrl": "https://www.ejemplo.com/img/thumb-video-schema.jpg", "uploadDate": "2025-09-20", "duration": "PT3M45S", "contentUrl": "https://www.ejemplo.com/videos/schema.mp4", "embedUrl": "https://www.youtube.com/embed/abc123" } </script>
Si Google lo acepta, puedes aparecer con una miniatura destacada o incluso en carruseles de vídeos.
En resumen
Los datos estructurados son una forma de hablarle a Google (y a otros sistemas) en un idioma que entiende sin problemas. De decirle: “esto es un producto, esto es un autor, esto es una receta” y que lo sepa sin tener que adivinarlo.
Y cuanto mejor lo comprenda, más fácil será que te muestre entre sus resultados de un modo que llame la atención del usuario: con estrellas, con fechas, con miniaturas, con enlaces directos. O simplemente, más arriba.
Así que, ahora que ya conoces la importancia de introducir los datos estructurados en tu web y has visto lo fácil que es, ¿vas a dejar pasar la oportunidad de ganar visibilidad para tu proyecto?