The Short Answer
A seven-step Make automation — Tally intake form → CRM → AI brief → Notion workspace → welcome email → calendar link → Slack review — cuts manual client onboarding from ~47 minutes to under 5, every time. The stack costs $15–30/month and requires zero coding. The single biggest failure point: skipping Make's error-handling modules, which causes the automation to silently drop new clients when one step times out.
What Manual Onboarding Actually Costs
A single new-client onboarding — welcome email, project folder, CRM entry, kickoff scheduling, first status update — runs roughly 47 minutes. At 3–4 new clients per month, that's 2–3 hours of pure admin. Over a year, it's a meaningful block of billable time or lead-generation capacity gone to copy-paste tasks.
The fix is a five-tool stack connected by Make (formerly Integromat) as the automation backbone.
The Onboarding Stack
| Role | Tool | Cost |
|---|---|---|
| Intake form | Tally (recommended) or Typeform | Free |
| Automation backbone | Make | ~$9/mo (Core plan) |
| AI generation | Claude API or ChatGPT API | ~$1–3/mo at low volumes |
| Project workspace | Notion or Google Drive | Free tier |
| Kickoff scheduling | Cal.com or Calendly | Free tier |
| CRM | HubSpot (free tier) or Airtable | Free tier |
Total: under $15/mo for most freelancers. The $30/mo upper bound applies if API usage climbs or you upgrade Make for additional operations.
Step 1: Build the Intake Form in Tally
The intake form is the trigger for everything downstream. Unstructured data — an email saying "hey I need a website" — breaks automation. Structured form fields don't.
Tally is the stronger choice over Typeform here: no per-submission fees on the free plan, and it fires a webhook on every submission that Make can catch immediately.
Required fields:
- Full name
- Company / project name
- Email address
- Project description (long text)
- Budget range
- Timeline / deadline
- How they found you (dropdown)
- Specific goals or constraints (long text)
Tally has a native Notion integration, but for multi-step automation, use Make's webhook trigger instead — it gives you control over the full chain rather than a direct two-way push.
Step 2: Configure the Make Scenario
Make watches for the Tally webhook and runs the full chain in sequence. The scenario should execute these steps in order:
- Parse the incoming form data
- Check HubSpot for an existing contact with that email
- Create a new contact or update the existing record
- Pass the project description to Claude (or ChatGPT) via Make's HTTP module
- Duplicate a Notion project template, pre-filled with intake data
- Draft and send a welcome email via Gmail
- Send the client a kickoff calendar link
The full chain completes in under 90 seconds.
Critical configuration — error handling: Add Make's error-handling modules at each step. If the Claude API times out or the Notion integration fails, the scenario should fire a Slack alert to you and halt — not silently continue or drop the client. This is the setup step most guides skip and the one that causes real problems.
Step 3: Generate the Project Brief with AI
This is the highest-value AI step. Instead of reading intake responses and writing a brief from scratch, Make passes the raw form data to Claude via an HTTP POST to the API.
Prompt template (paste directly into Make's HTTP module body):
You are a professional project manager. Based on the following client intake:
Client name: {{name}}
Company: {{company}}
Project description: {{description}}
Goals: {{goals}}
Timeline: {{timeline}}
Write a concise project brief (200-300 words) that:
1. Summarizes the project scope
2. Identifies 2-3 key success metrics
3. Flags any potential risks or clarification needed
Tone: professional but direct. Avoid filler phrases.
The output writes directly into the new Notion project page. When you open the workspace, the brief is already there — ready to edit, not create. This step alone saves 15–20 minutes per client.
Step 4: Create the Project Workspace Automatically
In Notion, maintain one master project template with these pages: brief, meeting notes, deliverables tracker, client portal. Make duplicates this template for each new client and fills in the name, project description, and key dates from the intake form.
For Google Drive users, Make can copy a folder template and rename it — no manual folder creation required.
Naming convention to adopt: YYYY-MM ClientName — ProjectType
Consistent naming is what makes search reliable months later. Without it, the time you saved on creation gets spent on retrieval.
Step 5: Draft and Send the Welcome Email
The welcome email is where service providers lose disproportionate time trying to balance warmth, professionalism, and personalization. AI drafts this in the same Make scenario, immediately after the workspace is created.
Prompt template:
Write a brief welcome email (150 words max) to a new client named {{name}} from {{company}}. They're working on: {{description}}.
The email should:
- Confirm receipt of their intake form
- Express genuine enthusiasm for their project
- Confirm I'll be in touch within 24 hours to confirm kickoff details
- Include a line to book their kickoff call: {{cal_link}}
Tone: warm, direct, no filler. Sign off as [Your Name].
Make sends the output via a connected Gmail account. Log every sent email in Notion for your own records.
Step 6: Send the Kickoff Calendar Link
The intake form submission or welcome email should include a Cal.com or Calendly link pointing to a dedicated "kickoff call" event type — pre-set to 30 minutes, with relevant pre-call questions already attached and a confirmation reminder enabled.
When the calendar link follows immediately after the welcome email, most clients book within 24 hours. No scheduling back-and-forth.
Step 7: Human Review Checkpoint
After the automation runs, Make sends a Slack message summarizing what was created: contact added, workspace URL, brief excerpt, email sent confirmation. A 2–3 minute review is enough to catch anything that needs adjustment before the client's kickoff call.
What to expect in practice:
- AI-generated project briefs need light edits roughly 30% of the time — usually scope clarification or tone adjustments
- Welcome emails rarely need changes
- The review is a quality control step, not a fallback for broken automation
What This Doesn't Automate
- Ambiguous projects: If the intake description is vague, the AI brief will be vague. A discovery call before the intake form is the right fix for complex or high-stakes engagements.
- Contract signing and payment: Use HelloSign or PandaDoc for contracts. Do not route contract generation through AI without review.
- Incomplete submissions: Build a Make filter that checks for empty required fields. If fields are missing, trigger a follow-up email asking for the specific missing information — don't run the full chain on a half-completed form.
The Full Flow at a Glance
- Client submits Tally intake form
- Make webhook fires
- HubSpot contact created or updated
- Claude API generates 200–300 word project brief
- Notion workspace duplicated from template, brief inserted
- Welcome email drafted by AI, sent via Gmail
- Kickoff calendar link sent to client
- Slack summary delivered — 2-minute review
Total time saved per new client: 35–45 minutes, recurring.
FAQ
Do I need coding skills? No. Make's visual scenario builder handles all logic without code. The HTTP module for Claude API calls requires entering a prompt and an API key — that's the most technical step involved.
Can I use ChatGPT instead of Claude? Yes. OpenAI's API connects to Make's HTTP module identically. Claude tends to produce more concise professional writing, but both work. Choose based on which API account you already have.
What does this cost per month? Make Core plan: ~$9/mo. Claude API at low volumes: ~$1–3/mo. Tally, Cal.com, and HubSpot free tiers: $0. Most freelancers stay under $15/mo total.
What if a client submits incomplete intake data? Add a Make filter immediately after the webhook step. Check that all required fields are non-empty. If any are missing, branch to a follow-up email requesting the specific fields — and stop the main automation chain until a complete submission arrives.