Skip to main content

Creating Promotions

Master the art of creating effective promotions for your cannabis brand, including discounts, BOGO deals, tiered promotions, and more.

Table of Contents

  1. Promotion Types
  2. Creating Basic Discounts
  3. Advanced Promotion Types
  4. Common Flags & Restrictions
  5. Marketplace Promotions
  6. Organization-Level Promotions
  7. Use Cases & Examples
  8. Best Practices

Promotion Types

The Batch platform supports multiple promotion types:

TypeDescriptionExample
Percentage Discount% off products20% off all Flower
Fixed Amount Discount$ off products$10 off orders over $50
BOGOBuy One Get OneBuy 2 Get 1 Free
Tiered DiscountDiscount based on quantity/amountBuy 3+ items, get 15% off
Bundle DealDiscount on product combinationsFlower + Pre-roll combo $60
Free ShippingWaive delivery feesFree shipping over $75
Gift with PurchaseFree item with orderFree lighter with any purchase
Loyalty Points MultiplierBonus points on purchasesDouble points this weekend
First-Time CustomerNew customer discount25% off first order
Referral BonusReward for referrals$20 off when friend orders

Creating Basic Discounts

Percentage Discount

Navigate to: Admin Portal > Marketing > Promotions > Create Promotion

Example: "20% off all Flower products"

Step 1: Basic Information

Promotion Name: Spring Flower Sale
Promotion Code: SPRING20 (optional - if empty, auto-applies)
Promotion Type: Percentage Discount
Status: Active

Step 2: Discount Configuration

Discount Value: 20%
Apply To: Specific Categories
Selected Categories: Flower

Step 3: Eligibility & Restrictions

Minimum Purchase: $0 (no minimum)
Maximum Discount: Unlimited
Usage Limit per Customer: Unlimited
Total Usage Limit: 1,000 redemptions
Customer Eligibility: All Customers

Step 4: Schedule

Start Date: 2024-03-01 00:00
End Date: 2024-03-31 23:59
Timezone: America/Los_Angeles

Step 5: Display Settings

Show on Storefront: Yes
Banner Text: "🌸 Spring Sale: 20% off all Flower!"
Banner Color: #10B981 (green)
Show Badge on Products: Yes
Badge Text: "20% OFF"

Fixed Amount Discount

Example: "$10 off orders over $50"

Promotion Name: $10 Off Your Order
Promotion Code: SAVE10
Promotion Type: Fixed Amount Discount

Discount Value: $10.00
Apply To: Cart Total
Minimum Purchase: $50.00
Maximum Discount: $10.00 (per order)
Usage Limit per Customer: 1
Total Usage Limit: 500

When to Use:

  • ✅ Encouraging larger cart sizes
  • ✅ Welcome offers for new customers
  • ✅ Clearing specific dollar thresholds

Advanced Promotion Types

BOGO (Buy One Get One)

Example: "Buy 2 Pre-Rolls, Get 1 Free"

Navigate to: Admin Portal > Marketing > Promotions > Create Promotion

Promotion Name: Pre-Roll BOGO
Promotion Type: BOGO
Status: Active

BOGO Configuration:
├── Buy Quantity: 2
├── Get Quantity: 1
├── Get Discount: 100% (free)
├── Apply To: Category "Pre-Rolls"
└── Mix & Match: Yes (can be different products)

Restrictions:
├── Minimum Purchase: $0
├── Maximum Applications: 3 (buy 6, get 3 free max)
└── Stack with Other Promotions: No

Schedule:
├── Start: 2024-04-20 00:00 (4/20 promotion!)
└── End: 2024-04-20 23:59

BOGO Variations:

Buy 1 Get 1 50% Off:

Buy Quantity: 1
Get Quantity: 1
Get Discount: 50%

Buy 3 Get 1 Free:

Buy Quantity: 3
Get Quantity: 1
Get Discount: 100%

Buy 2 Get 1 at 25% Off:

Buy Quantity: 2
Get Quantity: 1
Get Discount: 25%

Tiered Discounts

