A client books a session. Before they close the tab, a personalized confirmation email has already hit their inbox — routed by session type, no manual send needed.
A client books. Now I'm the one who has to remember to send the welcome email — with the right details for the right session type. Every time.
A booking lands in my inbox. The client gets a generic system confirmation with no context about what to expect.
Discovery? Session 1? Session 2? Each one needs different prep instructions and a different tone.
Find the template for that session type in my notes or drafts. Copy it. Manually fill in their name and session details.
Client emails go from Johnson@operatorsden.com, not my personal address. Easy to forget when you're moving fast.
If the booking came in while I was trading or away from the laptop, the welcome email was delayed — or missed entirely.
"If I was trading when the booking came in, the welcome email just didn't happen."
Cal.com hits a webhook on every confirmed booking. Apps Script catches it, reads the event type, and sends the right email from the right account.
They pick a time, confirm their slot
Cal.com POSTs booking data to Apps Script URL
Discovery, Session 1–4 — each gets a different template
Their name, session date, prep instructions filled in automatically
Johnson@operatorsden.com, no manual intervention
Sends a warm intro, what to expect, and 3 questions to think through before the call.
Sends the pre-session intake prompt and a list of tools to have ready before we start.
Sends a reminder of what we built in Session 1 and what to have open for Session 2.
Sends progress summary from prior sessions and the focus for the next build sprint.
Three honest cards from the build — what worked, what surprised me, what I'd change.
Every tool I tried had a wall: Cal.com's native email was too limited, Zapier cost money, direct Gmail API needed OAuth I didn't want to set up. The constraint pushed me to Apps Script — which turned out to be the right answer anyway. Free, already in the Google ecosystem, and flexible enough to handle any routing logic I needed.
I thought the hard part was wiring Cal.com to Gmail. It wasn't. The hard part was realizing that a generic confirmation email was worthless — the value was in sending the right context for the right session. Once I had the routing right, every client showed up prepared instead of confused.
The current system handles booking confirmation. What I want is a full lifecycle — reminder at 24 hours, reminder at 1 hour, post-session follow-up with homework 2 hours after we close. All routed by session type. One booking event triggers the entire sequence.
Confirmation is solved. The full lifecycle is next.
The current system fires once — on booking. The next version adds a 24-hour reminder and a 1-hour reminder, both personalized to the session type. Clients show up prepared instead of catching up in the first 10 minutes.
2 hours after a session ends, a follow-up fires automatically — recap of what was built, homework for the week, and a soft prompt to book the next session. One booking event triggers the entire sequence. Nothing manual.
Right now if someone doesn't show, nothing happens. The next version detects a missed session, sends a check-in within the hour, and offers a one-click reschedule link. Fewer lost bookings, no awkward follow-up email to write.
Client picks a time. Everything else runs automatically.
Demo recording coming soon.
Check back in a few days.
I build client systems like this in four sessions. Your tools, your workflow, your clients.
Book a discovery call → See more projects