GoHighLevel Quote Follow-Up Workflow: Setup Guide (2026) — HL Growth Partner, Dr Priya Jaganathan

GoHighLevel Quote Follow-Up Workflow: Setup Guide (2026)

September 05, 2026

GoHighLevel Quote Follow-Up Workflow: Setup Guide (2026)

By Dr Priya Jaganathan, GoHighLevel Certified Admin · HL Growth Partner, Australia · Updated 5 September 2026 · 9 min read

A GoHighLevel quote follow-up workflow is a single Workflow that starts the moment a quote, estimate or proposal goes out, waits a set number of days, checks whether the customer has opened or replied, and then sends a short SMS or email (or creates a call task) at day 2, 5, 10 and 21, exiting automatically the moment the quote is accepted or the customer responds. Built properly, it removes the most common revenue leak I see across the tradie, cleaning, clinic and agency sub-accounts we manage: quotes that were never chased at all.

This guide covers the pipeline stage design, triggers, wait steps and if/else branches, message copy, goal events, stale-quote reactivation and the Australian SMS compliance settings you need before a single message leaves the account. It is close to what we deploy through snapshots.

Why quotes die without a follow-up system

A typical AU trades business closes around 25 to 35 percent of quotes overall, but quotes that receive at least three touches in the first fortnight close at 45 to 55 percent, while quotes that receive none sit closer to 15 percent. The gap is not price; it is silence. At roughly 5 to 8 cents per SMS segment in AUD through LeadConnector or Twilio (approximate), a four-message sequence costs less than a coffee per quote.

Pipeline stage design

The workflow only works if the pipeline reflects real sales states. Build a dedicated Quotes pipeline with these stages in order:

  • Quote Sent — the quote, estimate or proposal has gone out; this stage starts the workflow.
  • Quote Viewed — moved automatically when Estimate Viewed fires or a trigger link is clicked.
  • Follow-Up 1, Follow-Up 2, Follow-Up 3 — moved by the workflow at each touch so the board shows where every quote is.
  • Won — set when the estimate is accepted or an invoice is paid.
  • Lost — set after the final touch with no reply, or manually when the customer declines.

If you are new to how stages, opportunity values and pipeline reporting fit together, the guide to GoHighLevel pipelines and opportunities covers the foundations. The one non-negotiable is that every quote becomes an opportunity with a monetary value; without that, quote-to-win reporting is meaningless.

Custom fields and tags

Create three contact custom fields before you build the workflow: quote_value (Monetary), quote_sent_date (Date) and quote_reference (Text). The workflow writes to these with an Update Contact Field action at the start and reads from them in message copy and the reactivation branch. Tags carry the state: quote-sent, quote-viewed, quote-replied, quote-won, quote-lost. Keep tag names lower-case and hyphenated so they copy cleanly into other sub-accounts via snapshots. The GoHighLevel custom fields walkthrough explains field types and folder organisation.

Triggers that start the workflow

Enable two of these four so the workflow fires regardless of how the team sends the quote.

Opportunity Stage Changed

Filter to pipeline = Quotes and stage = Quote Sent. This catches quotes sent outside HighLevel (a ServiceM8 or Xero PDF) where the admin drags the card into the stage manually.

Document or Estimate Sent

If you use native Documents & Contracts or Estimates, this trigger fires the moment the send button is pressed. Filter on document type so proposals and estimates start the sequence but invoices do not. The current event names are documented on help.gohighlevel.com and have shifted over the past year, so check before you build.

Estimate Viewed and Estimate Accepted

These do not start the main sequence; they feed the goal events and if/else branches below. Estimate Viewed moves the opportunity to Quote Viewed and adds quote-viewed. Estimate Accepted moves it to Won, adds quote-won and ends the sequence.

Trigger Link clicked

For quotes sent as an external PDF or hosted proposal page, wrap the link in a trigger link so the click becomes a "viewed" signal without native estimates. Setup and tracking detail is in the GoHighLevel trigger links guide.

GoHighLevel quote follow-up workflow: the cadence

This is the default cadence for AU service businesses with quotes between roughly $500 and $15,000. Higher-value proposals (agency retainers, treatment plans above $5,000) justify a manual call task at day 5 rather than a third SMS.

DayChannelGoalMessage intent
0Email + SMSConfirm receiptQuote is on its way, here is the link, reply with questions
2SMSPrompt the first readCheck they received it, invite questions, no pressure
5Email (+ call task if viewed)Address objectionsClarify inclusions, offer a call, restate the next step
10SMS or Voice AI callCreate a decision pointAsk if they want to lock in a start date, mention Text-2-Pay deposit
21Email + SMSClose the loopFinal check-in, note the quote validity date, easy opt-out
45SMSReactivationStale-quote check: has anything changed, still happy to help

Wait steps

Each touch is preceded by a Wait step set to a fixed duration (2 days, then 3, 5 and 11 days, landing on day 2, 5, 10 and 21 cumulatively). Tick the option to only continue between 8 am and 6 pm, Monday to Saturday, in the contact's time zone, so a wait that expires at 11 pm on Saturday holds until Monday morning. If contacts have no time zone set, the sub-account default applies.

If/else on "viewed" and "replied"

After each Wait step, add an If/Else condition. Branch A checks for the quote-viewed tag; Branch B checks for quote-replied, which a separate small workflow adds on Customer Replied along with a task for the quote owner. Viewed but silent contacts get the objection-handling email plus a call task; unviewed contacts get the shorter SMS nudge. Replied contacts should never reach the next message, which is where goal events do the heavy lifting.

Goal events to exit cleanly

Add Goal Event steps for Estimate Accepted, Customer Replied and Opportunity Stage Changed to Won or Lost, with the goal action set to end the workflow, so the sequence stops the moment a customer signs, pays or texts back. Nothing damages trust faster than a "just checking you received our quote" SMS an hour after a deposit was paid.

