Nobody Read the 40,000 Emails Your AI Sent Last Month. The Penalty Is Priced Per Email.
CAN-SPAM was written for campaigns a human approved before they went out. AI SDR tools generate a unique message per recipient, which means the thing being reviewed — the template — is no longer the thing being sent. That gap is where the liability lives.
The Five Requirements, and How Generation Breaks Each One
CAN-SPAM's substantive obligations are short enough to memorize. What changes with AI is not the rule but the review model: a template-level check no longer covers the message that actually lands in the inbox.
The Template Review Gap
Traditional email compliance rests on an assumption that is now false: that reviewing the creative reviews the send. With merge fields, the reviewed artifact and the delivered artifact differed only in a name. With generation, the model composes a distinct subject line and opening for every recipient, sometimes drawing on scraped context your reviewer never saw.
That means legal approved a prompt, not a message. If the prompt says "reference something specific about their business and create urgency," the model will invent urgency — a deadline, a competitor's move, a mutual connection — because that is what was asked for. Nothing in the approval chain looked at the 40,000 sentences that resulted.
The Prompt Is Now a Compliance Artifact
Treat the generation prompt the way you treat the template: version it, review it, and keep it in the record. Prohibitions belong in the prompt itself — no thread-simulating subject lines, no asserted prior relationship, no invented deadlines, no claims about the recipient's company that are not in the supplied enrichment fields. A prompt that rewards open rate without those constraints is a system designed to produce deceptive subject lines at volume.
Aggravated Violations Raise the Ceiling
CAN-SPAM separately targets the practices that make high-volume sending possible. Automated outreach stacks tend to use several of them by default:
- Address harvesting — collecting addresses by automated means from websites or online services that published a policy against it.
- Dictionary attacks — generating addresses by combining names and domains. Pattern-guessing an email as first.last@company.com is exactly this technique when the address was never verified against a real source.
- Automated account creation — scripting the registration of multiple sending accounts to distribute volume.
- Relaying through others' systems — sending through computers or networks accessed without authorization.
These matter because the same infrastructure decisions that improve deliverability — many domains, many mailboxes, pattern-generated addresses, third-party warming pools — are the ones the statute treats as aggravating. Deliverability engineering and compliance engineering are pulling in opposite directions, and the vendor's default settings usually favor deliverability.
Who Is Actually Liable
CAN-SPAM Is the Floor, Not the Whole Map
Federal preemption is narrower than most outreach teams assume. CAN-SPAM preempts state laws that regulate commercial email, but expressly preserves state law that prohibits falsity or deception in any portion of a message. Several states run active statutes in that preserved space, and some support private suits — which is how most cold email litigation actually reaches a company.
- State deception statutes reach falsified header and subject content and are not preempted.
- Consumer protection and UDAP claims apply to the substance of what the model asserted about your product or theirs.
- Non-US recipients sit under opt-in regimes. Enrichment data rarely carries reliable jurisdiction, so a US-legal sequence routinely delivers into Canada and the EU without a lawful basis.
- Platform terms from your email infrastructure provider are enforced faster than any statute, and suspension is the more probable near-term consequence.
Controls That Survive Machine-Speed Sending
- Ban thread-simulating subject prefixes and fabricated prior contact in the prompt itself
- Restrict personalization to a whitelist of supplied enrichment fields — no free-form claims about the recipient
- Require the advertisement identification and the footer to be appended outside the model's output, not generated by it
- Prohibit invented deadlines, scarcity, and referral claims explicitly
- Pre-send automated checks for banned subject patterns, missing address, and missing opt-out on every generated variant
- Human review of a random sample per batch, sized so a defect appearing in 1% of sends is likely to surface
- Hard block on send when the footer or unsubscribe link is absent, rather than a warning
- Retain every message as sent — not the prompt or template — for the full limitations period
- Route any reply containing opt-out language to suppression before intent classification runs
- Suppress at the domain level when a recipient asks on behalf of their company
- Pause the entire sequence for a contact on any reply, then classify, rather than classifying then pausing
- Sync suppression across every sending domain and mailbox, since rotation defeats a per-inbox list
- Keep the unsubscribe endpoint live well beyond the 30-day minimum and monitor it for failures
Frequently Asked Questions
Is a 'Re:' subject line on a first-touch email actually illegal?
It is the clearest example of a subject line likely to mislead a recipient about the contents of the message, because it asserts a prior exchange that does not exist. The requirement is that the subject not be deceptive relative to the content, and a reply prefix on an unsolicited first contact fails that on its face. Growth teams treat it as an open-rate tactic; it is the most legible violation in an audit, and AI generators reach for it constantly because it maximizes the metric they were pointed at.
Our AI tool has a 'CAN-SPAM compliant' badge. Does that cover us?
A badge typically means the platform injects an unsubscribe link and a physical address field. Those are two of five requirements, and the three it cannot cover — header accuracy, subject line honesty, and advertisement identification — are exactly the ones the generation model affects. Vendor compliance features address the mechanical requirements and leave the content requirements with you.
Does a reply saying 'not interested' count as an opt-out?
Treat it as one. The statute requires honoring a recipient's request not to receive future messages, and it does not prescribe magic words. Arguing that 'not interested' was a soft signal rather than a formal unsubscribe is a bad position to defend, and it is precisely the classification your reply-routing model is likely making. The safe rule is that any reply expressing an unwillingness to continue moves the contact to suppression.
How long should we retain generated messages?
Long enough to reconstruct what a specific recipient received, through the applicable limitations periods for federal and state claims — several years in practice. This is a real storage decision that outreach teams routinely get wrong, because platforms often retain rendered message bodies for a much shorter window than they retain campaign metadata. If you can show the template but not the message, you cannot prove what you actually sent.
We only email business addresses we verified. Are we lower risk?
Meaningfully, yes. Verified addresses from legitimate sources avoid the harvesting and dictionary-attack aggravating factors, which are what convert an ordinary compliance problem into an enhanced-damages one. It does not affect the content requirements. Verification is a list-quality control, and most AI outreach failures are message-content failures.
Review What Was Sent, Not What Was Approved
Every AI outreach failure mode reduces to one structural fact: the artifact your reviewer signed off on is not the artifact your recipient received. Constraining the prompt narrows the gap. Sampling the output measures it. Storing the sent messages is what lets you answer the only question that matters after a complaint — what did this person actually get.
Pull 50 messages your system sent last week at random and read them as a recipient would. If any of them assert a call that never happened, a deadline nobody set, or a relationship nobody has, the problem is in the prompt, and it is currently shipping at the rate of your entire send volume.