This is a build tutorial, not a strategy post. If you want the case for why discovery call automation is the second-highest-leverage system in a coaching business, the discovery call automation pillar covers that. This post assumes you have already decided to build the thing and want to know exactly which tools to pick, what to wire to what, and what to do at each step.
By the end of it you will have a working flow that takes a prospect from "I am interested" to a confirmed, qualified, prepared discovery call without you touching any of the operational chain in between. It will not be the most sophisticated version of this system you can build, but it will work end to end, and you can layer in the more advanced pieces (AI proposal drafting, sentiment-aware reminders, branched post-call sequences) once the foundation is running.
Realistic time to build, working evenings and weekends: ten to twenty hours spread over a week or two. With the AI qualification layer added on top, closer to thirty.
Before you start: what you need
Three things need to be true before this is worth your time:
- You have an offer with a clear price point (most of the qualification logic depends on this).
- You are currently getting at least a handful of discovery call enquiries per week. If you are getting one a month, build lead follow-up first, because that is your bottleneck.
- You have answered, in writing, the five questions a prospect must pass to be worth a call with you. If you cannot articulate these, you cannot automate the qualification.
You will also need accounts on a handful of tools. The default stack below is what we recommend for a solo coaching business doing 10 to 30 calls a month. Swap in equivalents if you already pay for something that does the same job.
| Layer | Default pick | Equivalent if you already use it |
|---|---|---|
| Intake form | Tally (free tier works) | Typeform, Jotform, Fillout |
| Scheduler | Cal.com (free tier works) | Calendly, SavvyCal, Dubsado scheduler |
| CRM / record store | Notion or Airtable | Dubsado, HubSpot Free, ClickUp |
| Workflow engine | n8n (self-hosted or cloud) | Make, Zapier, Pipedream |
| Loops or ConvertKit | ActiveCampaign, Customer.io | |
| SMS | Twilio | MessageBird, Vonage |
| AI layer | OpenAI or Anthropic API | Any model you already pay for |
| Call recording | Granola or Fireflies | Otter, native Zoom transcripts |
The total monthly tooling cost on the default stack is around £40 to £120 depending on volume, plus a few pounds in AI API costs at typical lead volumes.
Step 1: Build the intake form
The intake form does two jobs. It captures the basic data you need, and it asks the qualifying questions in a way that does not feel like a job application.
Open Tally and create a new form. Keep it to seven fields:
- Name
- Website or social link
- One sentence on what they do
- One sentence on what they are stuck on
- Budget band (3 options, anchored around your offer price)
- Preferred timing for a call (this week, next week, no rush)
The two free-text fields are the important ones. They are what the AI layer will read in step three to decide whether the prospect is qualified, and what the messaging layer will reference in step four to make the replies feel personal.
Two configuration details worth getting right. Turn on the "save partial responses" setting so you capture leads who start the form but do not finish (those are still warm). Add a hidden field that captures UTM parameters from the URL so you can later see which channels send qualified vs unqualified leads.
Publish the form and put it behind your "book a call" button on the site. Do not link directly to a Cal.com page yet. The form is the qualification gate; the scheduler comes after.
Step 2: Set up the scheduler
Create a new event type in Cal.com called "Discovery Call". Settings to change from the defaults:
- Duration: 30 minutes. Discovery calls longer than this rarely produce more information; they just bleed your day.
- Buffer after: 30 minutes. You need this to write notes, breathe, and not arrive flustered at the next call.
- Minimum notice: 24 hours. Do not let prospects book a call for tomorrow morning.
- Daily limit: 4. Discovery calls are cognitively expensive. Five back to back is the fastest way to start sounding tired on calls four and five.
- Required questions: leave these empty. The intake form already captured what you need; do not make the prospect answer the same things twice.
- Custom redirect: send to a thank-you page on your own site so you control what the prospect sees post-booking (and so you can fire a confirmation event from your own code).
Generate a unique Cal.com link for this event type and store it somewhere your workflow engine can read it later. You will not be giving this link to the prospect directly. The workflow will deliver it conditionally based on whether the AI layer marks them as qualified.
If you are already paying for Dubsado or Paperbell, you can use their built-in scheduler instead. The configuration principles are identical.
Step 3: Wire qualification into the flow
This is where most DIY attempts fall over. The mechanics are not hard; the writing is. Spend an hour on the prompt before you spend ten minutes on the wiring.
Open your workflow engine (n8n is the example here; the steps map directly to Make or Zapier). Create a new workflow triggered by a Tally form submission webhook.
The first node is a record creator. Take the form fields and write them to a new row in your CRM (a Notion database called "Discovery Call Prospects" works fine to start). Include columns for the form fields plus three columns the AI will populate: qualification_status, qualification_reasoning, personalisation_notes.
The second node is the AI call. Send the prospect's two free-text answers plus the budget band to your model of choice, with a system prompt structured like this:
You are the assistant for a coach selling a £5,000 high-ticket
programme. Read the prospect's intake and decide whether they are
a fit for a discovery call.
A qualified prospect meets all four of these:
1. They are running a business or are a serious operator (not a hobbyist).
2. Their stated stuck point is one the coach can credibly help with.
3. Their budget band is "£3,000 to £10,000" or higher.
4. Their timing signal is "this week" or "next week".
Return JSON with three fields:
- qualification_status: "qualified", "borderline", or "unqualified"
- qualification_reasoning: 2 sentences explaining the call
- personalisation_notes: 2 specific things from their intake that the
coach should reference in the reply
Rewrite the four criteria to match your actual offer. The "borderline" bucket is what saves you from a brittle binary classifier; route those to your inbox for a human call instead of letting the system decide.
The third node is a router. Read qualification_status and branch:
- Qualified → send the personalised reply with the Cal.com link.
- Borderline → send a follow-up question by email and create a task in your CRM for you to review within 24 hours.
- Unqualified → send a polite, respectful no with a link to a free resource.
Log every decision and the reasoning to the CRM record. When you later disagree with a call the system made, you can see exactly why, adjust the criteria, and rerun.
Step 4: Build the confirmation and reminder sequence
This is the layer that lifts show rates from 70% to over 90%. It runs once the prospect has actually booked a call, triggered by Cal.com's booking webhook.
The sequence has four messages:
- Booking confirmation (email, fires immediately). References the personalisation notes from step three. Includes one piece of prep material relevant to what they said they are stuck on.
- 24-hour reminder (email). Attaches or links a short prep asset (a case study, a one-page worksheet, a five-minute video). The asset is the highest-leverage element here because it both raises show rate and warms the conversation.
- One-hour reminder (SMS). One sentence. "Hi {first_name}, just confirming our call at {time}. Joining link: {url}. See you shortly. {coach_name}".
- Post-booking nurture pause. Other marketing emails to this prospect pause for the 48 hours around the call. Nothing kills a discovery call mood like getting a generic newsletter the morning of.
In n8n, the cleanest way to build this is one workflow per message, each scheduled relative to the booking time, with a shared lookup to the CRM record for the merge fields. In Make or Zapier, you build a single sequence with delay nodes between steps.
Two non-obvious choices to get right. First, send the SMS reminder from a number that has the coach's name as the display name, not a generic short code. Prospects respond differently to a message that looks like it came from a person. Second, the 24-hour email should send between 8am and 7pm in the prospect's local time zone; not when the timer expires at 3am their time. Cal.com exposes the time zone field in its webhook payload, so this is a five-minute conditional in your workflow.
Step 5: Connect live call tooling
Set up Granola or Fireflies to auto-join every event on your calendar tagged as a discovery call. The setup takes about ten minutes:
- Connect your calendar.
- Set the auto-join rule to events containing "Discovery Call" in the title.
- Set the post-call summary template to capture: stated pain points, current situation, stated goals, objections raised, fit signals, follow-up actions.
- Connect the output to your CRM so the summary lands attached to the prospect record automatically.
After the call ends, you will get a structured summary in your inbox within five minutes. Read it instead of typing notes. The summary becomes the input to step six.
If you are using Zoom or Google Meet without a third-party tool, both now have native AI summaries that work reasonably well for this. The advantage of a dedicated tool is that the summary lands in your CRM automatically; the advantage of the native option is that there is nothing extra to pay for.
Step 6: Build the post-call branching
This is the last and most revenue-relevant piece. Most coaches build everything up to step five and then keep doing the post-call work by hand. That is where the deals leak.
In your CRM, add a single-select field on the prospect record called "Call Outcome" with three options: Go, Thinking, Not now. Right after every call, you tag this field once.
Create three workflows, each triggered by the field updating:
- Go: pulls the Granola summary and the prospect record, sends them to your AI layer with a prompt to draft a proposal in your voice referencing two specific things from the call. The draft lands in your inbox within ten minutes. You review, edit if needed, and send. Total post-call admin: under two minutes.
- Thinking: fires a four-message follow-up sequence over the next 14 days. Each message references something specific from the call summary. The final message is a clean "I will close your file if I do not hear back by Friday" so the lead does not sit in your CRM forever.
- Not now: sends a polite resource and adds the contact to a long-term nurture list (a monthly newsletter at most). No multi-email "drip" sequence; respect the no.
The Go workflow is the one that lifts close rates the most. The window between the end of a great discovery call and the prospect's enthusiasm fading is shorter than most coaches think. Coaches who get the proposal and payment link out within fifteen minutes consistently close ten to fifteen percentage points more than coaches who send the next day.
Test the whole thing end to end
Before you point any real traffic at this, run a full test:
- Submit the intake form as yourself (use a real email but mark the record as a test in your CRM).
- Confirm the qualification fires and routes correctly.
- Click the calendar link, book a slot, and verify the confirmation and reminder sequence land at the right times.
- Cancel the test booking and confirm the cancellation flow does what you expect (it should pause the reminders).
- Run the same loop with a deliberately unqualified submission and confirm the "polite no" branch fires.
- Mark a fake call outcome and check the post-call sequence triggers.
Plan to spot four or five small bugs in this pass. There are always edge cases the diagram did not catch. The most common ones: time zone handling in the SMS reminder, the CRM record not updating when the prospect reschedules, the Granola summary landing in the wrong record. Fix these now, not when a real prospect hits them.
Cost and time, honestly
For a coach building this themselves on the default stack:
- Tooling: around £40 to £120 per month plus a few pounds in AI API costs at typical lead volumes.
- Build time: ten to twenty hours over a week or two for the basic version. Closer to thirty hours if you do the AI qualification and the AI proposal drafting properly.
- Maintenance: about an hour a month once it is running, mostly tweaking the qualification prompt as you see decisions you disagree with.
The first month is the painful one. After that the system runs quietly and you stop thinking about it.
FAQ
Do I have to use n8n? I already use Zapier.
No. The steps above map almost one to one. Zapier and Make handle the same flows; the differences are pricing (Zapier gets expensive at higher task volumes) and the AI nodes (n8n's are more flexible, Zapier's are easier to set up for a first build). Pick the one you already pay for.
What if I use Dubsado for everything already?
Then steps one, two, four, and six can be built natively inside Dubsado's workflow engine. Steps three (AI qualification) and five (Granola) still need to sit outside Dubsado, with a workflow tool gluing them together. The Dubsado vs Praxail comparison covers where the line is between what Dubsado can do alone and what needs an AI layer on top.
Can I skip the AI qualification layer at first?
Yes. The fallback is a rules-based filter in your workflow tool: budget band must be X or higher, free-text fields must be longer than 30 characters, and so on. It is cruder than the AI version and will let through more unqualified leads, but it is a valid v1. Add the AI layer in month two.
What if a prospect reschedules?
Cal.com and Calendly handle reschedules natively. Make sure your reminder workflow listens for the reschedule webhook and resets the timers; otherwise you will send a one-hour reminder for the original time. Also build a rule that flags any prospect who reschedules twice for manual follow-up; double-reschedules are a strong cold-intent signal.
What if it goes wrong on a real prospect?
You will know within five minutes because either the prospect will email you confused or you will see a failed run in your workflow tool. Most failures are recoverable: the prospect's confirmation email did not send, or the SMS reminder fired in the wrong time zone. Email them personally, fix the workflow, move on. The reputational cost of one small failure caught and fixed is much smaller than the cost of staying manual for another six months.
What about the recording consent question?
Tell prospects on the booking confirmation that the call will be recorded for note-taking purposes and that the recording is not shared. In most jurisdictions a clear notice in the confirmation email plus a verbal mention at the start of the call is enough. If you operate in a two-party consent state (or in regulated industries), check the local rules before deploying recording.
Where to take this next
Once this is running, the next two systems to build are client onboarding automation and client accountability automation. Each of those builds on the prospect data this system captures, so building them in order compounds rather than fragments your stack.
If you read this far and decided you do not want to build it yourself, that is a reasonable call. The whole stack assembled and AI-tuned for a specific coaching business is roughly a four to six week engagement when we build it. See how Praxail works for what a complete build looks like, including the AI qualification and post-call drafting layers that are the slowest to get right when you do it from scratch.