Message copy that gets replies

Short, specific and signed by a human name outperforms anything that reads like marketing. All copy uses merge fields from the custom fields above.

Day 2 SMS

"Hi {{contact.first_name}}, it's Dave from Coastal Plumbing. Just checking the quote for the hot water replacement ({{contact.quote_reference}}) came through OK. Happy to answer any questions. Reply STOP to opt out."

Day 5 email (viewed branch)

Subject: "Quick question on your quote, {{contact.first_name}}". Three sentences: ask whether the inclusions or timing raised any questions, offer a 10-minute call with a booking link, and sign with the quote owner's name and mobile.

Day 10 SMS with deposit link

"Hi {{contact.first_name}}, we have a slot opening next week for the {{contact.quote_reference}} job. If you'd like to lock it in, a $200 deposit secures the date: {{payment_link}}. No rush if you're still deciding. Dave. Reply STOP to opt out."

That deposit link is generated with Text-2-Pay, which sends a hosted payment page by SMS and marks the opportunity Won when paid; fees and setup are covered in the GoHighLevel Text-2-Pay guide. If you prefer a phone touch at day 10, a Voice AI agent can place the call with a script limited to "are you still considering the quote, and would you like a callback", handing off to a human task on a yes. Conversation AI can handle inbound SMS replies if the owner is on the tools all day.

Day 21 close-out

"Hi {{contact.first_name}}, last note from me on the {{contact.quote_reference}} quote. Pricing holds until {{contact.quote_valid_until}}. If you've gone another way, no worries at all, just let me know so I can close it off. Dave. Reply STOP to opt out."

No reply after day 21: move the opportunity to Lost, add quote-lost, and let reactivation pick it up.

Stale-quote reactivation after 30 to 60 days

Lost does not mean gone. Roughly one in ten quotes marked Lost after 21 days converts within the next 90 days, often because a competitor no-showed or budget freed up. Build a separate workflow triggered by the quote-lost tag with a 30- to 45-day wait, then one SMS and one email asking whether the job is still on the cards. Cap this at two touches; beyond that you are into GoHighLevel database reactivation campaign territory, which works at list scale rather than one quote at a time.

AU SMS compliance before you switch it on

Every SMS in this workflow is a commercial electronic message under the Spam Act 2003, enforced by the ACMA. Three things must be true. Consent: a customer who requested a quote has given inferred consent to messages about that quote, not to unrelated promotions. Identification: each message must name the business. Unsubscribe: "Reply STOP to opt out" in every SMS, with DND handling switched on so a STOP reply blocks further sends. The Wait step business-hours window keeps you clear of late-evening sends. Number registration differs by number type, and the GoHighLevel SMS A2P compliance Australia guide covers the LeadConnector and Twilio paths for Australian numbers. Email touches go out through Mailgun; verify SPF and DKIM or the day 5 email lands in spam.

Reporting on quote-to-win rate

In Reporting, open the Pipeline view, filter to the Quotes pipeline and a date range, and read quotes sent, quotes won and win rate. Segment by the quote-viewed tag to see how many quotes were never opened, which is often a deliverability problem rather than a sales problem. Track median days from Quote Sent to Won as well; when the workflow is working, that drops from three or four weeks to under ten days because the deposit link pulls decisions forward. Review monthly and adjust the cadence before the copy.

Common mistakes to avoid

  • Starting the workflow on Contact Created instead of Opportunity Stage Changed or Estimate Sent, so every enquiry gets chased for a quote that was never sent.
  • Leaving out goal events, which causes follow-ups to keep firing after the customer has accepted, paid or replied.
  • Setting Wait steps without a business-hours window, resulting in SMS messages landing at 10 pm and triggering ACMA complaints.
  • Omitting the opt-out wording and business identification from SMS copy, which breaches the Spam Act regardless of consent.
  • Forgetting to write quote_value and quote_sent_date at the start, so the reactivation branch and the reporting have nothing to work from.
  • Testing on real contacts instead of a test contact with the workflow in draft mode.

If you want a quote follow-up workflow built and tested in your own GoHighLevel account, book a strategy call with the HL Growth Partner team.

Book Your Strategy Call →

Frequently asked questions

How many follow-ups should a GoHighLevel quote follow-up workflow send?

Four touches over 21 days is the default we deploy: day 2, 5, 10 and 21. Add a single reactivation touch at day 45. More than five messages on a single quote produces diminishing replies and more STOP responses.

Can I build a HighLevel estimate follow-up automation without using native Estimates?

Yes. Use the Opportunity Stage Changed trigger as the start, wrap your external quote PDF or proposal link in a trigger link to capture the viewed signal, and mark Won manually or via a paid-invoice trigger from your accounting integration.

Does the workflow stop when the customer replies?

Only if you add a Customer Replied goal event or a separate workflow that adds a replied tag and removes the contact from the sequence. Without one, the next scheduled message still sends, so this is the first thing to test.

Is it legal to send quote follow-up SMS in Australia without explicit opt-in?

A customer who requested the quote has given inferred consent for messages about that quote under the Spam Act. You still need business identification and a working opt-out in every message, and you cannot use the same consent for unrelated promotions.

What is a realistic improvement in quote-to-win rate?

Businesses that were not following up at all typically see win rates move from the mid-teens to the 30 to 40 percent range within two to three months. Businesses already following up manually see a smaller lift but a much shorter time to decision.

Dr PriyaJaganathan

Dr PriyaJaganathan

Dr Priya Jaganathan is a Go High Level Certified Admin, trusted CRM consultant based in Australia, and a keynote speaker at SaaSpreneur Sydney and Level Up 2025 in Dallas.

Back to Blog