Example: "Buy more, save more"

Promotion Name: Volume Discount
Promotion Type: Tiered Discount

Tier Configuration:
├── Tier 1: Buy 1-2 items → 0% off
├── Tier 2: Buy 3-5 items → 10% off
├── Tier 3: Buy 6-9 items → 15% off
└── Tier 4: Buy 10+ items → 20% off

Apply To: Entire Catalog
Tier Calculation: By Quantity (alternative: By Dollar Amount)

Dollar Amount Tiers:

├── Tier 1: $0-$49 → 0% off
├── Tier 2: $50-$99 → 5% off
├── Tier 3: $100-$199 → 10% off
└── Tier 4: $200+ → 15% off

Bundle Deals

Example: "Starter Pack - Save $30"

Promotion Name: Cannabis Starter Pack
Promotion Type: Bundle Deal

Bundle Configuration:
├── Item 1: Any Flower (3.5g) - Required
├── Item 2: Any Pre-Roll (2-pack) - Required
├── Item 3: Any Edible (10-pack) - Required
└── Bundle Price: $89.99 (normally $120)

Individual Pricing:
├── Flower: $45
├── Pre-Roll: $30
├── Edible: $45
└── Total Savings: $30.01

Bundle Options:
├── Fixed Products: No (customer chooses)
├── Product Substitution: Allowed within category
└── Quantity Limits: 1 bundle per order

Free Shipping

Example: "Free delivery on orders $75+"

Promotion Name: Free Shipping Threshold
Promotion Type: Free Shipping

Configuration:
├── Minimum Purchase: $75.00
├── Apply To: All shipping methods
├── Excluded Locations: None
├── Maximum Shipping Credit: Unlimited
└── Show Countdown: Yes ("Add $15 more for free shipping")

Display:
├── Cart Message: "You qualify for free shipping! 🚚"
├── Progress Bar: Show until threshold reached
└── Urgency Message: "$12.50 away from free shipping"

Gift with Purchase

Example: "Free grinder with any $100+ order"

Promotion Name: Free Grinder Promo
Promotion Type: Gift with Purchase

Gift Configuration:
├── Free Item: Herb Grinder (SKU: ACC-GRIND-001)
├── Item Value: $15.00
├── Minimum Purchase: $100.00
├── Quantity: 1 per order
└── Auto-Add to Cart: Yes

Stock Management:
├── Reserved Stock for Promo: 500 units
├── When Stock Depleted: Hide promotion
└── Fallback Gift: Rolling papers (if grinder unavailable)

Loyalty Points Multiplier

Example: "Double Points Weekend"

Promotion Name: Double Points Weekend
Promotion Type: Points Multiplier

Configuration:
├── Multiplier: 2x (double points)
├── Apply To: All purchases
├── Base Points: $1 spent = 1 point normally
├── Promo Points: $1 spent = 2 points during promo
└── Bonus Points Cap: Unlimited

Schedule:
├── Start: Friday 00:00
└── End: Sunday 23:59

Stacking:
└── Can Stack: Yes (with category-specific multipliers)

Common Flags & Restrictions

Promotion Flags

Flags control promotion behavior:

1. Auto-Apply

Auto-Apply: Yes
Behavior: Automatically applies to eligible orders (no code needed)
Use Case: Storewide sales, free shipping thresholds
Auto-Apply: No
Behavior: Customer must enter promo code
Use Case: Targeted campaigns, referral codes, influencer partnerships

2. Stackable

Stackable: Yes
Behavior: Can combine with other promotions
Example: 20% category sale + $10 off coupon = both apply

Stackable: No
Behavior: Only one promotion applies (best discount chosen)
Example: Customer has 20% and 25% codes, 25% is used

3. Visible

Visible: Yes
Behavior: Shows in promotion list, storefront banners
Use Case: Public sales you want to advertise

Visible: No
Behavior: Hidden from public, works when code entered
Use Case: Secret sales, influencer codes, VIP offers

4. Exclusive

Exclusive: Yes
Behavior: Prevents all other promotions when applied
Use Case: "Cannot be combined with other offers"

