Create discount codes in Offers → Discounts. For vouchers people buy as presents, see gift vouchers.
Discount codes only apply to session bookings. For memberships, bundles and gift vouchers, use a Stripe promotion code.
How the form is laid out
Add discount asks What is this code for?
- Share a code - a promo code anyone can type: % off, £ off or Free sessions, as One code or A unique code each.
- Give to a customer - credit on one person's account: £ credit, Free sessions or % off.
The rest sits under Limits.
How customers receive and redeem a code
Customers enter codes at checkout. To pre-apply one, add ?gv=CODE to a session link (&gv=CODE if it already has a ?).
Customer credits show on their account: Free sessions under "Session credits", applied automatically when they book signed in with that address (they can tap Pay instead to keep them), and £ credit under "Gift card balance", spent by entering its code.
Recipes
Comp a specific person with free sessions
- 1Click Add discount and choose Give to a customer.
- 2In Customer, pick the person or type a new email.
- 3Under They get, choose Free sessions and a number, optionally set Expires or tick to email them, and click Give credit.
For a free gift card, choose £ credit instead. Adjust remaining credits on their customer page.
Give out single-use free-session codes
Share a code with Free sessions at 1 and Total available Limited to 1 session, so it switches off once redeemed. Capping the person with Uses per customer isn't enough, as a second email gets around it.
Give everyone on a list their own code
Choose A unique code each and set Number of codes (up to 500) and a Name. On % off or Free sessions, set Total available per code to 1 (on % off it defaults to the percentage, so 20% means 20 uses). Copy all or Download CSV before closing the panel.
Discount every space on a multi-person booking
% off discounts every eligible space; £ off comes off the booking total once. For "£5 sessions all round", use % off (70% off £16.50 is £4.95) and tick Communal under Applies to.
Offer a discount at quieter times

Under Dates and times, choose Off-peak times to use the times you set in Settings → Policies, or Choose days and times for days, From and To. A session counts if it starts inside a time, in your venue's time zone, so 9am to 4pm covers 3:30pm but not 4pm. Customers can only reschedule inside it. A code keeps its own copy of off-peak times, so changing them later changes no existing code. Create a code on a Reports quiet session fills this in for you.
Run an intro offer for new customers

Use £ off the difference (£7 off £12 makes £5) or Free sessions. Under Usage, set Customers to New customers only, Uses per customer to Once and Spaces per booking to 1 space. New means no booking under that email or account, apart from cancelled ones; imported bookings count.
Discount code settings
- Name - internal, required for a batch. Code - must be unique.
- Email this code to the customer - sends once, on creation; editing never re-sends. No one is emailed otherwise, and a batch can't be emailed.
- Booking types and prices - All prices, or Choose prices by Communal, Group or Private hire; ticking a whole group covers prices added later. Amber warns when a code reaches group or private hire.
- Sessions - All sessions or Choose sessions, saved per code. To block prepaid sessions on one session, see bundles.
- Session dates - Any date, or Between dates (either side can be blank). Customers outside them are told which dates it covers.
- Code expires - Never, or the last day it can be entered at checkout. Later sessions booked before then still count.
- Customers - Anyone, or New customers only (shared codes only).
- Uses per customer - Unlimited, Once or Custom. People are identified by account or email address.
- Spaces per booking - Every space, 1 space or Custom. Spaces beyond the cap pay the normal price.
- Total available - uses on % off, sessions on Free sessions, money on £ off. Show customers what's left displays the balance. To charge an extra space to a credit, edit the booking's quantity.
- Notes - internal, never shown to customers.
- Active - retires a code without deleting it.
Free sessions given to one customer can be limited to specific prices - for example, to keep a punch pass off your private hire - and to days and times, but not to new customers. A bundle credit keeps the prices its bundle was limited to - see bundle limits.
Click a code's row for its history of changes and redemptions. To reuse a code's setup, choose Duplicate from its ⋯ menu (codes you created only); it copies everything except the customer and balance.
Common questions
-
A code doesn't work at checkout. Check it hasn't expired, run out or been switched off, then check its Limits.
-
A code switched itself off. Codes deactivate when they run out. Topping up Total available or Balance reactivates it on save.
-
A code was refused on a booking I added for a customer. The code's limits still apply to that customer. Check the history and raise Uses per customer if needed.
-
A booking shows a discount the code has no redemption for. The code was refused as the booking saved, so the discount was given anyway. Fix the code before reusing it.