What happens to a lead — by email.
Two scenarios, side-by-side. Same plumbing underneath — the only things that change are who the lead is assigned to and which name shows in the inbox.
Agent signs up a lead
The agent is logged in and in Selling Mode (the bm_agent cookie is set). The lead is assigned directly to that agent — the public round-robin queue is untouched.
Lead submits the form
Assign directly to the agent
Save lead + schedule 7 PM follow-up
captured_by_agent = true and a follow-up time set to the next 7 PM in the lead's local timezone.Confirmation email → Lead
New-lead alert → Agent + Graham
Presentation follow-up → Lead
Cold lead from the website
A visitor submits the form anonymously — no agent cookie. The lead is assigned by round-robin across active agents.
Visitor submits the form
Round-robin assignment
next_assignee()). Order today: Katie → Gemma → Steve → Harry → Sean → repeat.Save lead + schedule 7 PM follow-up
captured_by_agent = false. Follow-up time set to the next 7 PM in the lead's local timezone.Confirmation email → Lead
New-lead alert → Agent + Graham
Presentation follow-up → Lead
One-line cheat sheet
| When | Agent-captured | Cold lead | |
|---|---|---|---|
| Confirmation | Immediately | From {Agent}, replies go to the agent | From Bay Media, replies go to hello@ |
| Agent alert | Immediately | Always sent to assigned agent + graham@baymedia.ai. Reply-to is the lead. | |
| Presentation | Next 7 PM (lead's timezone) | "It's {Agent} again." Replies go to the agent. | "It's the Bay Media team here." Replies go to hello@. |
Why two queues?
Agent-captured leads are not counted in the public rotation. If you sign up three leads in a row, the next cold visitor still goes to whichever agent is next in line.
Why 7 PM local?
The presentation follow-up lands at the end of the lead's working day — when they're more likely to actually read it, not when they just submitted the form.
Idempotent
Each lead can only receive the presentation email once — the system stamps it after sending so the cron can't double up.
Suppression
Unsubscribed, bounced or complained addresses are automatically skipped — no need to manage that manually.
