Creating Your First Workflow
This tutorial walks you through building a real automation workflow from scratch. By the end, you'll have an automated post-job Google review request that sends via WhatsApp every time you complete a job — without anyone on your team remembering to ask.
Automations are available on the Growth tier (up to 10 workflows) and Scale tier (unlimited).
What We're Building
The workflow: When a deal moves to the "Completed" stage, automatically send a WhatsApp template message asking the customer for a Google review.
Why this one first: It's the highest-impact, simplest automation. Contractors who automate review requests typically double their Google review volume within 30 days. And it only takes 2 minutes to set up.
Prerequisites
Before starting, make sure you have:
- A CustomerFlows account on the Growth or Scale tier
- WhatsApp connected (see Connecting Your WhatsApp Number)
- An approved WhatsApp template message for review requests (see Sending Template Messages)
If you don't have a review request template yet, create one now:
- Go to Settings, then WhatsApp, then Templates
- Click New Template
- Category: Utility
- Template name: "review_request"
- Message body:
Hi {{contact_name}}, thanks for choosing {{company_name}}! If you had a good experience, we'd appreciate a quick Google review: {{review_link}}
- Submit for approval (typically approved within 24 hours)
Replace {{review_link}} with your actual Google review link. To find it: search your business name on Google, click "Write a review" on your Google Business Profile, and copy the URL.
Step 1: Create the Workflow
- Go to Automations in the main navigation
- Click + New Workflow
- Enter a name: "Post-Job Review Request"
- Click Create
You'll see the workflow builder with three sections: Trigger, Conditions, and Actions.
Step 2: Set the Trigger
The trigger defines when this workflow runs.
- Click Set Trigger
- Select Deal stage changed
- Set "Changed to" to your Completed stage (or whatever you named the stage where a job is finished)
- Leave "Pipeline" set to your primary pipeline (or select a specific pipeline if you have multiple)
What this means: Every time any deal moves to the Completed stage, this workflow fires.
Step 3: Add Conditions (Optional)
Conditions filter which deals trigger the workflow. For a review request, you might want to skip very small jobs or jobs where the customer was unhappy.
Example condition: Only send review requests for deals with a value above $200.
- Click Add Condition
- Select Deal value
- Set operator to Greater than
- Enter 200
If you don't need conditions, skip this step. The workflow will fire for every deal that reaches Completed.
Step 4: Add the Action
Actions define what happens when the trigger fires and conditions are met.
- Click Add Action
- Select Send WhatsApp Template
- Choose your approved "review_request" template from the dropdown
- Map the template variables:
{{contact_name}}→ Contact Name (from the deal){{company_name}}→ Company Name (from your account settings){{review_link}}→ Enter your Google review URL directly (this is the same for every customer)
Timing: By default, the action fires immediately when the trigger occurs. If you want to delay it (e.g., send the review request 2 hours after job completion so the customer has time to assess the work):
- Click the clock icon on the action
- Set a delay: 2 hours
Step 5: Activate
- Review your workflow summary:
- Trigger: Deal moved to Completed
- Condition: Deal value > $200 (if you added this)
- Action: Send WhatsApp template "review_request" (after 2-hour delay, if set)
- Toggle Active to On
- Click Save
Your automation is live. The next time a deal moves to Completed, the review request will be sent automatically.
Testing Your Workflow
- Create a test deal in your pipeline (or use an existing test deal)
- Move it to the Completed stage
- If you set a delay, wait for it to elapse. If no delay, the message sends within 1 minute.
- Check the test customer's WhatsApp — they should receive the review request
- Check Automations, then History to see the execution log
The history log shows:
- When the workflow was triggered
- Which deal triggered it
- Whether conditions passed
- Whether the action succeeded or failed
- If failed, the error reason
Your Second Workflow: Stale Deal Alert
Once you're comfortable with the basics, build this one next — it catches deals going cold before they're lost.
- Trigger: Deal unchanged for 5 days
- Condition: Deal stage is not "Completed" or "Paid" or "Lost"
- Action: Send email notification to the deal owner with subject "Deal going stale: {{contact_name}}"
This alerts your team when a deal hasn't moved in 5 days, prompting a follow-up before the customer goes cold.
Your Third Workflow: Appointment Confirmation
- Trigger: Deal moved to "Scheduled" (or "Appointment Scheduled")
- Action: Send WhatsApp template immediately: "Hi {{contact_name}}, your appointment with {{company_name}} is confirmed for {{appointment_date}} at {{appointment_time}}. Reply CHANGE to reschedule."
Then add a second action with a delay:
- Action (24 hours before appointment): Send WhatsApp reminder template: "Reminder: {{company_name}} will be at your property tomorrow at {{appointment_time}}. Reply CONFIRM to let us know you're ready."
Common Mistakes and How to Avoid Them
| Mistake | What Happens | How to Fix |
|---|---|---|
| Template not approved yet | Action fails silently | Check template status in Settings > WhatsApp > Templates before activating |
| Wrong stage name in trigger | Workflow never fires | Verify the stage name matches exactly (case-sensitive) |
| No delay on review request | Customer gets the message before they've assessed the work | Add a 1-2 hour delay |
| Forgetting to map variables | Customer receives {{contact_name}} as literal text | Map every variable to a deal field |
| Testing with your own WhatsApp number | Message doesn't arrive (can't message your connected business number) | Test with a different phone number |
Workflow Ideas for Contractors
| Workflow | Trigger | Action | Delay |
|---|---|---|---|
| Review request | Deal → Completed | Send review template | 2 hours |
| Stale deal alert | Deal unchanged 5 days | Email notification to owner | None |
| Appointment confirmation | Deal → Scheduled | Send confirmation template | None |
| Appointment reminder | Deal → Scheduled | Send reminder template | 24 hours before appointment |
| Quote follow-up | Deal → Quote Sent | Send follow-up template | 3 days |
| Maintenance outreach | Deal → Paid | Create task "maintenance follow-up" | 30 days |
| Emergency notification | New deal with urgency = Emergency | Email + SMS to owner | None |
| Welcome message after booking | Deal → Approved | Send WhatsApp welcome template | 1 hour |
See Common Workflow Recipes for pre-built versions of each.
FAQ
How many automations can I have on the Growth plan? Up to 10 active workflows. You can create more than 10 but only 10 can be active simultaneously. Deactivate unused ones to make room.
Can one trigger fire multiple actions? Yes. A single trigger can have multiple actions that execute in sequence. For example: send a WhatsApp message AND create a task AND notify a team member — all from one trigger.
Can I duplicate a workflow? Yes. Click the three-dot menu on any workflow and select Duplicate. This creates a copy you can modify without affecting the original.
What happens if the customer opted out of WhatsApp messages? The action fails gracefully. The workflow history log shows "Recipient opted out" and no message is sent. The rest of your workflow (other actions, if any) continues normally.
Related
- Automation Overview -- How automations work
- Triggers -- All trigger types
- Actions -- All action types
- Sending Template Messages -- Creating and approving templates
- Common Workflow Recipes -- Pre-built workflows
Need help building a specific workflow? Email [email protected] with what you want to automate and we'll help you set it up.