Vai al contenuto

Il limite di 100 prodotti di Shopify su Buy X Get Y: come eseguire 3-for-2 su tutto il catalogo

By Stackable TeamPublished on July 21, 2026Shopify How-To#bogo#buy-x-get-y
Il limite di 100 prodotti di Shopify su Buy X Get Y: come eseguire 3-for-2 su tutto il catalogo

Il Buy X Get Y nativo di Shopify limita quanti prodotti potete marcare come idonei, un limite ampiamente segnalato dai commercianti e dal supporto Shopify come 100 prodotti, e si applica un numero fisso di volte per ordine piuttosto che ripetersi al crescere del carrello. Questa combinazione è il motivo per cui non potete eseguire un vero 3-for-2 su tutto lo store su un catalogo di centinaia di articoli, e il motivo per cui un cliente che acquista nove prodotti qualificanti non ottiene automaticamente tre di loro gratis. Per eseguire Buy X Get Y su tutto lo store o con ripetizione, avete bisogno di uno sconto costruito con Shopify Functions, che non ha tale limite di prodotti e può riapplicare l'offerta ogni volta che la quantità buy viene raggiunta.

Questa guida spiega come funziona il Buy X Get Y nativo, esattamente dove si ferma (il limite di prodotti, il comportamento no-repeat, la sfumatura dell'articolo più economico, e come le varianti sono conteggiate), perché questi limiti esistono, i workaround che i commercianti cercano e perché i draft order e le collezioni duplicate rompono silenziosamente i codici, l'analitica e il checkout accelerato, e il modo basato su Functions per eseguire 3-for-2 e buy-6-get-2 su tutto il catalogo.

Shopify Buy X Get Y ha un limite di prodotti?

Sì. Quando costruite uno sconto Buy X Get Y nell'admin di Shopify, scegliete quali prodotti o collezioni il cliente deve acquistare e quali ottengono lo sconto. Aggiungere questi articoli idonei uno per uno raggiunge un tetto. I commercianti nei forum di Shopify segnalano che il builder smette di lasciarli aggiungere prodotti una volta raggiunto il limite di 100, e il supporto Shopify ha confermato lo stesso limite in quei thread. In un thread molto letto della comunità di Shopify intitolato "Looking for a Workaround to Shopify's 100 Product Limit for Buy X Get Y", un commerciante che cerca di eseguire un semplice 3-for-2 su un catalogo grande viene detto che c'è un limite fisso di 100 prodotti e che nessuna impostazione nativa lo rimuove.

Una breve nota sulla precisione. La documentazione pubblica per sviluppatori di Shopify descrive gli oggetti di sconto Buy X Get Y e il loro comportamento, ma non stampa un "100" esatto nel riferimento API. Quindi trattate 100 come il limite nativo ampiamente segnalato che i commercianti e il supporto Shopify citano nel Centro assistenza e nella comunità, piuttosto che un numero inciso nel contratto della piattaforma. La conclusione pratica non cambia: il Buy X Get Y nativo non è progettato per coprire un intero catalogo grande, e una volta superato il limite non potete aggiungere più prodotti idonei.

Il limite colpisce più duramente proprio i negozi che desiderano questa promozione più di ogni altro. Un marchio di abbigliamento con 400 SKU che esegue "buy any 3, cheapest free" non può selezionare ogni prodotto. Un negozio di articoli per la casa con 600 articoli non può mettere la sua intera gamma in un mix-and-match 3-for-2. Finite per limitare la promozione a 100 articoli arbitrari o dividerla in più sconti, ciascuno con il suo elenco di idoneità, che è fragile e facile da fare male.

PLACEHOLDER IMMAGINE (Immagine 1): Il muro di 100 prodotti
Suggerimento visivo: Un diagramma pulito 16:9 su sfondo bianco. Una grande griglia di prodotti di piccole piastrelle di articoli si dissolve dal violetto solido (i primi 100, etichettati "eligible") in piastrelle grigie (etichettate "can't be added"), con una linea verticale d'oro in grassetto contrassegnata "100-product limit" che le separa. Un piccolo contatore nell'angolo legge "100 / 400 products." Stile vettoriale piatto, colori del marchio violetto e oro, etichette sans-serif, nessuna fotografia.

Come funziona effettivamente Buy X Get Y nativo?

Buy X Get Y, a volte chiamato BXGY o BOGO, è uno dei tipi di sconto built-in di Shopify. Premia un cliente con articoli gratuiti o scontati una volta che acquistano una quantità qualificante di altri articoli. È uno sconto di classe di prodotto, il che significa che riduce il prezzo di linee di carrello specifiche piuttosto che il subtotale dell'ordine o la spedizione.

I lati "customer buys" e "customer gets"

Ogni sconto Buy X Get Y ha due lati. Il lato "customer buys" imposta il trigger: una quantità minima (o una spesa minima) di prodotti o collezioni che scegliete. Il lato "customer gets" imposta la ricompensa: una quantità di prodotti o collezioni che diventano gratuiti o scontati di una percentuale o di un importo fisso. La mutazione di creazione Buy X Get Y di Shopify espone esattamente questi campi, customerBuys e customerGets, e gli articoli su ogni lato possono essere prodotti o collezioni. Una configurazione classica è acquistare 2 da una collezione, ottenere 1 dalla stessa collezione gratis, che produce la familiare offerta "buy 2, get 1".

La sfumatura dell'articolo più economico

Per una promozione in stile "3-for-2", l'intenzione è che l'articolo meno caro dei tre qualificanti diventi gratuito. Buy X Get Y nativo può rendere l'articolo "get" gratuito, ma non ha una modalità dedicata "always discount the cheapest eligible item in the cart" come i commercianti spesso assumono. Quando gli elenchi buy e get si sovrappongono (il cliente acquista da e ottiene dalla stessa collezione), Shopify applica lo sconto alla linea qualificante con prezzo più basso, che approssima il gratuito più economico per un singolo set. Il guaio inizia quando il carrello contiene più di un set, perché l'offerta non continua a trovare e rendere gratuito l'articolo successivo più economico al crescere delle quantità. Questo è il problema della ripetizione, coperto sotto.

Come le varianti sono conteggiate

Buy X Get Y funziona a livello di prodotto e variante, che è un punto di forza e una trappola. Potete includere varianti specifiche, che è quello che un commerciante vuole quando solo alcune taglie o colori devono qualificarsi. Ma l'idoneità è comunque un elenco finito di prodotti o collezioni, quindi un negozio che vuole "any variant of any product, mix and match" va dritto al limite di prodotti. Non potete esprimere "l'intero catalogo, tutte le varianti, buy any 3" come una singola regola nativa una volta che il catalogo supera il limite.

Perché il Buy X Get Y nativo non può ripetersi?

Questo è il secondo muro, e per molti negozi è peggio del limite di prodotti. Buy X Get Y nativo si applica un numero limitato di volte per ordine piuttosto che riapplicarsi per ogni set qualificante nel carrello. La propria mutazione di creazione di Shopify include un campo usesPerOrderLimit e l'esempio documentato lo imposta su 1, il che significa che lo sconto viene concesso una volta per tale ordine. Non c'è toggle nativo che dica "reapply this offer automatically every time the customer buys another qualifying set."

Giochiamolo. Eseguite "buy 6, get 2 free." Un cliente aggiunge 12 articoli qualificanti al suo carrello, chiaramente due set completi. Si aspettano 4 articoli gratis. Buy X Get Y nativo ne dà loro 2, perché l'offerta è partita una volta e si è fermata. La stessa cosa rompe un 3-for-2 su tutto lo store: un cliente con 9 articoli idonei nel carrello dovrebbe ottenere 3 gratis (tre set di tre), ma lo sconto nativo libera solo un articolo. Il poster della promozione del commerciante dice una cosa e il checkout dice un'altra, che erode la fiducia e genera ticket di supporto.

I commercianti descrivono di volere esattamente questo modello nei forum: "buy 6 get 2 free, buy 9 get 3 free," un rapporto che si scala con la quantità del carrello. Buy X Get Y nativo non è stato costruito per ricalcolare per set, quindi l'offerta o sottoperforma o costringe il commerciante a limitare la promozione in modi che i clienti trovano confusi.

Perché esiste il limite di 100 prodotti?

Il limite non è crudeltà arbitraria. Gli sconti nativi archiviano la loro idoneità come un elenco esplicito di diritti di prodotto o collezione allegati al record di sconto, e Shopify mantiene tale elenco limitato in modo che lo sconto rimanga veloce da valutare su ogni carrello e al checkout. Uno sconto che dovesse scansionare un elenco illimitato di migliaia di prodotti specifici su ogni aggiornamento del carrello sarebbe più lento e più difficile da mantenere coerente tra la pagina del carrello, il checkout e i checkout accelerati. Limitare l'elenco di diritti mantiene gli sconti nativi prevedibili.

La scelta di progettazione che rimuove il limite è smettere di archiviare una lista gigante di singoli prodotti e invece valutare l'idoneità con logica al runtime. Questo è precisamente quello che fanno Shopify Functions. Invece di "here are 400 specific product IDs," una Function può essere detto "any item carrying this tag" o "any item in this collection" e decidere, articolo per articolo, al momento del calcolo del carrello, se ogni riga si qualifica. Poiché la regola è logica piuttosto che un elenco archiviato, la dimensione del catalogo smette di importare. Questa è la stessa architettura verso cui Shopify stesso indirizza i commercianti per il comportamento dello sconto che il builder nativo non può esprimere.

PLACEHOLDER IMMAGINE (Immagine 2): Idoneità basata su elenco rispetto a basata su logica
Suggerimento visivo: Un'illustrazione in split-panel 16:9. Pannello sinistro etichettato "Native: stored list" mostra un record di sconto che contiene uno stack fisso di 100 carte di prodotto con un timbro rosso "full". Pannello destro etichettato "Functions: a rule" mostra un singolo chip di regola che legge "tag = sale" con una freccia che si espande a una griglia illimitata di piastrelle di prodotto, tutte controllate in verde. Un divisore centrale. Colori del marchio violetto e oro, stile vettoriale piatto, nessuna fotografia.

Quali workaround i commercianti provano, e perché si rompono?

Poiché il Buy X Get Y nativo è insufficiente, i negozi ricorrono a hack. Ognuno scambia il limite per un problema diverso, di solito peggiore.

Sconti duplicati, uno per 100 prodotti

La mossa ovvia è dividere il catalogo in chunk di 100 e creare uno sconto Buy X Get Y separato per ogni chunk. Funziona in qualche modo fino a quando non pensate al carrello. Un cliente che acquista due articoli qualificanti che capitano di rientrare in chunk diversi non attiva la quantità buy di nessuno sconto singolo, quindi la promozione fallisce silenziosamente per carrelli misti. Moltiplicate anche la vostra manutenzione: ogni nuovo prodotto deve essere archiviato nel chunk giusto, e Shopify limita quanti sconti attivi potete eseguire. Questo approccio combatte lo scopo intero della promozione, che è permettere ai clienti di mix and match liberamente attraverso la gamma.

Draft order con sconti manuali

Un suggerimento comune è costruire l'ordine come bozza nell'admin, applicare lo sconto a mano e inviare al cliente una fattura. Questo rimuove effettivamente il limite di prodotti, ma rompe le cose che fanno funzionare una vetrina. Un flusso di draft order non è il checkout normale: non permette al cliente di applicare i propri codici di sconto in più, non viene eseguito attraverso l'analitica standard allo stesso modo, e scavalca completamente i checkout accelerati. Gli acquirenti di Shop Pay, Apple Pay e Google Pay non vedono mai un draft order costruito a mano, quindi i vostri clienti che si convertono più velocemente non possono usare l'offerta affatto. I draft order vanno bene per la vendita telefonica occasionale. Non sono un meccanismo per eseguire una promozione self-serve su larga scala.

Il trucco del "fake bundle product"

Per il prezzo di set ripetuto, alcuni commercianti creano un singolo prodotto falso prezzato al totale del set, ad esempio un prodotto "3 for 2 bundle" al prezzo di due articoli, e nascondono i veri prodotti. Questo distrugge l'inventario (lo SKU del bundle è disaccoppiato dallo stock reale), distrugge il merchandising (i clienti non possono navigare e scegliere liberamente), e distrugge il reporting (le vendite si rollup sotto un fake SKU). Inoltre non può esprimere "any 3 from this large range," che è la flessibilità che un mix-and-match 3-for-2 è supposto dare.

Il modello tra tutti e tre: ogni workaround scambia una promozione pulita, self-serve e native di checkout per qualcosa di manuale, fragile o invisibile agli acquirenti che si convertono meglio. Nessuno di loro ripristina quello che i commercianti effettivamente vogliono, che è il comportamento nativo di Buy X Get Y senza il limite e con una logica di ripetizione appropriata.

Come eseguire Buy X Get Y su tutto lo store e ripetibile con Shopify Functions

La correzione duratura è uno sconto costruito su Shopify Functions, lo stesso motore lato server che Shopify usa per permettere alle app di personalizzare la logica dello sconto. Un Buy X Get Y basato su Functions risolve entrambi i muri contemporaneamente.

Primo, l'idoneità diventa una regola invece di un elenco. Limitate l'offerta per tag o per collezione, e la Function valuta ogni riga del carrello rispetto a quella regola al momento del calcolo. Non c'è un elenco di diritti di 100 prodotti da compilare, quindi un catalogo di 400 prodotti o di 4.000 prodotti è trattato nello stesso modo. I nuovi prodotti che corrispondono al tag si iscrivono automaticamente nel momento in cui li aggiungete, senza sconto da rieditare.

Secondo, l'offerta può ripetersi. Una Function può riapplicare il rapporto buy-to-get per ogni set qualificante nel carrello, quindi "buy 3, get 1 free" diventa 2 gratis a 6 articoli e 3 gratis a 9 articoli, in un'unica offerta. La stessa logica guida "buy 6, get 2 free" raddoppiando a 4 gratis a 12 articoli. E poiché la Function viene eseguita all'interno della propria pipeline di checkout di Shopify, la pagina del carrello, la pagina del checkout e i checkout accelerati calcolano tutti il risultato identico, quindi un acquirente di Shop Pay ottiene esattamente quello che il cassetto del carrello ha promesso.

Terzo, il comportamento dell'articolo più economico diventa esplicito. Una Function può essere detto di scaricare sempre l'articolo qualificante con il prezzo più basso in ogni set, che è quello che un vero 3-for-2 significa, o di applicare una percentuale invece di completamente gratis per un'offerta più mite. Secondo la documentazione per sviluppatori di Shopify, il modello di sconto Buy X Get Y ha limitazioni e considerazioni documentate, e Functions sono il percorso supportato per andare oltre di esse.

Esempio funzionante: un 3-for-2 su tutto lo store e un buy-6-get-2 ripetibile

Rendiamo entrambe le promozioni concrete.

Promozione A: 3-for-2 attraverso un catalogo di 400 prodotti

Un negozio di abbigliamento vuole "buy any 3, get the cheapest free" attraverso la sua intera gamma di 400 SKU, e vuole che i nuovi arrivi si uniscano automaticamente. Con un'offerta basata su Functions, l'idoneità è un tag (diciamo, promo-3for2) applicato all'intero catalogo, la quantità buy è 3, la quantità get è 1, lo sconto è 100 percento dell'articolo qualificante più economico, e la ripetizione è attiva.

Ecco come si risolve un carrello reale.

Buy X Get Y nativo non può esprimere questo a due livelli: non può coprire 400 prodotti in un elenco di idoneità unico, e anche all'interno di un set coperto libererebbe solo un articolo per il carrello di 9 articoli invece di tre. L'offerta basata su Functions gestisce sia la dimensione del catalogo che la ripetizione.

Promozione B: un buy-6-get-2 ripetibile

Un marchio di snack esegue "buy 6 bars, get 2 free," e il poster della promozione implica che dovrebbe raddoppiare per un carrello di 12 bar. La configurazione è quantità buy 6, quantità get 2, ripetizione attiva, 100 percento dello sconto degli articoli get.

Un carrello di 12 barre ottiene 4 barre gratis, due ripetizioni del set 6-for-2, che è esattamente quello che il poster ha promesso. Buy X Get Y nativo, applicandosi una volta per ordine, darebbe 2 barre gratis per lo stesso carrello di 12 barre e venderebbe silenziosamente insufficientemente l'offerta.

Il punto di entrambe le tabelle non è che la matematica sia difficile. È che Buy X Get Y nativo si ferma al primo set e a 100 prodotti, e un'offerta basata su Functions continua.

Esegui questo affidabilmente con Stackable

Se preferite configurarlo piuttosto che costruire una Function Shopify personalizzata, Stackable esegue Buy X Get Y oltre i limiti nativi, onestamente e all'interno delle vere regole di Shopify.

  • Nessun soffitto di 100 prodotti. Limitate l'idoneità per tag, collezione o un elenco esplicito senza limite superiore, quindi un 3-for-2 su tutto lo store copre l'intero catalogo e i nuovi prodotti che corrispondono alla regola si iscrivono automaticamente.
  • La logica di ripetizione è un singolo toggle. "Buy 3, get 1 free" si riapplica al crescere del carrello, quindi 6 articoli ottiene 2 gratis e 9 articoli ottiene 3 gratis, e "buy 6, get 2 free" raddoppia a 4 gratis a 12 articoli, tutto in un'unica offerta.
  • L'articolo più economico gratuito è il predefinito, e potete passare a una percentuale per un'offerta più mite, o fissare lo sconto a un articolo specifico.
  • La matematica funziona dentro a una Shopify Function, quindi la pagina del carrello, il checkout e i checkout accelerati come Shop Pay calcolano tutti lo stesso risultato. Non c'è hack di draft order, nessuno SKU di fake bundle, e nessuno drift tema-versus-checkout.

Installa Stackable gratis ed esegui un 3x2 su tutto lo store, ripetibile e preciso al centesimo, su usestackable.com/pricing. 🚀

Il punto fondamentale

  • Buy X Get Y nativo limita quanti prodotti potete marcare come idonei, un limite che i commercianti e il supporto Shopify ampiamente segnalano come 100, quindi non può coprire un catalogo grande in una singola regola.
  • Buy X Get Y nativo si applica anche un numero fisso di volte per ordine, quindi non si ripete: un carrello di 9 articoli su un 3-for-2 libera 1 articolo, non 3, e un carrello di 12 barre su buy-6-get-2 libera 2, non 4.
  • I workaround tutti scambiano il limite per un problema peggiore: gli sconti duplicati rompono il mix-and-match, i draft order scavalcano i codici e il checkout accelerato, e i fake bundle SKU distruggono l'inventario e il reporting.
  • Il limite esiste perché gli sconti nativi archiviavano l'idoneità come un elenco limitato. Shopify Functions valutano l'idoneità come una regola al runtime, quindi la dimensione del catalogo smette di importare.
  • Un Buy X Get Y basato su Functions viene eseguito su tutto lo store e può ripetersi per set, scariando sempre l'articolo qualificante più economico, con lo stesso totale sulla pagina del carrello, il checkout e Shop Pay.
  • Strumenti come Stackable vi danno nessun limite di prodotti, un toggle di ripetizione e l'articolo più economico gratis per predefinito, quindi un vero 3-for-2 attraverso l'intero catalogo è qualche impostazione piuttosto che una Function personalizzata.

Articoli correlati

Domande Frequenti

Trovi le risposte alle domande più comuni

  • I commercianti e il supporto Shopify segnalano costantemente un limite massimo di 100 prodotti per i Buy X Get Y nativi. Il numero esatto non è pubblicato nella documentazione API pubblica di Shopify, quindi considerate 100 come il limite nativo ampiamente segnalato piuttosto che una costante della piattaforma documentata. In ogni caso, il Buy X Get Y nativo non è costruito per coprire un catalogo grande, e non potete continuare ad aggiungere prodotti idonei oltre il limite.

  • Il Buy X Get Y nativo non può farlo, a causa del limite di prodotti e perché si applica una sola volta per ordine. Usate uno sconto costruito con Shopify Functions, che delimita l'idoneità per tag o collezione invece di un elenco fisso di prodotti, quindi la dimensione del catalogo smette di importare. Impostate buy 3, get 1 gratis sull'articolo più economico idoneo, e attivate la ripetizione così un carrello di 9 articoli libera 3 articoli, non 1.

  • È il comportamento nativo. La mutazione create di Buy X Get Y di Shopify include un limite uses-per-order, e per impostazione predefinita lo sconto viene concesso un numero fisso di volte, in genere una volta, piuttosto che riapplicarsi per ogni set qualificante. Per farlo ripetere al crescere del carrello, avete bisogno di un'offerta basata su Functions con logica di ripetizione, che riapplica il rapporto buy-to-get per ogni set.

Do this in your store

  • BOGO / Buy X Get Y

    Run Shopify BOGO and buy X get Y storewide with no 100-product limit, plus the repeat logic native buy X get Y cannot do.

  • Bundles

    Rule-based fixed-price Shopify bundles that stay in sync with your catalog instead of breaking when you add a product.

Stackable Team

The team building Stackable, the reliability-first bulk and volume discount app for Shopify. We write about discount stacking, Shopify Functions, and how to run promotions that hold up at checkout.

Utilizziamo cookie essenziali per il funzionamento del sito e, solo con il Suo consenso, cookie di analisi per comprendere il traffico. Legga la nostra Informativa sui Cookie.