Promo codes
Discount without erosion
Promo codes are time-bounded discounts. Used right, they drive a specific moment without resetting customer expectations about your standard pricing. Used wrong, they train your book to wait for the next code.
Three structures
Percentage off
Most flexible. Use for general seasonal campaigns + member-only promotions.
SUMMER25: 20% off any spray tan, valid through Aug 31Dollar amount off
Cleaner for high-ticket items where 20% is a big number. Better psychology for bridal + premium services.
BRIDAL50: $50 off the bridal package, valid through wedding dateFree service
New-client capture. Cap with first-time-only flag + low max-uses (10-25). The cost is recovered on the lifetime value of one converted customer.
FIRSTGLOW: free standard tan, first-time clients only, max 20 usesAnti-abuse rules
Five guardrails to set on every code
- Expiry date. Every code expires. Most: 2-6 weeks. Holiday: tied to the moment (Dec 24 for Christmas). Indefinite codes always leak.
- Max uses cap.Even for “not expecting many uses” codes: cap at the number you actually expect, +50% margin.
- First-time-only flag for new-client capture codes. Without it, existing regulars will use it + you've discounted them for no reason.
- Minimum spend. For dollar-off codes, set a floor: $25 off only on orders $100+. Prevents a $10 patch test getting a 50% discount.
- Service-eligibility filter. Lets you exclude high-margin services from the code (the bridal package isn't discounted just because the customer typed SUMMER25).
Tie to a campaign
The single biggest leverage on promo-code success is tying the code to a specific seasonal campaign. Loose “here’s a discount” codes underperform; codes tied to a clear moment + a clear audience + a clear deadline outperform.
The right way to launch a code
- 01Pick the moment (holiday, anniversary, a launch).
- 02Create the code with the right structure + guardrails.
- 03Announce via SMS broadcast + Instagram + (if you have it) goldenhour campaign email.
- 04Track redemption rate in Reports → Promo codes. Healthy: ≥10% of broadcast list. Below 5% → reconsider audience or offer.
FAQ
- Should I use a promo code or just lower my prices?
- Promo codes for time-bounded campaigns (Mother's Day, holiday season, new-client offers). Lowering your published price is a different decision entirely: codes preserve your real rate + signal a specific moment, while reduced published prices reset customer expectations permanently.
- How much should a typical code discount?
- Soft promo (winback, refer-a-friend): 10-15% or $10-25 off. Standard seasonal: 15-20%. Aggressive new-client capture (only for very-new artists): 25-30%. Anything above 30% trains customers to wait for the next big discount + erodes margin permanently.
- Can a code be used multiple times?
- Per code: yes: you set a max-uses cap, expiry date, and (optionally) a first-time-customer-only flag. Common pattern: 'SUMMER25' valid through Aug 31, max 50 uses, applies to standard tan or higher. Goldenhour tracks redemptions in promoCodeRedemptions so the cap is enforced strictly.
- What stops abuse?
- Goldenhour evaluates each redemption against the code's rules (active dates, max uses, customer-eligibility flags, service-eligibility filter, minimum spend). Per-customer cap + first-time-only flags handle the most common abuse pattern (one person signing up for multiple discounts). Tighter abuse needs sit on the roadmap (email-domain matching, IP-grouping).