Para que las variaciones de WooCommerce sean legibles por IA, el schema correcto es ProductGroup: un grupo padre que declara en variesBy qué cambia (talla, color) y lista cada variante como Product con su propio SKU, precio y stock. Así el agente entiende que el polo en M rojo y en L azul son el mismo producto en versiones, no cinco productos sueltos compitiendo entre sí. Aquí el código y el paso a paso completo.
Tabla de Contenidos
¿Por qué las variaciones confunden a los agentes?
Porque la forma más común de publicarlas es la peor: cinco fichas sueltas (Polo Rojo M, Polo Rojo L, Polo Azul M) que para una máquina son cinco productos sin relación. El agente que busca un polo azul en talla L encuentra una ficha suelta sin contexto: no sabe que existe en más colores, no entiende cuál es la diferencia entre las cinco páginas casi idénticas y, peor, las ve competir entre sí por la misma búsqueda con contenido duplicado.
El modelo de grupo resuelve las tres confusiones de una vez: una entidad padre que concentra la autoridad y el posicionamiento, variantes declaradas con su relación explícita y datos exactos (precio, stock) a nivel de cada versión. Es la diferencia entre presentarle al agente un catálogo y presentarle un rompecabezas (el contexto de por qué importa está en qué es el comercio agéntico).
El modelo correcto: un grupo, muchas variantes
Tres conceptos y ya: el ProductGroup es el producto conceptual (el polo piqué ClassicFit); variesBy declara qué dimensiones cambian entre versiones (talla y color); y hasVariant lista cada versión concreta como un Product completo con su SKU, su precio, su stock y sus atributos específicos. El grupo describe; las variantes transan.
Este modelo calza exacto con el producto variable de WooCommerce: el producto padre es el grupo, sus atributos son el variesBy y cada variación generada es un hasVariant. Si modelaste bien en WooCommerce, el schema correcto es una consecuencia; si modelaste productos sueltos, ningún plugin puede inventar la relación que no existe.
El código: ProductGroup con hasVariant
{
"@context": "https://schema.org",
"@type": "ProductGroup",
"name": "Polo piqué ClassicFit",
"description": "Polo de piqué peinado de 220 g, cuello reforzado, para uniformes y bordado corporativo.",
"brand": { "@type": "Brand", "name": "MarcaEjemplo" },
"productGroupID": "POLO-CF",
"variesBy": [ "https://schema.org/size", "https://schema.org/color" ],
"hasVariant": [
{
"@type": "Product",
"name": "Polo piqué ClassicFit talla M rojo",
"sku": "POLO-CF-M-R",
"size": "M",
"color": "Rojo",
"offers": {
"@type": "Offer",
"priceCurrency": "PEN",
"price": "49.00",
"availability": "https://schema.org/InStock"
}
},
{
"@type": "Product",
"name": "Polo piqué ClassicFit talla L azul",
"sku": "POLO-CF-L-A",
"size": "L",
"color": "Azul",
"offers": {
"@type": "Offer",
"priceCurrency": "PEN",
"price": "49.00",
"availability": "https://schema.org/OutOfStock"
}
}
]
}
Lectura del bloque: el grupo lleva la identidad compartida (nombre, marca, descripción) y un productGroupID que es tu código base; variesBy anuncia las dimensiones de variación con el vocabulario del estándar; y cada variante del hasVariant es un Product autosuficiente, con el detalle clave de que el stock se declara por versión (mira el OutOfStock de la L azul mientras la M roja sigue InStock: esa granularidad es exactamente lo que un agente necesita para no recomendar lo agotado).
Paso a paso en WooCommerce
Paso 1: Modela el producto variable en WooCommerce
Crea el producto como variable, define los atributos globales que varían (talla, color) y genera las variaciones desde ellos. Nunca productos simples separados por color. Resultado verificable: una sola ficha con selectores de atributos que cambian precio, foto y stock.
Paso 2: Asigna SKU propio a cada variación
El grupo lleva su código base y cada variación su SKU único derivado (POLO-CF-M-R para la M roja). Es lo que permite rastrear stock, cotizar sin ambigüedad y declarar cada variante en el schema. Resultado verificable: ninguna variación comparte SKU con otra.
Paso 3: Define precio y stock por variación
Activa el inventario a nivel de variación y carga precio y stock reales de cada una. Resultado verificable: agotar la talla M en el almacén la muestra agotada en la web mientras la L sigue comprable.
Paso 4: Verifica el schema que genera tu plugin
Con el producto variable bien modelado, tu plugin de SEO emite la estructura de grupo con variantes (o al menos el Product con offers agregadas). Compárala contra el código de esta guía. Resultado verificable: el markup de la ficha referencia las variantes o el rango, sin contradecir la página.
Paso 5: Conecta imagen y variación
Asigna a cada variación de color su foto correspondiente, para que elegir rojo muestre el rojo. Es usabilidad para el humano y coherencia para la máquina que asocia imagen y variante. Resultado verificable: cambiar el selector de color cambia la foto.
Paso 6: Valida y corrige en el validador
Pasa la ficha por la prueba de resultados enriquecidos: variantes detectadas, sin SKUs duplicados ni precios contradictorios. Resultado verificable: cero errores y las variantes aparecen como tales, no como productos huérfanos.
¿Cuándo separar en fichas distintas de verdad?
Cuando cambia el uso o el comprador, no el atributo. La versión doméstica y la industrial de una herramienta responden a búsquedas distintas, compradores distintos y precios de otra liga: son dos productos con dos fichas, aunque compartan apellido. El polo en cinco colores es un producto con cinco variantes, porque quien busca uno aceptaría ver los demás.
La prueba práctica: ¿el comprador de la versión A consideraría la versión B como alternativa directa? Si sí, son variantes de un grupo; si no, son fichas separadas. Y en la frontera (el combo de 2 contra el de 12 unidades), decide por cómo busca tu cliente, que para eso están tus métricas de búsqueda interna.
Errores comunes con variaciones
El clásico que motivó esta guía: variaciones publicadas como productos sueltos, multiplicando fichas duplicadas que se canibalizan y desconciertan al agente.
SKU compartido entre variaciones: dos versiones con el mismo código vuelven imposible cotizar, rastrear stock y declarar el schema sin conflicto.
Stock global sobre grupo variable: la talla agotada se vende igual y el reclamo llega con captura.
Variaciones fantasma: combinaciones generadas en masa (todas las tallas en todos los colores) que nunca existieron en el almacén. Genera solo lo que vendes; el resto es markup mentiroso en potencia.
Preguntas frecuentes
¿Cada variación necesita su propia URL?
No hace falta: WooCommerce sirve las variaciones con parámetros sobre la URL del producto padre, y esa URL del grupo funciona como la canónica que posiciona y se cita. Lo importante es que cada variante exista como entidad en el schema (con su SKU y stock), no que tenga página propia. URLs separadas por variación solo dispersan la autoridad de la ficha.
¿El stock se declara por variación o por grupo?
Por variación, siempre: el agente necesita saber que la talla M está agotada aunque la L sobre. WooCommerce lo maneja nativo si activas el inventario a nivel de variación, y el schema hereda esa precisión. Un disponible global sobre un grupo con la mitad de tallas agotadas es la versión moderna del vendedor que dice sí hay y después se disculpa.
¿Qué hago si las variaciones tienen precios muy distintos?
Declara el precio exacto en cada variante y deja que la página del grupo muestre el rango (desde S/ X hasta S/ Y, generado por WooCommerce). Para la máquina, el dato operativo es el de la variante; el rango del grupo solo orienta al humano que escanea. Lo que no debes hacer es publicar el precio de la variante más barata como si fuera el del grupo entero.
¿Declaro tallas en sistema peruano, americano o europeo?
Declara el sistema que usa tu cliente al comprar y sé consistente en todo el catálogo; si tu rubro mezcla compradores (calzado, por ejemplo), publica la tabla de equivalencias en la ficha y usa un solo sistema como principal en atributos y schema. La inconsistencia entre fichas (una en US, otra en EU) confunde a la máquina y multiplica las devoluciones por talla.
Audita hoy tu producto variable más vendido: ¿es un producto con variaciones o cinco fichas sueltas disfrazadas? Si es lo segundo, la migración a producto variable con redirecciones es tu siguiente tarea técnica. ¿Prefieres que el remodelado completo (variaciones, SKUs, schema validado) lo hagamos nosotros? Pide tu propuesta en el cotizador online.








