The setup
A 60-person consumer-packaged-goods brand doing $6M/year. Staff get 30% off the brand's products, distributed via a discount code (STAFF30) shared in Slack and emailed to new hires. The code had been in use for ~3 years.
An ambassador program was in early discussions: ~200 micro-influencers, similar discount.
The leak event
A new hire shared STAFF30 with their partner. Partner used it. Honey indexed it. Within ~10 days the code was being applied by 200–400 random customers per week.
The brand caught it during a routine gross-margin review. The discount-code-attribution report showed STAFF30 usage 18x higher than the previous quarter. Manual investigation confirmed: it was loose.
The patchwork response (didn't work)
- Rotate the code. Renamed it to
STAFF30-Q3. Re-emailed all staff. Honey re-indexed it within a week. - Add a per-customer-use limit. Each customer could only use the code once. But each random user was a "first-time customer," so the limit didn't help.
- Email-domain restriction. Tried to scope the code to
@brandname.comemails. Required a custom Shopify Script (which was about to be deprecated) and didn't help with personal-email staff orders. - The ambassador program got delayed. The team didn't want to launch a 200-person discount surface knowing the staff-30 program was already leaky.
The proper fix
The team replaced the code-based system with tag-based pricing. Two rules in TagTier:
#staff → 30% off#ambassador → 25% off
Each staff member's customer record got tagged once, on hire. The ambassador program launched with each ambassador's email tagged on signup. No code exists to leak. A non-staff customer literally cannot see or apply the staff price — the Shopify Function only returns the discounted price for tagged customers.
Onboarding integration
The brand's HRIS (BambooHR) emits a webhook on hire and termination. They wired it to:
- On hire: create a Shopify customer (if not exists) for the staff email and tag
staff - On termination: remove the
stafftag
Total integration time: ~6 hours by their internal developer.
Outcomes
- Discount-code abuse: stopped completely. The 200–400 random users/week applying
STAFF30went to 0, because the code no longer exists. - Recovered margin: ~$48,000/year (the leaked-discount drag was that big).
- Ambassador program launched with confidence. 200 ambassadors enrolled in the first quarter; zero discount leakage. The team subsequently grew the program to 400+.
- Audit log of who-got-what: Auditors during a routine compliance review specifically called out the audit log as a positive control. Adds up to a real SOX/GAAP win for finance.
The deeper change
The team's wholesale director described the shift this way: codes are permission slips — they let anyone in. Tags are memberships — they only work if you're on the list. The cost difference is tiny; the operational difference is total.
Quote
"We were spending more on discount-code abuse than on customer support. The day we cut it to zero felt like getting back a person we'd never hired."
Related on TagTier
Want to be a case study?
If you've solved a discount-leak problem and have a story to share, email hello@tagtier.com.