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