Exclusive: No
Behavior: Can work with non-exclusive promotions
Use Case: Most standard promotions

5. Requires Authentication

Requires Authentication: Yes
Behavior: Customer must be logged in
Use Case: Loyalty member exclusives, personalized offers

Requires Authentication: No
Behavior: Works for guest checkout
Use Case: First-time visitor offers, general sales

Restrictions

Control who can use promotions and when:

Customer Restrictions

New Customers Only:

Customer Eligibility: New Customers
Definition: No previous orders
Use Case: Acquisition campaigns
Example: "NEWCUSTOMER25" - 25% off first order

Existing Customers Only:

Customer Eligibility: Returning Customers
Definition: At least 1 previous order
Use Case: Retention campaigns
Example: "WELCOME-BACK15" - 15% off return purchase

Loyalty Tier Restricted:

Customer Eligibility: Specific Loyalty Tiers
Allowed Tiers: Gold, Platinum
Use Case: VIP rewards
Example: "VIP20" - 20% off for top-tier members

Email Domain Restricted:

Email Domain Whitelist: @company.com, @partner.org
Use Case: B2B discounts, employee benefits
Example: "EMPLOYEE50" - 50% off for staff

Customer Segment:

Segment: High-Value Customers
Definition: Lifetime spend > $1,000
Use Case: Rewarding best customers
Example: "THANKYOU10" - $10 off for loyal customers

Product Restrictions

Exclude Sale Items:

Excluded Products: Items already on sale
Reason: Prevent double-discounting
Flag: exclude_sale_items = true

Specific Products Only:

Included Products:
├── Purple Haze - 3.5g
├── Blue Dream - 3.5g
└── Girl Scout Cookies - 3.5g

Use Case: Promoting specific strains

Category Exclusions:

Included Categories: All except "Accessories"
Reason: Accessories already low-margin

Usage Restrictions

Per-Customer Limits:

Usage Limit per Customer: 1
Behavior: Can only use code once
Use Case: First-time offers, prevent abuse

Usage Limit per Customer: 3
Behavior: Can use up to 3 times
Use Case: Monthly recurring offers

Total Usage Limit:

Total Usage Limit: 1,000
Behavior: After 1,000 redemptions, code deactivates
Use Case: Limited-time flash sales, budget control

Minimum Purchase:

Minimum Purchase Amount: $50
Minimum Quantity: 3 items
Behavior: Order must meet threshold to qualify
Use Case: Encouraging larger cart sizes

Maximum Discount:

Maximum Discount: $25
Behavior: Even if % discount would be higher, caps at $25
Use Case: Protecting margins on high-value orders

Time Restrictions

Date Range:

Start Date: 2024-04-20 00:00
End Date: 2024-04-20 23:59
Use Case: One-day sale (4/20 promo)

Recurring Schedule:

Recurrence: Every Friday-Sunday
Time: 00:00 - 23:59
Use Case: Weekend specials

Hour Restrictions:

Active Hours: 4:20 PM - 11:59 PM daily
Use Case: Happy hour promotions

Marketplace Promotions

For multi-brand marketplaces where multiple brands sell through one platform.

Brand-Specific Promotions

Example: Brand "Craft Cannabis Co." runs their own sale

Promotion Name: Craft Cannabis 30% Off
Promotion Scope: Brand Level
Brand: Craft Cannabis Co.

Configuration:
├── Discount: 30% off
├── Apply To: All products from Craft Cannabis Co.
├── Funded By: Craft Cannabis Co. (brand absorbs discount)
└── Visible: Only on Craft Cannabis brand page

Marketplace Settings:
├── Commission Calculation: After discount
├── Brand Pays Commission On: Discounted price
└── Example: $100 product → $70 after 30% off
→ Brand receives: $70 - (20% commission) = $56

Marketplace-Wide Promotions

Example: Platform runs site-wide sale

Promotion Name: Marketplace Black Friday
Promotion Scope: Marketplace Level
Applies To: All brands

