Du kan köra "köp en, få den andra 50% rabatt" direkt i Shopify, och det renaste sättet är en Köp X få Y-rabatt: kunden köper en artikel till fullt pris och den andra kvalificerande artikeln är inställd på 50% rabatt. Det finns också en andra inbyggd väg, en "belopp av produkter"-rabatt med minimikvantitet, men den rabatterar varje kvalificerande enhet snarare än bara den andra, så det är vanligtvis fel verktyg för det här exakta erbjudandet. Inbyggt fungerar för ett enda par, men det har riktiga gränser: det upprepas inte rent över många par i en stor vagn, dess målgrupprering av "andra" artikeln är grov och det kan kollidera med dina andra rabatter eftersom Shopify endast tillåter en produktrabatt per vagn-rad.
Den här guiden täcker båda inbyggda metoderna steg för steg, förklarar mekaniken "rabattera inte första N-produkter" som driver erbjudandet, visar exakt var inbyggt bryter med ett genomarbetat exempel och en tabell, och lägger ut Shopify Functions-metoden när du behöver erbjudandet att upprepas och staplas tillförlitligt.
Kan du göra "köp en, få den andra 50% rabatt" i Shopify inbyggt?
Ja. Shopify ger dig två inbyggda rabatttyper som kan uttrycka någon version av det här erbjudandet, och det hjälper att vara exakt om vad var och en faktiskt gör, eftersom de inte är utbytbara.
Den första är Köp X få Y (Shopify kallar det "Köp X få Y" i admin, och BXGY i utvecklar-API). Detta är det korrekta inbyggda verktyget för "andra halva rabatt", eftersom det separerar de artiklar en kund köper till fullt pris från artiklarna de får med rabatt. Du säger till den att kunden köper 1 och får 1 med 50% rabatt, och Shopify gör exakt det.
Den andra är Belopp av produkter med minimiinköpskvantitet. Den här är lockande eftersom du kan säga "köp 2, få 50% rabatt", men läs det fina trycket: det rabatterar alla kvalificerande enheter, inte bara den andra. "Köp 2, 50% rabatt" här betyder att båda artiklarna är halvpris, vilket är en 25% effektiv rabatt på paret, inte "en till fullt pris och en halvpris". Det är ett annat erbjudande, och att blanda ihop ett för det andra är det vanligaste sättet handlare får detta fel.
Så det ärliga svaret är: använd Köp X få Y för en sann "andra artikel 50% rabatt", förstå att Belopp av produkter beter sig annorlunda och vet att båda slår på gränser när din vagn växer bortom ett enda par.
BILDPLACEHOLDER (Bild 1): Två inbyggda vägar till en rabatt på andra artikel
Föreslagen visuell: Ett rent 16:9-diagram på vit bakgrund med två märkta vägar. Väg till vänster "Köp X få Y" visar två produktkort, det första till fullt pris med en liten "du köper"-märk och det andra märkt "50% rabatt" med en "du får"-märk. Väg till höger "Belopp av produkter, min qty 2" visar två identiska kort båda märkta "50% rabatt" med en bildtext "rabatterar varje enhet". En centrumsetikett läser "samma ord, annan matematik". Platt vektorstil, varumärkesfarger violett och guld, sans-serif-märkningar, ingen fotografi.
Metod 1: Köp X få Y, det tillförlitliga inbyggda sättet
Köp X få Y är byggt för exakt denna form av befordring. Enligt Shopify:s utvecklardokumentation, lagrar en BXGY-rabatt en "kund köper"-uppsättning (artiklarna och kvantiteten en köpare måste köpa) och en "kund får"-uppsättning (artiklarna och kvantiteten som får rabatten, till en procentsats du väljer). Genom att ställa in "få"-procentsatsen till 50% är det som gör det till "andra halva rabatt."
Ställ in det i admin
- I din Shopify admin, gå till Rabatter och klicka på Skapa rabatt, välj sedan Köp X få Y.
- Under Kund köper, ställ in minimikvantitet av artiklar till 1 och välj produkterna eller samlingarna som kvalificerar. Om du vill att affären ska fungera på valfri artikel i en grupp, begränsa den till en samling.
- Under Kund får, ställ in kvantiteten till 1 och välj samma produkter eller samling så att "få"-artikeln kommer från samma pool.
- För det rabatterade värdet, välj Procent och ange 50%.
- Under Maximalt antal användningar, bestäm om erbjudandet kan tillämpas mer än en gång per order. Den här enstaka inställningen är där "upprepas det"-frågan bor, och vi återkommer till den i avsnittet gränser eftersom det är kärnan i hela artikeln.
- Ställ in dina Kombinationer (om detta kan staplas med produkt-, order- eller frakt-rabatter), dina aktiva datum och spara.
Resultatet: en kund med två kvalificerande artiklar i vagnen betalar fullt pris för en och halvpris för den andra. Shopify tillämpar rabatten på den lägre prissatta kvalificerande artikeln i "få"-uppsättningen som standard, så kunden behåller den dyrare artikeln till fullt pris. Det är standardbeteendet och rättvist för ett "andra artikel"-erbjudande, men det är också en begränsning du inte kan finjustera inbyggt, vilket spelar roll om du specifikt vill ha billigare artikel till fullt pris och den dyrare med rabatt.
Varför detta är tricket "rabattera inte första N-produkter"
Här är mekaniken ämnet är uppkallat efter. I Köp X få Y, är "kund köper"-kvantiteten den kvantitet du vägrar rabattera. När du säger "köp 1, få 1 med 50%", säger du till Shopify: rabattera inte den första enheten, rabattera sedan nästa. Ställ in "köp 2, få 1 med 50%" och du säger "rabattera inte de två första enheterna, halvpris sedan den tredje." Köp-kvantiteten är hoppa-över-första-N-kontrollen, även om admin aldrig använder dessa ord.
Den här inramningen är användbar eftersom den mappas direkt till hur tredjepartsrabattappar beskriver samma idé. Appar som Regios eller Checkout Boost exponerar en explicit "hoppa över första N-enheter" eller "berättigad kvantitet över ett tröskelvärde"-växel. Shopify inbyggt ger dig inte den exakta skjutreglaget på en belopp-av-rabatt, men Köp X få Y ger dig samma resultat genom köp-kvantiteten. Om du har sett frasen "rabattera inte första N-enheter = 1" i en forumtråd, det är en enrads beskrivning av ett köp-1-få-1 BXGY-erbjudande.
Metod 2: Belopp av produkter med minimikvantitet (och varför det inte är samma erbjudande)
Den andra inbyggda vägen ser nära ut men beräknas annorlunda, och det är värt att förstå så att du inte skickar fel befordring.
En Belopp av produkter rabatt kan kräva minimikvantitet. Shopify:s API modellerar detta som ett minimikvantitatskrav, och dokumentationen ger det kanoniska exemplet på en "Köp 3, få 10% rabatt"-befordring där minimikvantitet är inställd på 3. Nyckeldetaljen: när vagnen möter minimum, gäller procentsatsen för alla kvalificerande enheter, inte till enheterna över tröskelvärdet.
Så om du bygger "Belopp av produkter, minimikvantitet 2, 50% rabatt", får en kund som köper två artiklar 50% rabatt på båda. Det är generöst, och ibland är det vad du vill, men det är inte "köp en få den andra halva rabatt". Det är "köp två, båda halvpris". På en artikel till 40 dollar, den sanna andra-artikel-erbjudandet debiterar 40 dollar + 20 dollar = 60 dollar, medan belopp-av-min-2-versionen debiterar 20 dollar + 20 dollar = 40 dollar. Det där 20-dollar-gapet per par är exakt marginalen du inte avsåg att ge bort.
Det finns ingen inbyggd växel på Belopp av produkter som säger "tillämpa rabatten endast på enheterna bortom minimum." Den kapaciteten, bokstavligen "rabattera inte första N", är vad appar lägger till. Inbyggt, om du bara vill rabattera den andra enheten, är Köp X få Y verktyget, och Belopp av produkter är det inte.
Där inbyggt bryter: de gränser du kommer att träffa
Inbyggd Köp X få Y hanterar ett enda, enkelt par vackert. Problemet börjar så snart din vagn eller din befordring blir mer ambitiös. Här är de fyra väggar handlare springer in i, alla verkliga och värda att veta innan du startar.
1. Det upprepas inte rent över många par
Det här är det stora. En kund som vill ha din "andra halva rabatt"-affär stannar sällan vid två artiklar. De lägger till sex. Nu är frågan om rabatten tillämpas på 2:a, 4:e och 6:e artiklarna (tre halvprisenheter) eller bara en gång (en halvpriser, resten till fullt pris).
Inbyggd Köp X få Y kontrollerar detta genom en enstaka maximala användningar per order inställning. Om du låter det vara obegränsat, kommer Shopify att försöka återanvända köp-få-uppsättningen när mängder växer, men detta beteende är grovt och blir oförutsägbar över blandade produkter, varianter och samlingar. Om du begränsar det, startar affären exakt en gång och 4:e och 6:e artiklarna betalar fullt pris, vilket frustrerar kunder som förväntade att varje par skulle kvalificera. Det finns inget inbyggt "räkna om rent per par, för alltid, över vilken mix av berättigade artiklar" läge. Handlare på Shopify-forumen frågar upprepade gånger om exakt denna upprepningsbeteende ("köp 6 få 2, köp 9 få 3") och finner inbyggt kan inte uttrycka det tillförlitligt.
2. Du kan inte fint målgruppsgrupp vilken artikel som är "andra"
Inbyggd BXGY rabatterar den lägre prissatta kvalificerande artikeln i "få"-uppsättningen, vilket är vanligtvis det klokt standard. Men om din befordring behöver annan logik, till exempel alltid rabattera dyrast artikel, eller alltid artikeln från en specifik undergrupp, inbyggt ger dig inte den kontrollen. Du får Shopify:s inbyggda målgrupprering eller ingenting.
3. 100-produkttaket på Köp X få Y
Inbyggd Köp X få Y begränsar hur många produkter du kan koppla till en enda rabatt. När din berättigad uppsättning passerar ungefär 100 produkter, slutar admin att låta dig lägga till fler, så en butiksvid "valfri artikel, andra halva rabatt" över en 400-SKU-katalog kan inte byggas som en inbyggd rabatt. Den vanliga lösningen, begränsa till en samling, hjälper bara om din hela berättigad katalog passar samlingar du är villig att underhålla för hand. Vi täcker detta tak på djupet i den länkade artikeln nedan.
4. Det kan kollidera med dina andra rabatter
Köp X få Y är en produktklass rabatt. Det är också en volymrabatt, en procent från en samling och mest "säljning" prissättning. Enligt Shopify:s utvecklardokumentation, som standard endast en produktrabatt tillämpas per vagn-rad. Om en kunds artikel kvalificerar för både din "andra halva rabatt"-affär och en separat "20% från denna samling"-säljning, är de båda produktrabatter, så de kommer inte att staplas på samma rad. Shopify behåller den värd mer och tyst släpper den andra.
Att stapla en andra produktrabatt på samma rad är möjlig, men bara på Shopify Plus, och bara genom en märkesbaserad, tvåvägs-matchmekanisk Shopify kallar same-line stacking. På någon icke-Plus-plan, behandla "min BOGO plus en annan produktrabatt på samma artikel" som av bordet, och design omkring det. Staplings över klasser (din BOGO plus en orderrabatt plus fri frakt) fungerar på vilken plan som helst, så länge varje erbjudande är inställt att kombinera.
BILDPLACEHOLDER (Bild 2): Där inbyggd BOGO bryter
Föreslagen visuell: En 16:9-illustration som visar en shoppingvagn med sex identiska skjortor. Ovanför det, två märkta resultat. "Inbyggd, begränsad till en användning" markerar endast den 2:a skjortan med ett 50%-märke och de övriga fem till fullt pris, märkta med en liten röd flagga. "Vad handlare förväntar sig" markerar 2:a, 4:e och 6:e skjorta var och en med 50%, märkta med en grön bock. En bildtext nedan läser "inbyggd tillämpar paret en gång, inte per par." Platt vektorstil, varumärkesfarger violett och guld, ingen fotografi.
Genomarbetat exempel: sex skjortor, ett "andra halva rabatt"-erbjudande
Låt oss göra upprepningsproblemet konkret. En butik säljer skjortor för 40 dollar vardera och kör "köp en, få den andra 50% rabatt". En kund lägger till sex skjortor, en 240 dollar subtotal innan någon rabatt. Här är hur samma befordring betalar ut på tre olika sätt.
Läs den tabellen långsamt, eftersom varje rad är ett annat löfte. Det begränsade inbyggda BXGY underlevererar: kunden förväntade sig tre halvpriskjortor och fick en, så de känner sig svikna och kan överge. Belopp av produkter-versionen överlevererar massivt: det halvprisäger alla sex skjortor, handar bort 120 dollar när du avsåg att ge 60 dollar. Endast upprepningsmedveten versionen betalar ut vad "köp en, få den andra halva rabatt" faktiskt betyder i skala: varje par får affären, butiken ger bort exakt 60 dollar, och kunden får exakt vad banderollen lovade.
Gapet mellan 220 dollar, 180 dollar och 120 dollar på en enda sex-artikel-vagn är hela anledningen till att det här erbjudandet är svårare än det verkar. Inbyggt tvingar dig att välja mellan underleverans och överleverans, och ingendera är vad du annonserade.
Functions-vägen: en BOGO som upprepas och staplas korrekt
Den tillförlitliga lösningen är att beräkna erbjudandet inuti Shopify:s egen utcheckningspipeline med en Shopify Function, så matematiken körs på servern och gäller på samma sätt på vagnssidan, utcheckningssidan och accelererad checkout som Shop Pay. En Functions-baserad rabatt kan uttrycka logiken inbyggt kan inte: återanvänd köp-få-uppsättningen för varje par i vagnen, målgrupp billigast eller en specifik artikel, täck en obegränsad berättigad katalog och hedra dina kombinationsregler exakt.
Det här är modellen Stackable är byggt på, och det är ärligt om Shopify:s verkliga regler snarare än att låtsas plattformens gränser inte finns.
Kör detta tillförlitligt med Stackable
- Upprepningslogik som räknar om per par. Slå på upprepning och "köp 1, få 1 med 50% rabatt" tillämpas igen när vagnen växer, så en sex-artikel-vagn får tre halvprisenheter automatiskt, inte en. Samma inställning skalar en "köp 6, få 2"-befordring till "köp 12, få 4."
- Inget 100-produkttak. Definiera berättigade artiklar efter märke eller samling utan övre gräns, så en butiksvid "andra halva rabatt" täcker en 400-SKU-katalog som en enda kampanj och nya produkter väljer automatiskt in.
- Billigaste-artikel-målgrupprering du kan lita på. Rabatten markerar den lägsta prissatta berättigade artikeln som halvpris och uppdateras live när vagnen ändras, så kunden behåller alltid den dyrare artikeln till fullt pris.
- Kombinationsväljar som matchar Shopify en-till-en. Varje erbjudande har tre kombinationsväljar, en var för produkt-, order- och frakt-rabatter, så vad du ställer in är vad checkout gör. Same-line produkt-på-produkt-staplig är fortfarande Plus-bara, och appen säger dig det tydligt snarare än att dölja det.
- En totalt överallt. Eftersom matematiken körs i en Shopify Function kan vagnförhandsgranskningen och den slutliga avgiften inte driva isär, inklusive på Shop Pay, Apple Pay och Google Pay. Stackable skriver aldrig om dina produktpriser, så avinstallation lämnar din katalog exakt som den var.
Installera Stackable gratis och se din "andra halva rabatt" betala ut korrekt på varje par på usestackable.com/pricing.
Hur man ställer in "andra halva rabatt" steg för steg
Oavsett om du går inbyggt eller Functions-baserat, håller denna sekvens dig ut ur trubbel.
1. Skriv ner det exakta löftet
Bestäm exakt vad "köp en, få den andra 50% rabatt" betyder för din butik. Upprepas det på varje par, eller startar det en gång per order? Gäller det för någon artikel eller endast en samling? Vilken artikel får rabatt, den billigare eller den dyrare? Att svara på detta först säger dig om inbyggd BXGY är tillräckligt eller om du behöver upprepningslogik.
2. Välj rätt inbyggd typ
Använd Köp X få Y för en sann andra-artikel-rabatt, med köp-kvantiteten som funktion som din "rabattera inte första N" kontroll. Undvik Belopp av produkter med minimikvantitet såvida du inte verkligen vill rabattera varje kvalificerande enhet, eftersom det kommer att halvprisäga hela uppsättningen, inte bara den andra artikeln.
3. Bestäm upprepningsbeteendet medvetet
Ställ in maximalt-användningar-per-order-värdet med avsikt, inte av olycka. Begränsad betyder en halvpriser per order. Obegränsat inbyggt upprepning är grovt över blandade vagnar. Om du behöver ren per-par-upprepning över en stor eller blandad vagn, det är signalen att gå till en Functions-baserad app.
4. Ställ in kombinationer, sedan respektera per-rad-regeln
I Kombinationer-sektionen, välj vilka klasser det här erbjudandet staplas med. Kom ihåg att en annan produkt rabatt staplas inte på samma vagn-rad om du inte är på Shopify Plus. Om du kör både en samlingssäljning och denna BOGO, bestäm vilken du vill ska vinna, eftersom inbyggt kommer att behålla endast det högre värdet per rad.
5. Testa en två-artikel-vagn och en sex-artikel-vagn
Bygg en verklig testvagn med exakt två kvalificerande artiklar och bekräfta att en är fullt pris och en är halvpris. Bygg sedan en sex-artikel-vagn och läs sammanfattningsraden för checkout rad för rad: halvprissäger den en artikel eller tre? Det är här du fångar upprepningsbeteendet innan dina kunder gör det. Tysta fel är fienden, eftersom en rabatt som tyst gäller en gång fortfarande aldrig kastar ett fel.
6. Verifiera Shop Pay
Kör sex-artikel-testv vagnen genom Shop Pay. Inbyggt och Functions-baserad rabatter gäller identiskt där; någonting som förlitar sig på tema JavaScript är där vagnens totalt och den debiterade totaladriften isär på accelererad checkout.
BILDPLACEHOLDER (Bild 3): Upprepningslogikväljaren
Föreslagen visuell: En 16:9-produktskärmbild mockup av en kampanjeredigerare som visar ett Köp X få Y-erbjudande med fält "Kundinköpsvantitet: 1," "Kundefå kvantitet: 1," "Rabatt: 50% rabatt," och en markerad växel märkt "Upprepa det här erbjudandet för varje kvalificerande par" omställd på, med en enkel-engelsk sammanfattning under läsning "En 6-artikel-vagn får 3 artiklar med 50% rabatt." Ren Shopify Polaris admin-styling, varumärke accent i violett. Referera till docs/screenshot-manifest.md plats bogo-step-2 för att fånga den verkliga skärmen senare.
Poängen är
- Köp X få Y är det korrekta inbyggda verktyget för "andra halva rabatt": ställ in kund köper 1, kund får 1 med 50%, och köp-kvantiteten är din "rabattera inte första N" kontroll.
- Belopp av produkter med minimikvantitet är ett annat erbjudande. Det rabatterar varje kvalificerande enhet, så "min 2, 50% rabatt" halvprisäger båda artiklarna, inte bara den andra.
- Inbyggd upprepning är den svaga punkten. En enstaka maximalt-användningar-per-order-inställning kan inte rent återanvända affären per par över en stor eller blandad vagn, så handlare får underleverans eller du överlevererar.
- Inbyggd Köp X få Y begränsar berättigade produkter till ungefär 100 och rabatterar den billigare artikeln som standard, utan finkornig målgrupprering kontroll.
- Köp X få Y är produktklass, så det staplas inte med en annan produktrabatt på samma vagn-rad om du inte är på Shopify Plus. Det kombineras med order- och frakt-rabatter på vilken plan som helst.
- Testa alltid en två-artikel och en sex-artikel-vagn och läs sammanfattningsraden för checkout rad för rad, verifiera sedan Shop Pay, eftersom en rabatt som gäller bara en gång fortfarande aldrig felkoder.
- En Shopify Functions-baserad app som Stackable lägger till den tillförlitliga upprepningslogiken, obegränsad behörighet och billigaste-artikel-målgrupprering som förvandlar en inbyggd enda-par BOGO till en verklig butiksvid erbjudande.
Relaterade artiklar
- BOGO och Köp X få Y, gjort rätt: upprepningslogik och billigaste-artikel-gratis målgrupprering inbyggt Köp X få Y kan inte gör.
- Shopify:s 100-produktgräns på Köp X få Y: hur man kör 3-för-2 över en hela katalog förbi det inbyggda taket.
- Hur rabattstaplig fungerar i Shopify: varför inbyggt endast tillämpas det högsta, och hur man kombinerar erbjudanden över klasser.
- Volymrabatter och kvantitetsbrytningar: räkna enheter av samma produkt, inte hela samlingen.
- Rabattstaplig, gjord rätt: de tre per-klass kombinationväljarna med en live vagnssimulerare.
- Stackable prissättning: planer, den fria nivån och vad varje innehåller.



