Schema.org Event para Black Friday: datos estructurados para promociones semanales en eCommerce
Implementación correcta del marcado Schema.org con Event, Offer y Place para estructurar promociones semanales de Black Friday. Soluciona el error Missing field 'location' y garantiza que Google indexe cada promoción semanal de forma independiente.
Datos estructurados para Black Friday: que Google entienda tus promociones semanales
El objetivo es estructurar correctamente las promociones de Black Friday en un eCommerce usando Schema.org, para que Google y otros motores de búsqueda comprendan la jerarquía del evento: un evento principal (todo el período de Black Friday) con cuatro subEventos semanales, cada uno con sus propias ofertas y fechas.
Sin este marcado, las promociones semanales aparecen como contenido genérico. Con él, Google puede mostrar rich results con fechas, disponibilidad y enlaces directos a cada semana de ofertas — mejorando CTR y visibilidad en temporada alta.
Event + Place
Offer específica
Missing field 'location' — campo Place presente en evento y subeventos
El error Missing field 'location': por qué ocurre y cómo se resuelve
Schema.org requiere el campo location en cualquier entidad de tipo Event. Si falta — tanto en el evento principal como en cada subEvent — Google marca el schema como inválido y no genera rich results.
location ausente en el bucle de subeventos
Al añadir promociones semanales como subEvent, cada uno hereda el tipo Event — y por tanto también necesita su propio campo location. Omitirlo en cualquiera de ellos genera el error en la herramienta de pruebas de Google y bloquea los rich results.
Place en evento principal y en cada subEvent
Añadir un bloque itemprop="location" itemscope itemtype="https://schema.org/Place" con name y url del eCommerce tanto en el evento contenedor como en cada subevento semanal. Para eventos online, combinar con eventAttendanceMode: OnlineEventAttendanceMode.
Tres tipos anidados: Event → subEvent → Offer
La jerarquía de Schema.org refleja la jerarquía real de la campaña: un evento marco, cuatro eventos semanales dentro, y una oferta específica por semana.
Agrupa todo el período de Black Friday (del 04/11 al 02/12). Incluye Place con nombre y URL del eCommerce, imagen del evento y modo de asistencia online. Es el contenedor padre de todos los subEventos.
Cada semana es un Event anidado con sus propias fechas, descripción y campo location obligatorio. Cuatro subeventos: semanas del 04/11, 11/11, 18/11 y 25/11.
Cada subevento incluye su Offer con fechas propias, disponibilidad InStock y enlace directo a la página de la promoción. Permite a Google mostrar disponibilidad en los resultados.
Implementación completa: microdata lista para pegar
Código de marcado semántico con microdata (compatible con cualquier CMS que permita insertar HTML). Adapta los nombres, URLs y fechas a tu campaña.
<article itemscope itemtype="https://schema.org/Event">
<h2 itemprop="name">Black Friday 2024 — Tu eCommerce</h2>
<meta itemprop="startDate" content="2024-11-04">
<meta itemprop="endDate" content="2024-12-02">
<link itemprop="eventAttendanceMode"
href="https://schema.org/OnlineEventAttendanceMode">
<!-- location obligatorio en Event principal -->
<div itemprop="location" itemscope itemtype="https://schema.org/Place">
<meta itemprop="name" content="Tu eCommerce">
<a itemprop="url" href="https://www.tuecommerce.es/black-friday">
Visita la página de Black Friday
</a>
</div>
<img itemprop="image"
src="https://www.tuecommerce.es/img/black-friday-2024.jpg"
alt="Ofertas Black Friday 2024 — Tu eCommerce">
<p itemprop="description">
Descubre las mejores ofertas de Black Friday en iluminación,
muebles y lámparas.
</p>
<!-- subEvent semana 1 -->
<div itemprop="subEvent" itemscope itemtype="https://schema.org/Event">
<meta itemprop="name" content="Promoción Semana 1 — Black Friday">
<meta itemprop="startDate" content="2024-11-04">
<meta itemprop="endDate" content="2024-11-10">
<link itemprop="eventAttendanceMode"
href="https://schema.org/OnlineEventAttendanceMode">
<div itemprop="location" itemscope itemtype="https://schema.org/Place">
<meta itemprop="name" content="Tu eCommerce">
</div>
<p itemprop="description">Primera promoción Black Friday disponible.</p>
<div itemprop="offers" itemscope itemtype="https://schema.org/Offer">
<meta itemprop="name" content="Oferta Semana 1">
<meta itemprop="startDate" content="2024-11-04">
<meta itemprop="endDate" content="2024-11-10">
<meta itemprop="availability" content="https://schema.org/InStock">
<a itemprop="url" href="https://www.tuecommerce.es/promocion-semana-1">
Ver detalles
</a>
</div>
</div>
<!-- Repite el bloque subEvent para semanas 2, 3 y 4
cambiando name, startDate, endDate y url -->
</article>
Tres puntos críticos: validación, URLs y redes sociales
- Valida con Rich Results Test antes de publicar
- Usa la herramienta de Rich Results Test de Google para verificar que el marcado no tiene errores ni advertencias. Especialmente importante comprobar que
locationestá presente en el evento principal y en cadasubEvent— es el error más frecuente y bloquea todos los rich results de la campaña. - URLs correctas y disponibles en las fechas indicadas
- Las URLs de cada oferta en el campo
itemprop="url"de cadaOfferdeben estar activas durante el período destartDateaendDate. Una URL que devuelve 404 durante el período de disponibilidadInStockgenera inconsistencias que Google puede penalizar. - Sincroniza el schema con la comunicación en redes sociales
- Las fechas del schema y las fechas anunciadas en redes sociales deben coincidir exactamente. Si anuncias en Instagram que la semana 2 empieza el lunes 11, el
startDatedel segundosubEventdebe ser2024-11-11. Las discrepancias generan señales contradictorias para Google sobre la disponibilidad real de las ofertas.
Yel Martínez, Digital Strategist & Technologist — especialista en SEO técnico, datos estructurados y estrategia de visibilidad para eCommerce en temporadas de alta competencia. Para proyectos de SEO técnico, auditoría de datos estructurados o estrategia de contenidos: contacto.