Configuration:
├── Discount: 20% off sitewide
├── Funded By: Marketplace (platform absorbs discount)
├── Brand Payout: Full price - commission
└── Example: $100 product → $80 customer pays
→ Customer saves: $20
→ Brand receives: $100 - (20% commission) = $80
→ Marketplace loses: $20 discount

Co-Funded Promotions

Example: Brand and marketplace split discount

Promotion Name: Featured Brand Week
Promotion Scope: Hybrid

Configuration:
├── Discount: 25% off
├── Brand Contribution: 15%
├── Marketplace Contribution: 10%
└── Example: $100 product → $75 customer pays
→ Brand reduces price: $100 - $15 = $85
→ Marketplace discounts: $85 - $10 = $75
→ Customer pays: $75
→ Brand receives: $85 - (20% commission on $75) = $70

Marketplace Best Practices

For Marketplace Operators:

  1. ✅ Clearly define who funds each promotion type
  2. ✅ Set guidelines for brand promotions (min/max discounts)
  3. ✅ Prevent discount stacking abuse (brand + marketplace)
  4. ✅ Monitor promotion performance by brand
  5. ✅ Offer co-marketing for major sales

For Brands on Marketplace:

  1. ✅ Coordinate with marketplace on major sales dates
  2. ✅ Use brand promotions strategically (not constantly)
  3. ✅ Test different discount levels and durations
  4. ✅ Track ROI (sales increase vs. margin decrease)

Organization-Level Promotions

For multi-location businesses (hub/dispensary networks).

Organization-Wide Promotion

Example: "All locations - 15% off Flower"

Promotion Name: Network-Wide Flower Sale
Promotion Scope: Organization
Locations: All hubs/dispensaries

Configuration:
├── Discount: 15% off
├── Category: Flower
├── Applies To: All 12 locations
└── Budget: Shared across locations ($10,000 total)

Reporting:
├── Location A: 150 redemptions, $2,100 discount
├── Location B: 200 redemptions, $2,800 discount
├── Location C: 175 redemptions, $2,450 discount
└── Total: 525 redemptions, $7,350 discounted

Location-Specific Promotion

Example: "Downtown location only - Grand Opening"

Promotion Name: Downtown Grand Opening
Promotion Scope: Single Location
Location: Downtown Hub

Configuration:
├── Discount: 25% off entire purchase
├── Usage Limit: 500 customers
├── Duration: First 2 weeks
└── Delivery Restriction: Must select Downtown Hub for fulfillment

Geo-Fencing:
└── Show only to customers within 5 miles of Downtown Hub

Regional Promotions

Example: "SoCal locations - Summer Sale"

Promotion Name: SoCal Summer Sale
Promotion Scope: Regional
Locations:
├── Los Angeles Hub
├── San Diego Hub
├── Orange County Hub
└── Long Beach Hub

Configuration:
├── Discount: 20% off
├── Shared Budget: $15,000
├── Location Limits: Each location max $4,000 in discounts
└── Duration: June 1-30

Inventory Clearing Promotion

Example: "Clear overstock at specific location"

Promotion Name: Westside Overstock Sale
Promotion Scope: Location + Product
Location: Westside Hub
Products: Specific SKUs with high inventory

Configuration:
├── Discount: 40% off
├── Products: 15 SKUs with >50 units in stock
├── Goal: Reduce inventory by 50%
├── Duration: Until stock reaches target level
└── Auto-Deactivate: When inventory < 25 units per SKU

Use Cases & Examples

Use Case 1: New Customer Acquisition

Goal: Attract first-time buyers

Promotion Strategy:

Promotion: FIRST25
Type: Percentage Discount
Discount: 25% off
Eligibility: New customers only (0 previous orders)
Minimum Purchase: $40
Maximum Discount: $25
Usage Limit: 1 per customer

Marketing:
├── Landing Page: "Welcome! 25% off your first order"
├── Email: Sent after email signup
├── Social Ads: Target cold audiences
└── Referral: Sent by existing customers to friends

