Discount types
Both types also support tiered discounts, where the discount amount changes based on the number of items booked. For example, you could offer £5 off for 3 or more bookings and £10 off for 5 or more. A discount code uses either a single flat amount or a tiered structure — not both.
Create a discount code
When creating a discount code, you configure the following:Product eligibility
Control which product types the discount applies to:- Activities — courses, hires, and other bookable activities
- Shop products — items sold through your shop
- Add-ons — optional extras added to bookings
- Activity passes — prepaid pass bundles
- Memberships — recurring membership plans
Auto-apply discounts only support activities and memberships. When you enable auto-apply, the other product types (shop products, add-ons, and activity passes) are not available for selection.
Usage limits
Usage limits control how many times a discount code can be redeemed. Each item in a basket that receives the discount counts as one usage.Limit types
You can combine multiple limits on a single discount code:Surge and early bird
These limits both control when a discount can be used relative to an activity’s start date, but in opposite directions:- Surge — valid only within a specified number of days before the activity starts. Use for last-minute deals to fill remaining spots.
- Early bird — valid only when the booking is made at least a specified number of days before the activity starts. Use to reward advance bookings.
Both limits only apply to activity-based products (courses and hires). For non-activity products like shop items or memberships, the limit is ignored and the discount applies normally.
Activity date range
Restrict a discount so it only applies to activities scheduled within a specific date window. Unlike the purchase date limit — which controls when the code can be used — the activity date range checks the actual date the activity takes place. You can configure the range in four modes:The activity date range limit only applies to activity-based products. For non-activity products, the limit is ignored.
Activity combination
Restrict a discount so it only applies when a customer’s basket contains all of a specified set of activities. Use this for bundle promotions. For example, a 10% discount that requires both “Kayaking” and “Paddleboarding” in the same basket. If either is missing, the discount does not apply. To configure:- Open the discount code and navigate to the activity redemption limits
- Add an Activity combination limit
- Select all the activities that must be present in the basket
The activity combination limit only applies to activity-based products and is not available for auto-apply discount codes.
How usage counting works
When a customer checks out, each basket item that uses the discount increments the usage count by the item’s quantity:- 1 swimming lesson using the discount = 1 usage
- 3 activity passes using the discount = 3 usages
- 2 different items each using the discount = 2 usages
Usage counts are validated in real time as items are added to the basket, so customers see an error immediately if a code has reached its limit.
Partially applied discounts
When a usage limit is close to being exhausted, the discount applies to as many items as the remaining limit allows rather than failing entirely. For example, if a code has a global limit of 10 and 8 are used, a customer adding 5 items receives the discount on 2 of the 5 — the remaining available usages. This works with both discount types:- Fixed — the per-item amount is applied only to the qualifying items.
- Percentage — the percentage is prorated based on the number of qualifying items.
Partial application only affects usage-based limits (global and per-family). All other limit types are all-or-nothing: the discount either applies to every qualifying item or none.
Membership discounts
Discount codes can be linked to a specific membership as a benefit. Membership-linked discounts are always auto-applied and stackable — members receive the discount automatically at checkout. For membership discounts, you can configure how long the associated Stripe coupon lasts:- Forever — the discount applies for the entire membership duration
- Time-limited — the discount applies for a specified number of months
Stacking behavior
When stackable is enabled, a discount code can be combined with other discounts in the same basket. When disabled, only one non-stackable discount can be applied at a time. Membership-linked discounts are always stackable, so members can combine their membership benefit with a promotional code (if that code is also stackable).Filtering discounts
The discounts table includes filter tabs to narrow the list by application type:
Each tab displays a count of matching discounts.
Deactivating a discount code
You can deactivate a discount code at any time. Deactivating a code:- Prevents it from being applied to new baskets
- Cleans up any associated Stripe coupon (for membership discounts)
- Does not affect baskets where the code was already applied