Event-driven workflows — when X happens, do Y
A Groundbase workflow starts when something happens in your CRM and does the thing itself: sends the text, makes the task, sends the thank-you, stops when they reply. Why that matters when you're the whole business, and four scenes from a working week.
A Groundbase workflow starts when something happens in your CRM and then does the work itself. A form comes in, a quote is accepted, a voicemail lands, an invoice is paid in full: the workflow sends the text, makes the task, tags the contact or sends the email. It doesn't leave you a notification saying you should.
That difference is the whole reason I built them this way. A business of one has no one to hand a reminder to. A rule that only tells you something happened adds to the pile. A rule that sends the text takes something off it.
Workflows are in the one plan, with every trigger and step. This post is the why and four scenes. The complete workflows guide has every trigger, step, wait and placeholder.
Why "when this happens" beats "every Monday"
Most follow-up is tied to a moment, not a calendar. The lead is warmest in the hour after the form. The thank-you means most the day the job is paid. A cancelled booking is the person most likely to drift away. A weekly review of your list catches all of these days late.
Groundbase fires an event for most things that happen to a record: a contact or deal created, a deal won or lost, a tag added, a text, email or voicemail received, a call ended, a meeting booked or cancelled, a quote accepted, an invoice paid, a form submitted. Any of them can start a workflow. The workflows run on the server, so they work whether or not you have the app open.
Four scenes
A realtor's form fills in at 10:40pm
Someone asks for a home valuation from the form on a realtor's website. Groundbase's lead form has already found or created the contact, tagged them lead:home-valuation and kept every answer as a note.
The workflow: when a form is submitted, send a text, "Hi {{first_name}}, it's {{my_name}}. Got your request, I'll call you tomorrow morning", and add them to an ongoing drip of three useful emails about selling.
With quiet hours set to 9 to 7, the text doesn't go at 10:40pm. It waits and goes at 9am, the moment it's polite to. The tag and the drip happen straight away.
A contractor's quote is accepted, deposit and all
A contractor sends a quote for a deck. The customer opens the link, presses Accept and pays a 30% deposit by card, into the contractor's own Stripe account.
The workflow: when a quote is accepted, text the contractor's own phone, "Quote {{trigger.payload.number}} accepted by {{trigger.payload.accepted_by_name}}", and create a task, "Book the start date with {{first_name}}", due today.
The invoice isn't something the workflow makes. Create invoice on the accepted quote makes it in one click, with the same lines and the deposit already on it as a payment. The workflow's job is making sure the contractor knows while he's still up a ladder, and that the start date doesn't depend on him remembering.
A voicemail lands while you're with a client
A therapist is in session when a number she knows calls and leaves a voicemail.
The workflow: when a voicemail is received, create a task, "Call {{full_name}} back", due today. If the number matched a contact, the task links to them. Between sessions she reads the voicemail's transcript under Phone → Voicemail and taps the task to call.
A branch makes it smarter. If the caller is tagged Client, make the task. A contact who isn't a client yet gets tagged Lead as well, so new enquiries and existing clients don't sit in the same list.
Paid in full: thank you now, a review in two weeks
A photographer's invoice for a wedding is paid off.
The workflow: when an invoice is paid, send a thank-you email from the photographer's own mailbox, wait 14 days, then text asking for a review.
invoice.paid fires only when the balance reaches zero. The deposit paid in March was a recorded payment, not this, so the thank-you can't go out a season early. And the wait has Opted out ticked: if the couple unsubscribed in the meantime, the run stops and no review request goes.
The wait is what makes it a follow-up
A follow-up that ignores a reply is a nag. Every Wait step can stop the run when it ends if, since the run started, the person replied by text or email, booked a meeting, or opted out. The run history says which.
That check used to belong to a separate Sequences feature. I removed it and put the check on the Wait step, so there's one way to build a follow-up instead of two.
In the one plan, not a higher tier
Plenty of CRMs put automation a tier above the entry plan. HubSpot's Sales Hub Starter allows "up to 50 workflows with restricted triggers and actions", with fully customizable ones on Professional (HubSpot's catalog). Pipedrive's help centre says "Automations is available on Growth and higher plans" (Pipedrive). Both checked October 2026.
In Groundbase every trigger and step is in the $19 a month or $199 a year, and runs aren't counted. What you pay for separately is the sending, through your own accounts: texts on your own Twilio account (about a US$20 first top-up, a number for a couple of dollars a month, roughly 1 to 2 US cents a text), and campaign email on your own Resend account. Groundbase takes no cut of either. Emails from your own mailbox cost nothing extra.
What it won't do
- It doesn't create invoices, quotes or documents. It texts, emails, tags, notes, updates fields, makes tasks, calls webhooks and adds people to campaigns.
- It isn't Zapier. It automates your CRM and talks to other tools through webhooks in and out, including Zapier and Make. It isn't a directory of connectors.
- It's for one person. No routing leads between people, because there's nobody else. One pipeline.
- 50 workflows per account, each up to 50 steps.
Building one
Open Automations → Workflows, pick a trigger, add steps, save. Or, if you've connected Claude, ChatGPT or Cursor through Groundbase's MCP server, describe it in a sentence and the assistant builds it, then reads the run history to tell you why a run skipped.
Groundbase is $19 a month or $199 a year, with a 14-day free trial; the card goes in up front and isn't charged until day 15. If you're not sure it fits, who Groundbase is and isn't for is the honest version.
Questions about this one? Email me directly: blog-workflows@groundbasecrm.com — I read every one.
Built by a solo dev. Try it.
Start your 14-day trial →More from the Pipeline
How to leave Groundbase
Everything you put into Groundbase comes out with one button, at any time, including after you stop paying.…
Calling and texting from inside your CRM
Groundbase calls and texts from the contact record on web, Windows and Android, with recording, voicemail y…
Set up a booking link that keeps your Google Calendar free
A step-by-step setup for a Groundbase booking link that only offers the times you actually want to give awa…
Can Groundbase replace QuickBooks for invoicing? Yes, for invoicing. Not for the books.
If you pay QuickBooks Online mainly to send invoices and get paid, Groundbase does that job inside the CRM …