Expected Results:

  • Conversion rate: 8-12%
  • Average order value: $65
  • Cost per acquisition: $16 ($25 max discount × 65% redemption)

Use Case 2: Cart Abandonment Recovery

Goal: Recover lost sales

Promotion Strategy:

Promotion: COMPLETE10
Type: Fixed Amount Discount
Discount: $10 off
Eligibility: Customers who abandoned cart 24 hours ago
Minimum Purchase: Cart total at abandonment
Expiration: 48 hours from email send

Automation:
├── Trigger: Cart abandoned for 24 hours
├── Email: "You left something behind! Here's $10 off"
├── Code: COMPLETE10 (unique per customer)
└── Reminder: Second email at 40 hours if still not completed

Expected Results:

  • Recovery rate: 15-20%
  • ROI: 3-5x (revenue recovered vs. discount given)

Use Case 3: Loyalty Tier Upgrade Incentive

Goal: Encourage customers to reach next tier

Promotion Strategy:

Promotion: Tier Upgrade Bonus
Type: Points Multiplier + Discount
Eligibility: Customers within $50 of next tier

Configuration:
├── Triple Points: On all purchases until tier reached
├── Plus $10 Off: When tier is achieved
├── Notification: "You're $37 away from Gold tier!"
└── Benefit Preview: "Gold members get 10% off always + perks"

Gamification:
├── Progress Bar: Visual progress to next tier
├── Push Notifications: "Only $20 away from Gold!"
└── Email Series: Benefits of higher tiers

Expected Results:

  • Tier upgrade rate: 30-40% of eligible customers
  • Increased purchase frequency: 25%
  • Long-term retention: 15% higher

Use Case 4: Flash Sale Urgency

Goal: Drive immediate purchases

Promotion Strategy:

Promotion: 4:20 Flash Sale
Type: Percentage Discount
Discount: 42% off
Duration: 4:20 PM - 11:59 PM on 4/20
Urgency: Countdown timer

Marketing:
├── Push Notification: Sent at 4:15 PM
├── Email Blast: Sent at 4:20 PM
├── Homepage Takeover: Countdown + Sale banner
├── Social Posts: "4 hours only! 42% off!"
└── SMS: To high-value customers

Scarcity:
├── Limited Inventory: Only current stock included
├── Max 2 per customer: Prevents hoarding
└── Countdown Timer: Creates FOMO

Expected Results:

  • Traffic spike: 10x normal
  • Conversion rate: 25% (vs. 5% normal)
  • Average order value: $120

Use Case 5: Seasonal Product Promotion

Goal: Move seasonal inventory

Promotion Strategy:

Promotion: Summer Vibes Bundle
Type: Bundle Deal
Products:
├── Sativa Flower (3.5g)
├── Tropical Fruit Gummies
├── Citrus Pre-Roll 2-Pack
└── Branded Sunglasses

Pricing:
├── Individual Total: $95
├── Bundle Price: $69
├── Savings: $26 (27%)

Season:
├── Start: June 1 (start of summer)
├── End: August 31 (end of summer)
├── Inventory Goal: Sell 500 bundles
└── Marketing Theme: "Summer vibes only ☀️"

Expected Results:

  • Seasonal inventory cleared: 80%
  • New customer acquisition: 20% (bundles attract new buyers)
  • Instagram-worthy: High social sharing

Use Case 6: Referral Program

Goal: Customer-driven acquisition

Promotion Strategy:

Promotion: Refer & Earn
Type: Dual Discount
For Referrer: $20 credit after friend's first order
For Referee: 20% off first order

Mechanics:
├── Unique Code: Each customer gets personal code (e.g., JOHN-20)
├── Friend Uses Code: Gets 20% off first order
├── Referrer Rewarded: Gets $20 credit after completion
└── Unlimited Referrals: No cap on how many friends

Gamification:
├── Leaderboard: Top referrers each month
├── Bonus Tier: Refer 10+ get Gold status
└── Social Sharing: One-click share to Instagram/Facebook

