The outbound that knows which email worked
A 35-person B2B agency's outbound pod switched to AI seats that wrote every email from scratch, replies fell, and nobody could say which email had worked at the client's quarterly review.
Can't tell which outbound email drove replies
The writers' 12 templates became the only source of copy. A rule-based selector picks one per contact, and every draft gets a ledger row naming its template before it can be queued. Replies are matched back by header into a table that refuses rates on thin data, and a named person approves each batch.
- 300 of 300 drafts carried a ledger row before they could be queued and matched their template exactly outside the slots; 2 of 2 unstamped drafts were refused
- 0 emails sent: 244 approved rows went to a local outbox file, and the queue blocked 3 of 3 broken copies of a real draft in its CAN-SPAM self-test
- Rule-based template selector
- Slot-filling adapter
- Send ledger
- Reply attribution by email header
- CAN-SPAM check
- Suppression list
- Local outbox queue
- Node.js
Same problem?Send it over.
Tell me what your version looks like and which tools it runs in. I reply with how I would build it.
-
Performance marketing
The retainer, on the record
all 6 approved spend changes carry a named approver, and the gate sent 1 approval back for a missing reason
-
Game development
The 30-minute demo that sells months of Unreal work
a unique branded deliverable in 30 minutes per client
-
Media and creative agency
The Monday margin watch that reads jobs, not people
1,124 timesheet rows read, 31 person ids dropped at load, 0 found in any output file