Compliance + courtesy
Cold outreach to another licensee — operator-to-operator courtesy + the actual rules
We just shipped a 650-prospect outbound campaign on CannAgent itself. Half of the work was writing the email; the other half was making sure we wouldn’t get a complaint filed against the license for sending it. Here’s what we learned about cold-emailing other cannabis licensees — the federal rule, the state-regulator scope, and the operator-courtesy moves that decide whether the channel stays open.
The federal rule (CAN-SPAM 16 CFR §316.5) — non-negotiable
CAN-SPAM applies to every commercial email, cannabis or not. Five things it requires; none of them are hard, but the FTC penalty is up to $51,744 per email if you skip them.
- **Accurate header info.** From-address has to identify the sender. No spoofing the recipient’s licensee name in the From line; no fake reply-to.
- **Honest subject line.** ‘Re: our conversation last week’ when you’ve never spoken — that’s a §316.5 violation by itself, and it’s the move that gets cold-email lists nuked from regulator inboxes.
- **Identify the email as commercial.** Ad / promotional intent has to be clear. We don’t need a ‘THIS IS AN ADVERTISEMENT’ banner — ‘I’m offering CannAgent to other operators’ in the body counts.
- **Physical postal address.** A real one. Footer line, every cold email. CannAgent’s footers pull from the CANNAGENT_PHYSICAL_ADDRESS env var so the wrong-address-by-typo failure mode is impossible.
- **Working opt-out.** A link OR a reply-mechanism the recipient can use to remove themselves from the list, no login, no fee. Honored within 10 business days.
WSLCB / OLCC / MED scope — what the state regulators care about (and what they don’t)
Cannabis advertising rules govern customer-facing marketing. Cold-email between licensees usually isn’t in scope — but a few specific moves push you back into it fast.
- **B2B operator-to-operator email about a software product** — generally NOT regulated as cannabis advertising under WAC 314-55-155, OAR 845-025-8050, 1 CCR 212-3 R 6-205. The rule scope is ‘advertising of marijuana, marijuana products, or marijuana licensees to consumers.’ A licensee emailing another licensee about a POS isn’t consumer advertising.
- **An efficacy claim about cannabis** in your cold email (‘our system helps you sell more flower’ → safe; ‘our system grows your THC potency’ → not safe) — pulls you back under WSLCB advertising scope. Don’t make claims about the product even when the email is about software.
- **Discount language tied to cannabis purchases** in the body (‘reply for 20% off your bulk-flower order’) — would also fold back into advertising scope. We’re emailing about software; keep the body about software.
- **Recipient list scraped from a public WSLCB licensee directory** — fine. Public records. Doesn’t require consent under WA / OR / CO law.
- **Recipient list bought or rented from a third party** — riskier. Ask the seller for the consent record. If they can’t produce one, walk away.
Operator-to-operator courtesy — the unwritten rules
Compliance is the floor. The actual operator community is small, and a poorly-written cold email gets passed around faster than a well-written one. These are the courtesy moves we use.
- **Acknowledge the cold reach.** ‘Doug here, you don’t know me but I run two licensed shops’ — that line costs you nothing and signals you’re not pretending it’s a referral. Operators have radar for fake-warm openers.
- **Cite your own license number.** Green Life Cannabis (414755) and Seattle Cannabis Co (426199) at the top of every cold email. Says: I’m operating in the same regulatory frame you are. Builds 30 seconds of trust.
- **Two questions, then stop.** Long cold emails get scrolled past. Two yes/no questions in the screener pattern (‘Are you on Dutchie? Is your bill north of $1,500/store?’) qualifies the prospect AND respects their time.
- **One clean off-ramp.** ‘Reply pass and I’m gone.’ Makes the recipient’s decision easier — they don’t have to find an unsubscribe link OR draft a polite no.
- **Never CC three people from the same shop.** Owner gets the email, GM gets the email, comptroller gets the email — that’s a panic move on your end and a turnoff on theirs. Pick one contact per shop.
- **Don’t follow up more than twice.** First email + one bump = the entire campaign. After that you’re a stalker, not a vendor.
What gets you flagged — fast
These are the moves that turn a cold email into a complaint. We’ve seen all of them in our own inbox over the past 18 months.
- **Subject line lies.** ‘RE: your invoice’ / ‘Following up on our call’ / ‘[Action required]’ when none of that is true. Reportable under §316.5.
- **No physical address.** First thing the WSLCB-CCRS people look at when a complaint lands. Missing address = automatic strike.
- **Sending from a domain that doesn’t match your business.** ‘mailoutreach42.io’ instead of yourdispensary.com. Reads as a list-broker; deliverability tanks; some recipients report it as phishing.
- **Buying a leaked WSLCB list.** Public records are public; lists scraped from leaked employee data are not. Don’t.
- **Sending the same email seven times in two weeks.** That’s how you get on a state-blacklist that gets quietly shared between regulators. Once you’re on it, you’re effectively done with cold outreach.
- **Pretending an operator referred you.** ‘[Mutual operator] said I should reach out’ when they didn’t. The operator community is small; this gets back to them in a week.
What we ship in CannAgent for this exact problem
Honest disclosure: we built the cold-outreach infrastructure for ourselves first, then offered it to other operators. Five things land out of the box.
- **Bulk-import** — paste the WSLCB licensee CSV; case-insensitive email dedup; rows tagged so the inbound demo-form leads stay separated from the cold cohort.
- **Cold-template** — operator-to-operator copy with license-number disclosure baked in; placeholders for first-name + dispensary + physical-address + opt-out token; sentinel fallback when the address env-var is unset so you can’t accidentally send a §7704-non-compliant email.
- **Working /unsubscribe page** — recipient clicks, opt-out lands as an audit row keyed to email, every future send to that address is automatically blocked.
- **Manual suppression** — when a recipient replies ‘remove me’ instead of clicking the link, paste the email into the suppression form. Same audit-row write; same enforcement.
- **Suppression enforcement** — every send goes through a JOIN against the unsubscribe table before Resend fires. Fail-closed: if the check throws, the send is skipped, not sent. The audit row records the block so you can see why no email left.
Takeaways
- CAN-SPAM 16 CFR §316.5 is the federal floor: accurate headers / honest subject / commercial-intent disclosure / physical address / working opt-out — non-negotiable
- WSLCB / OLCC / MED advertising rules govern consumer-facing marketing; B2B operator-to-operator email about software is generally out of scope unless you make efficacy claims about cannabis
- Operator-to-operator courtesy: acknowledge the cold reach / cite your license number / two questions + clean off-ramp / never CC three people / cap follow-ups at one bump
- Subject-line lies + missing physical address + buying-leaked-lists are the moves that turn a cold email into a complaint
- CannAgent ships bulk-import + cold-template with placeholders + /unsubscribe + manual suppression + suppression enforcement out of the box — built because we needed it ourselves
Ready to talk through your migration?
30-minute demo. We end by quoting the cutover from your current setup — fixed scope, no hourly games.