Expected Results:

  • Viral coefficient: 0.3-0.5 (each customer brings 0.3 new customers)
  • Customer acquisition cost: $10 (vs. $30 via ads)
  • Referrer retention: 40% higher

Best Practices

1. Promotion Planning

Create a Promotion Calendar:

January: New Year Sale (20% off)
February: Valentine's Bundle (couple's pack)
March: Spring Clearance (40% off winter stock)
April: 4/20 Mega Sale (various deals)
May: Mother's Day Gift Sets
June: Summer Launch (new strains)
July: Mid-Year Clearance
August: Back to School (edibles focus)
September: Labor Day Weekend
October: Halloween Bundles
November: Black Friday / Cyber Monday
December: Holiday Gift Guide

Avoid Promotion Fatigue:

  • ❌ Don't run constant site-wide sales
  • ✅ Rotate categories/products
  • ✅ Use scarcity (limited time/quantity)
  • ✅ Mix promotion types (discount, BOGO, gifts)

2. Pricing Strategy

Protect Margins:

Know Your Numbers:
Cost: $25
Retail: $50
Margin: $25 (50%)

Max Safe Discount: 30% ($15 off)
After Discount: $35
Remaining Margin: $10 (20%)

⚠️ Warning Zone: 40%+ discount
Critical: 50%+ discount (break-even)

Psychological Pricing:

✅ Good: $49.99 (feels like $40s)
❌ Bad: $50.00 (feels like $50s)

✅ Good: "Save $30!" (emphasize savings)
❌ Bad: "25% off" (less impactful)

✅ Good: "Buy 2 Get 1 Free" (feels generous)
❌ Bad: "33% off when you buy 3" (confusing)

3. Promotion Messaging

Clear Call-to-Action:

✅ Good: "Shop Now - 20% Off Ends Tonight!"
❌ Bad: "Sale happening"

✅ Good: "Add 3 to cart for automatic discount"
❌ Bad: "Discount applies at checkout"

Urgency & Scarcity:

Time-Based:
├── "Only 4 hours left!"
├── "Sale ends midnight tonight"
└── "Last chance - expires in 2h 15m"

Quantity-Based:
├── "Only 47 left in stock"
├── "Limited to first 100 customers"
└── "12 people viewing this right now"

4. Testing & Optimization

A/B Test Promotions:

Test A: 20% off
Test B: $10 off $50+

Measure:
├── Conversion Rate
├── Average Order Value
├── Revenue per Visitor
├── Profit Margin
└── Customer Acquisition Cost

Winner: Highest profit per customer

Track KPIs:

Promotion Performance:
├── Redemption Rate: 15% of eligible customers
├── Revenue Impact: +$12,500
├── Margin Impact: -$3,200 (discount cost)
├── Net Profit: +$9,300
├── New Customers: 87
└── CAC: $36.78 per new customer

Cannabis-Specific Considerations:

  • ✅ Verify age gate before showing promotions
  • ✅ Follow state advertising regulations
  • ✅ Don't advertise to minors
  • ✅ Include disclaimer: "Must be 21+"
  • ✅ Avoid health claims in promotion copy

Terms & Conditions:

Include:
├── Expiration date
├── Usage limits
├── Excluded products
├── Cannot be combined with...
├── Subject to availability
└── Company reserves right to modify/cancel

Troubleshooting

Issue: Promotion Not Applying at Checkout

Check:

  1. Code entered correctly (case-sensitive)
  2. Promotion is active and within date range
  3. Customer meets eligibility requirements
  4. Cart meets minimum purchase requirement
  5. Products in cart are eligible (not excluded)
  6. Usage limit not exceeded
  7. No conflicting exclusive promotion active

Issue: Multiple Promotions Conflicting

Solution:

  • Set priority order: Admin > Promotions > Priority Settings
  • Configure stacking rules clearly
  • Use exclusive flag for non-stackable offers
  • Show customer which promotion is applied and why

Issue: Promotion Budget Exceeded

Solution:

  • Set total usage limit
  • Monitor budget in real-time dashboard
  • Set up alerts at 75% budget spend
  • Auto-deactivate when budget reached