El descuento nativo Buy X Get Y de Shopify limita cuántos productos puedes marcar como elegibles, un límite ampliamente reportado por comerciantes y el soporte de Shopify como 100 productos, y se aplica un número fijo de veces por pedido en lugar de repetirse conforme crece el carrito. Esa combinación es por qué no puedes ejecutar un verdadero 3 por 2 de tienda completa en un catálogo de varios cientos de artículos, y por qué un cliente que compra nueve productos elegibles no obtiene automáticamente tres gratis. Para ejecutar Buy X Get Y de tienda completa o que se repita, necesitas un descuento construido con Shopify Functions, que no tiene tal límite de productos y puede reaplicar la oferta cada vez que se cumple la cantidad de compra.
Esta guía explica cómo funciona el Buy X Get Y nativo, exactamente dónde se detiene (el límite de productos, el comportamiento sin repetición, el matiz del artículo más barato, y cómo se cuentan las variantes), por qué existen esos límites, los workarounds que los comerciantes buscan y por qué los pedidos en borrador y las colecciones duplicadas rompen silenciosamente códigos, análisis, y checkout acelerado, y la forma basada en Functions para ejecutar 3 por 2 y compra 6 obtén 2 en tu catálogo completo.
¿Tiene Buy X Get Y de Shopify un límite de productos?
Sí. Cuando construyes un descuento Buy X Get Y en el admin de Shopify, eliges qué productos o colecciones el cliente debe comprar y cuáles obtienen descuento. Añadir esos artículos elegibles uno por uno se encuentra con un techo. Los comerciantes en los foros de Shopify reportan que el constructor deja de permitirles añadir productos una vez alcanzan 100, y el soporte de Shopify ha confirmado el mismo límite en esos hilos. En un hilo ampliamente leído de Shopify Partner titulado"Buscando un Workaround para el Límite de 100 Productos de Shopify en Buy X Get Y", un comerciante intentando ejecutar un simple 3 por 2 en un catálogo grande es informado que hay un límite duro de 100 productos y que ninguna configuración nativa lo elimina.
Una nota rápida sobre precisión. La documentación pública de desarrollador de Shopify describe losobjetos de descuento Buy X Get Yy su comportamiento, pero no imprime un exacto "100" en la referencia de API. Así que trata 100 como el límite nativo ampliamente reportado que comerciantes y el soporte de Shopify citan en el Centro de Ayuda y comunidad, en lugar de un número grabado en el contrato de plataforma. El punto práctico no cambia: Buy X Get Y nativo no está diseñado para cubrir un catálogo completo grande, y una vez pasas el límite no puedes añadir más productos elegibles.
El límite muerde más duro en exactamente las tiendas que quieren esta promoción más. Una marca de ropa de 400 SKU ejecutando "compra cualquier 3, el más barato gratis" no puede seleccionar cada producto. Una tienda de artículos para el hogar con 600 artículos no puede poner su rango completo en un 3 por 2 de mezcla y combinación. Terminas capeando la promoción en 100 artículos arbitrariamente o dividiéndola en varios descuentos, cada uno con su propia lista de elegibilidad, que es frágil y fácil de equivocarse.
PLACEHOLDER DE IMAGEN (Imagen 1): El muro de 100 productos
Visual sugerida: Un diagrama limpio de 16:9 en un fondo blanco. Una gran cuadrícula de producto de pequeños mosaicos de artículos se desvanece de sólido violeta (los primeros 100, etiquetados como "elegible") en mosaicos descoloridos (etiquetados como "no se puede añadir"), con una línea vertical de oro audaz marcada "límite de 100 productos" separándolos. Un pequeño contador en la esquina lee "100 / 400 productos." Estilo plano de vector, colores de marca violeta y oro, etiquetas sin serifa, sin fotografía.
¿Cómo funciona realmente el Buy X Get Y nativo?
Buy X Get Y, a veces llamado BXGY o BOGO, es uno de los tipos de descuento construidos de Shopify. Recompensa a un cliente con artículos descontados o gratis una vez que compra una cantidad calificante de otros artículos. Es un descuento de clase de producto, lo que significa que reduce el precio de líneas de carrito específicas en lugar del subtotal del pedido o envío.
Las mitades "el cliente compra" y "el cliente obtiene"
Cada descuento Buy X Get Y tiene dos mitades. El lado "el cliente compra" establece el disparador: una cantidad mínima (o un gasto mínimo) de productos o colecciones que eliges. El lado "el cliente obtiene" establece la recompensa: una cantidad de productos o colecciones que se vuelven gratis o descontados por un porcentaje o cantidad fija. Lamutación de creación de Buy X Get Yde Shopify expone exactamente estos campos,customerBuysycustomerGets, y los artículos en cada lado pueden ser productos o colecciones. Una configuración clásica es compra 2 de una colección, obtén 1 de la misma colección gratis, que produce la familiar oferta de "compra 2, obtén 1".
El matiz del artículo más barato
Para una promoción estilo "3 por 2", la intención es que el más barato de los tres artículos elegibles se vuelva gratis. Buy X Get Y nativo puede hacer el artículo "obtén" gratis, pero no tiene un modo dedicado "siempre descuenta el artículo elegible más barato en el carrito" de la forma que los comerciantes frecuentemente asumen. Cuando las listas de compra y obtén se superponen (el cliente compra de y obtén de la misma colección), Shopify sí aplica el descuento a la línea elegible de menor precio, que se aproxima a lo más barato gratis para un conjunto único. El problema comienza cuando el carrito contiene más de un conjunto, porque la oferta no sigue encontrando y liberando el siguiente artículo más barato conforme crecen las cantidades. Ese es el problema de repetición, cubierto abajo.
Cómo se cuentan las variantes
Buy X Get Y funciona en el nivel de producto y variante, que es una fortaleza y una trampa. Puedes incluir variantes específicas, que es lo que un comerciante quiere cuando solo algunos tamaños o colores deben calificar. Pero la elegibilidad sigue siendo una lista finita de productos o colecciones, así que una tienda que quiere "cualquier variante de cualquier producto, mezcla y combinación" se ejecuta directamente de nuevo en el límite de productos. No puedes expresar "el catálogo completo, todas las variantes, compra cualquier 3" como una sola regla nativa una vez el catálogo excede el límite.
¿Por qué Buy X Get Y nativo no puede repetirse?
Este es el segundo muro, y para muchas tiendas es peor que el límite de productos. Buy X Get Y nativo se aplica un número limitado de veces por pedido en lugar de reaplicarse para cada conjunto elegible en el carrito. La propia mutación de creación de Shopify incluye uncampo usesPerOrderLimity el ejemplo documentado lo establece en1, significando que el descuento se otorga una vez para ese pedido. No hay botón nativo que diga "reaplicar esta oferta automáticamente cada vez que el cliente compra otro conjunto elegible."
Juégalo. Ejecutas "compra 6, obtén 2 gratis." Un cliente añade 12 artículos elegibles a su carrito, claramente dos conjuntos completos. Esperan 4 artículos gratis. Buy X Get Y nativo les da 2, porque la oferta se activó una vez y se detuvo. Lo mismo rompe un 3 por 2 de tienda completa: un cliente con 9 artículos elegibles en el carrito debe obtener 3 gratis (tres conjuntos de tres), pero el descuento nativo libera solo un artículo. El póster de promo del comerciante dice una cosa y el checkout dice otra, lo que erosiona la confianza y genera tickets de soporte.
Los comerciantes describen queriendo exactamente este patrón en los foros: "compra 6 obtén 2 gratis, compra 9 obtén 3 gratis," una relación que escala con la cantidad del carrito. Buy X Get Y nativo no fue construido para recalcular por conjunto, así que la oferta ya sea cumple menos o fuerza al comerciante a limitar la promoción en formas que los clientes encuentran confusas.
¿Por qué existe el límite de 100 productos?
El límite no es crueldad arbitraria. Los descuentos nativos almacenan su elegibilidad como una lista explícita de derechos de producto o colección adjuntos al registro de descuento, y Shopify mantiene esa lista limitada para que el descuento sea rápido de evaluar en cada carrito y en checkout. Un descuento que tuviera que escanear una lista ilimitada de miles de productos específicos en cada actualización de carrito sería más lento y más difícil de mantener consistente entre la página del carrito, el checkout, y los checkouts acelerados. Limitar la lista de derechos mantiene los descuentos nativos predecibles.
La opción de diseño que elimina el techo es dejar de almacenar una lista gigante de productos individuales y en lugar de ello evaluar la elegibilidad con lógica en tiempo de ejecución. Eso es precisamente lo que hacen Shopify Functions. En lugar de "aquí hay 400 IDs de producto específicos", una Function puede ser informada "cualquier artículo llevando esta etiqueta" u "cualquier artículo en esta colección" y decidir, artículo por artículo, conforme el carrito es calculado, si cada línea califica. Porque la regla es lógica en lugar de una lista almacenada, el tamaño del catálogo deja de importar. Esta es la misma arquitectura que Shopify mismo señala a los comerciantes para el comportamiento de descuento que el constructor nativo no puede expresar.
PLACEHOLDER DE IMAGEN (Imagen 2): Elegibilidad basada en lista versus basada en lógica
Visual sugerida: Una ilustración dividida de 16:9 en dos paneles. Panel izquierdo etiquetado "Nativo: lista almacenada" muestra un registro de descuento sosteniendo una pila fija de 100 tarjetas de producto con un sello rojo "completo". Panel derecho etiquetado "Functions: una regla" muestra un chip de regla único leyendo "tag = sale" con una flecha que se abre en abanico a una cuadrícula ilimitada de mosaicos de producto, todos marcados en verde. Un divisor central. Colores de marca violeta y oro, estilo vector plano, sin fotografía.
¿Qué workarounds buscan los comerciantes, y por qué se rompen?
Porque Buy X Get Y nativo se detiene corto, las tiendas buscan hacks. Cada uno cambia el límite por un problema diferente, usualmente peor.
Descuentos duplicados, uno por 100 productos
El movimiento obvio es dividir el catálogo en fragmentos de 100 y crear un descuento Buy X Get Y separado para cada fragmento. Funciona más o menos hasta que piensas en el carrito. Un cliente que compra dos artículos elegibles que resultan estar en diferentes fragmentos no activa la cantidad de compra de ningún descuento individual, así que la promoción falla silenciosamente para carritos mezclados. También multiplicas tu mantenimiento: cada nuevo producto tiene que ser archivado en el fragmento correcto, y Shopify limita cuántos descuentos activos puedes ejecutar. Este enfoque lucha contra el propósito completo de la promoción, que es dejar que los clientes se mezclen y combinen libremente en todo el rango.
Pedidos en borrador con descuentos manuales
Una sugerencia común es construir el pedido como un borrador en el admin, aplicar el descuento a mano, y enviar al cliente una factura. Esto sí elimina el límite de productos, pero rompe las cosas que hacen que una vitrina funcione. Un flujo de pedido en borrador no es el checkout normal: no deja que el cliente aplique sus propios códigos de descuento encima, no se ejecuta a través del análisis estándar de la misma forma, y evita completamente los checkouts acelerados. Compradores de Shop Pay, Apple Pay, y Google Pay nunca ven un pedido en borrador construido a mano, así que tus clientes que se convierten más rápido no pueden usar la oferta en absoluto. Los pedidos en borrador están bien para la venta ocasional telefónica. No son un mecanismo para ejecutar una promoción de autoservicio a escala.
El truco del "producto paquete falso"
Para precios de conjunto repetidor, algunos comerciantes crean un único producto falso preciosignado al total del conjunto, por ejemplo un producto "paquete 3 por 2" al precio de dos artículos, y ocultan los productos reales. Esto destruye el inventario (el SKU del paquete es desacoplado del stock real), destruye la comercialización (los clientes no pueden navegar y elegir libremente), y destruye el reporte (las ventas se suman bajo un SKU falso). Tampoco puede expresar "cualquier 3 de este rango grande", que es la flexibilidad que un 3 por 2 de mezcla y combinación se supone que debe dar.
El patrón entre los tres: cada workaround cambia una promoción limpia, de autoservicio, nativa de checkout para algo manual, frágil, o invisible a los compradores que se convierten mejor. Ninguno de ellos restaura lo que los comerciantes realmente quieren, que es comportamiento nativo de Buy X Get Y sin el límite y con lógica de repetición adecuada.
Cómo ejecutar Buy X Get Y de tienda completa y que se repita con Shopify Functions
La solución duradera es un descuento construido con Shopify Functions, el mismo motor del lado del servidor que Shopify usa para dejar que las apps personalicen la lógica de descuento. Un Buy X Get Y basado en Functions resuelve ambos muros a la vez.
Primero, la elegibilidad se vuelve una regla en lugar de una lista. Definas el alcance de la oferta por etiqueta o por colección, y la Function evalúa cada línea de carrito contra esa regla en tiempo de cálculo. No hay una lista de derechos de 100 productos que llenar, así que un catálogo de 400 productos o 4,000 productos es tratado de la misma forma. Nuevos productos que coinciden la etiqueta se integran automáticamente en el momento que los añades, sin descuento que re-editar.
Segundo, la oferta puede repetirse. Una Function puede reaplicar la relación compra-obtén para cada conjunto elegible en el carrito, así que "compra 3, obtén 1 gratis" se vuelve 2 gratis en 6 artículos y 3 gratis en 9 artículos, dentro de una oferta. La misma lógica impulsa "compra 6, obtén 2 gratis" duplicando a 4 gratis en 12 artículos. Y porque la Function se ejecuta dentro del pipeline de checkout propio de Shopify, la página del carrito, la página de checkout, y los checkouts acelerados todos calculan el resultado idéntico, así que un comprador de Shop Pay obtiene exactamente lo que el cajón del carrito prometió.
Tercero, el comportamiento del artículo más barato se vuelve explícito. Una Function puede ser informada para siempre descontar el artículo elegible de menor precio en cada conjunto, que es lo que un verdadero 3 por 2 significa, u aplicar un porcentaje en lugar de completamente gratis para una oferta más suave. De acuerdo con la documentación de desarrollador de Shopify, elmodelo de descuento Buy X Get Ytiene limitaciones y consideraciones documentadas, y Functions son el camino soportado para ir más allá.
Ejemplo trabajado: un 3 por 2 de tienda completa y un compra 6 obtén 2 que se repite
Hagamos ambas promociones concretas.
Promoción A: 3 por 2 en un catálogo de 400 productos
Una tienda de ropa quiere "compra cualquier 3, obtén el más barato gratis" en todo su rango de 400 SKU, y quiere que nuevas llegadas se unan automáticamente. Con una oferta basada en Functions, la elegibilidad es una etiqueta (digamos,promo-3for2) aplicada al catálogo completo, la cantidad de compra es 3, la cantidad de obtén es 1, el descuento es 100 por ciento en el artículo elegible más barato, y la repetición está activada.
Aquí te mostramos cómo un carrito real se resuelve.
Buy X Get Y nativo no puede expresar esto en dos niveles: no puede cubrir 400 productos en una lista de elegibilidad, y incluso dentro de un conjunto cubierto liberaría solo un artículo para el carrito de 9 artículos en lugar de tres. La oferta basada en Functions maneja tanto el tamaño del catálogo como la repetición.
Promoción B: un compra 6 obtén 2 que se repite
Una marca de snacks ejecuta "compra 6 barras, obtén 2 gratis", y el póster de promo implica que debería duplicarse para un carrito de 12 barras. La configuración es cantidad de compra 6, cantidad de obtén 2, repetición activada, 100 por ciento en los artículos de obtén.
Un carrito de 12 barras obtiene 4 barras gratis, dos repeticiones del conjunto de 6 por 2, que es exactamente lo que el póster prometió. Buy X Get Y nativo, aplicándose una sola vez por pedido, daría 2 barras gratis para el mismo carrito de 12 barras y vende silenciosamente menos la oferta.
El punto de ambas tablas no es que las matemáticas sean difíciles. Es que Buy X Get Y nativo se detiene en el primer conjunto y en 100 productos, y una oferta basada en Functions sigue adelante.
Ejecuta esto confiablemente con Stackable
Si prefieres configurar esto que construir una Function personalizada de Shopify,Stackableejecuta Buy X Get Y más allá de los límites nativos, honestamente y dentro de las reglas reales de Shopify.
- Sin techo de 100 productos. Defines el alcance de la elegibilidad por etiqueta, colección, o una lista explícita sin límite superior, así que un 3 por 2 de tienda completa cubre tu catálogo completo y nuevos productos que coinciden la regla se integran automáticamente.
- La lógica de repetición es un solo botón. "Compra 3, obtén 1 gratis" se reaaplica conforme crece el carrito, así que 6 artículos obtienen 2 gratis y 9 artículos obtienen 3 gratis, y "compra 6, obtén 2 gratis" se duplica a 4 gratis en 12 artículos, todo en una oferta.
- Artículo más barato gratis es el predeterminado, y puedes cambiarlo a un porcentaje para una oferta más suave, o fijar el descuento a un artículo específico.
- Las matemáticas se ejecutan dentro de unaShopify Function, así que la página del carrito, el checkout, y checkouts acelerados como Shop Pay todos calculan el mismo resultado. No hay hack de pedido en borrador, no hay SKU de paquete falso, y no hay desviación tema-versus-checkout.
Instala Stackable gratis y lanza un 3 por 2 en toda la tienda, repetible y exacto al centavo, en usestackable.com/pricing. 🚀
La conclusión
- Buy X Get Y nativo limita cuántos productos puedes marcar como elegibles, un límite que comerciantes y el soporte de Shopify ampliamente reportan como 100, así que no puede cubrir un catálogo grande en una regla.
- Buy X Get Y nativo también se aplica un número fijo de veces por pedido, así que no se repite: un carrito de 9 artículos en un 3 por 2 libera 1 artículo, no 3, y un carrito de 12 barras en compra 6 obtén 2 libera 2, no 4.
- Los workarounds todos cambian el límite por un problema peor: descuentos duplicados rompen mezcla y combinación, pedidos en borrador evitan códigos y checkout acelerado, y SKUs de paquete falso destruyen inventario y reporte.
- El límite existe porque descuentos nativos almacenan la elegibilidad como una lista limitada. Shopify Functions evalúan la elegibilidad como una regla en tiempo de ejecución, así que el tamaño del catálogo deja de importar.
- Un Buy X Get Y basado en Functions se ejecuta en tienda completa y puede repetirse por conjunto, siempre descontando el artículo elegible más barato, con el mismo total en la página del carrito, checkout, y Shop Pay.
- Herramientas como Stackable te dan sin límite de productos, un botón de repetición, y artículo más barato gratis por defecto, así que un verdadero 3 por 2 en tu catálogo completo es unos pocos ajustes en lugar de una Function personalizada.
Artículos relacionados
- BOGO y Buy X Get Y más allá del límite de 100 productos: ejecuta 3 por 2 en tienda completa con lógica de repetición y artículo más barato gratis.
- Apilamiento de descuentos, hecho correctamente: cómo se combinan los tres botones de combinación por clase.
- Desgloses de cantidad y niveles de volumen: recompensa carritos más grandes con precios escalonados por producto.
- Cómo funciona el apilamiento de descuentos en Shopify: por qué el nativo solo aplica el más alto, y cómo combinar ofertas correctamente.
- Ofertas multibuy repetidas que se recalculan por conjunto: "4 por GBP 10, 8 por GBP 20" que se recalcula para cada conjunto.
- Precios de Stackable: planes, el nivel gratuito, y qué incluye cada uno.


