BOGO Offers
Buy X get Y promotions and variations
Last updated: 2025-01-16
BOGO (Buy One Get One) promotions are highly effective at driving volume. CheckoutOS supports flexible BOGO configurations — from classic "buy one get one free" to complex "buy 3 get 2 at 50% off" offers.
BOGO Types
Classic BOGO Free
Buy One Get One Free
{
"bogo": {
"name": "Buy 1 Get 1 Free",
"buy": {
"quantity": 1,
"products": {
"type": "any",
"in_collection": "t-shirts"
}
},
"get": {
"quantity": 1,
"discount": 100,
"products": {
"type": "same_product"
}
}
}
}Buy X Get Y
More flexible quantity combinations:
Buy 2 Get 1 Free
{
"bogo": {
"name": "Buy 2 Get 1 Free",
"buy": {
"quantity": 2,
"products": {
"type": "in_collection",
"collection": "skincare"
}
},
"get": {
"quantity": 1,
"discount": 100,
"products": {
"type": "cheapest_in_cart"
}
}
}
}Buy X Get Y at % Off
Buy 2 Get 1 50% Off
{
"bogo": {
"name": "Buy 2 Get 1 Half Off",
"buy": {
"quantity": 2,
"products": { "type": "any" }
},
"get": {
"quantity": 1,
"discount": 50,
"products": {
"type": "cheapest_in_cart"
}
}
}
}Buy X Get Different Product
Buy Shampoo Get Conditioner Free
{
"bogo": {
"name": "Free Conditioner with Shampoo",
"buy": {
"quantity": 1,
"products": {
"type": "specific",
"product_ids": ["shampoo-001", "shampoo-002"]
}
},
"get": {
"quantity": 1,
"discount": 100,
"products": {
"type": "specific",
"product_ids": ["conditioner-001"],
"auto_add": true
}
}
}
}Product Selection Rules
'Get' Product Options
- Same product — Must match the "buy" product
- Same collection — Any product in same collection
- Cheapest in cart — Lowest priced qualifying item
- Specific product — Designated "get" product
- Customer choice — Let customer select from options
Customer Choice
{
"get": {
"quantity": 1,
"discount": 100,
"products": {
"type": "customer_choice",
"options": ["gift-a", "gift-b", "gift-c"],
"display": "dropdown",
"prompt": "Choose your free gift"
}
}
}Stacking & Repeating
Control whether the offer can be used multiple times in one order:
Repeating BOGO
{
"bogo": {
"name": "Buy 2 Get 1 Free (Unlimited)",
"buy": { "quantity": 2 },
"get": { "quantity": 1, "discount": 100 },
"repeatable": true,
"max_applications": null,
"example": "Buy 6 → Get 3 free"
}
}Limited Application
{
"bogo": {
"name": "Buy 2 Get 1 Free (Once)",
"buy": { "quantity": 2 },
"get": { "quantity": 1, "discount": 100 },
"repeatable": false,
"max_applications": 1,
"example": "Buy 6 → Get 1 free"
}
}Auto-Add to Cart
Automatically add the "get" product to cart:
Auto-Add Configuration
{
"get": {
"quantity": 1,
"discount": 100,
"products": {
"type": "specific",
"product_id": "free-gift-001"
},
"auto_add": {
"enabled": true,
"trigger": "cart_qualifies",
"message": "Free gift added to your cart!",
"removable": false
}
}
}Display Options
BOGO Display
{
"display": {
"product_page": {
"show_badge": true,
"badge_text": "Buy 2 Get 1 FREE",
"show_calculator": true
},
"cart": {
"highlight_free_items": true,
"free_item_label": "FREE",
"strikethrough_original": true,
"show_savings": true
},
"collection_page": {
"show_promotion_banner": true
}
}
}Conditions & Exclusions
BOGO Conditions
{
"conditions": {
"date_range": {
"start": "2025-02-01",
"end": "2025-02-28"
},
"customer_eligibility": "all",
"min_cart_value": null
},
"exclusions": {
"products": ["already-discounted-001"],
"collections": ["clearance"],
"with_other_discounts": false
}
}Promotion Messaging
BOGO Messaging
{
"messaging": {
"promotion_title": "Buy 2 Get 1 Free",
"qualification_message": "Add {{remaining}} more to get {{discount}}",
"qualified_message": "You qualify for a free item!",
"add_to_cart_prompt": "Add your free item →",
"checkout_reminder": "Don't forget your free item!",
"terms": "Free item must be of equal or lesser value"
}
}BOGO Analytics
Track BOGO performance:
- Offer usage rate
- Average items per qualifying order
- Revenue impact
- Margin impact
- Conversion lift
Best Practices
BOGO Strategy
- Clear messaging — Make the offer immediately understandable
- Protect margins — Calculate profitability carefully
- Consider inventory — Ensure stock for promotion volume
- Use on slow movers — Great for clearing inventory
- Limit duration — Creates urgency
Related Topics
Was this page helpful?
Need more help? Contact support