BrightLabCrew
Internal · 8 May 2026
Tier 1 — Launch

Launch tier workflows

Twelve workflows, fifteen stages, zero external workers. Customer-facing comms run automatically. Quote drafting, invoice creation, and most stage transitions stay manual. The CRM nudges your team at the right moment so nothing slips.

Tier 1
Launch
Comms automated. Quoting, invoicing, and stage gates manual.
12
Workflows
15
Stages
0
External Workers

Icon key

The flowcharts below mirror what you see in the GHL workflow builder. Same icon styling, same connector dots, same branch labels.

Trigger
Send email to contact
Internal notification
Wait timer
Condition / branch
Update opportunity
Update contact field
Find contact / opp
Assign user
Remove assigned user
Add task
Enable / disable DND
Round-robin distribution
Number formatter (random)
Manual step (your team)
END Workflow ends

Every automation in Launch, the way GHL draws it

Each block below is the workflow's actual canvas structure. Trigger at the top, action nodes flowing down, branches splitting horizontally with their condition labels, ending in END pills.

WF01

New leads

Customer Booked Appointment on calendar Book your estimate visit
Workflow Canvas
Customer Booked Appointment
Calendar is Book your estimate visit
Send confirmation email to customer
Find Opportunity
Check if lead has an existing opportunity
Branch on Find result
Condition
on Scheduling Preferences
Update opportunity
Project Scheduling = ASAP
Update opportunity
Project Scheduling = Flexible
Update opportunity
No scheduling preference set
Condition
on Scheduling Preferences
Create Opportunity
Project Scheduling = ASAP
Create Opportunity
Project Scheduling = Flexible
Create Opportunity
No scheduling preference set
All 6 paths converge below. Once the opp is created or updated with the right scheduling preference, every path runs the same chain: assign assessor, send reminders, advance to Assessor Visits.
Remove Assigned User
Assign to Project Assessor
Project Assessor Internal Notification
Wait one day before appointment
Quote appointment reminder for lead
Wait three hours before appointment
Quote reminder, internal
Wait for the appointment
Update opportunity
Stage Assessor Visits
END
Manual handoff: at Assessor Visits the assessor must gather quote info on-site, then move the opp to Send Quote manually to trigger WF02.
Customer experience
Books estimate visit on the website. Gets a confirmation email immediately. Gets a reminder 1 day before, then turns up.
Internal experience
Assessor gets notified at booking, again 3 hours before. Opportunity card auto-created and assigned. Stage advances to Assessor Visits when the appointment hits.
WF02

Prepare and send quote

Opportunity Changed to stage Send Quote
Workflow Canvas
Opportunity Changed
Pipeline stage is Send Quote
Random Number (Number Formatter)
Range 100-999, output exposed as {{number_formatter.1.result}}
Update opportunity
Opp Name = {{contact.first_name}} {{contact.last_name}} - {{contact.job_address}} ({{number_formatter.1.result}})
Condition
on Quote Given In Person
Update contact field
Mirror opportunity.job_datescheduling_parameters onto contact
Update opportunity
Stage Job Scheduling (date already known)
END
Update contact field
Mirror scheduling params onto contact
Remove Assigned User
Distribution split
Currently 50/50 placeholder. Configurable up to 8 paths per location.
Assign to bookkeeper
Internal Notification
"Prepare and send quote"
END
Assign to bookkeeper
Internal Notification
"Prepare and send quote"
END
END
Manual after notification: bookkeeper drafts quote in Xero from the opp data, sends it to the customer, then drags the opp to Quote Sent manually. Xero's API doesn't expose quote send/accept events, so this stays manual even at higher tiers.
WF03

Quote yes or no

Two triggers — Approved + Deposit Paid OR Quote Rejected
Workflow Canvas
Opportunity Changed
Stage Approved + Deposit Paid
Opportunity Changed
Stage Quote Rejected
Condition
on Quote Given In Person
END
YES OR NO
on Pipeline Stage
Quote acceptance email
END
Email - Reject Follow Up
Add Task
"Reevaluate rejection"
Update opportunity
Status Lost, Reason Quote rejected
END
END
END
WF04

Job scheduling

Opportunity Changed to stage Job Scheduling + Deposit Approved
Workflow Canvas
Opportunity Changed
Stage Job Scheduling + Deposit Approved
Condition
on Quote Given In Person
Notify scheduler
"New job to schedule" — date already known from in-person quote
Update opportunity
Stage Job Scheduled
END
Job scheduling Internal Notification
"Job ready to schedule"
END
END
WF05

Job scheduled

Opportunity Changed to stage Job Scheduled
Workflow Canvas
Opportunity Changed
Stage Job Scheduled
Update contact field
Mirror opportunity.job_datescheduling_parameters onto contact
Wait 1 minute
Race-condition guard so the contact field is set before the email reads it
Confirmation email to lead
"Your job is confirmed" · uses scheduling params
Assign to Head Painter
Add follower to contact
BSP-specific. Strip from generic snapshot.
Job booked internal notification
END
No reminder, no day-of advance: Launch can't read the job date from the custom field to schedule a reminder, and there's no native way to auto-advance to Job Under Way on the job day. Customer gets the original confirmation only. Head painter must manually advance the stage on the day.
WF07

Deposit invoice trigger

Opportunity Changed to stage Approved + Deposit Paid
Workflow Canvas
The deposit invoice is created and sent manually in Xero. The CRM only fires a notification to the bookkeeper.
Opportunity Changed
Stage Approved + Deposit Paid
Internal Notification to Bookkeeper
"Deposit invoice required"
Manual: bookkeeper drafts + sends in Xero
Out of GHL. Workflow ends here on the GHL side.
END
WF08

Quality check

Opportunity Changed to stage Quality Check
Workflow Canvas
Head painter / job lead must move the stage manually so QC fires only after the job is finished.
Opportunity Changed
Stage Quality Check
Remove Assigned User
Assign to Head of QM team
Quality assurance Internal Notification
Email to customer
"Your job has moved to quality assurance"
Add Task
"Move lead to Job Finished after QC"
END
New stage to be built: a Quality Check Fail stage following the same error-handling pattern as Quote/Invoice Draft Error. If QC fails, the QC user writes the failure reason into the opp and moves to Quality Check Fail, which reassigns back to the head painter to fix. Once fixed, head painter moves it back to Quality Check.
WF09

Final invoice trigger

Opportunity Changed to stage Finished + Invoice To Be Sent
Workflow Canvas
Opportunity Changed
Stage Finished + Invoice To Be Sent (Launch rename of Growth's Finished + Invoice Drafted)
Internal Notification to bookkeeper
"Final invoice required"
Manual: bookkeeper drafts + sends in Xero
Reconciles deposit (40% paid), sends final 60%
END
WF10

Handover review link

Opportunity Changed to stage Finished + Invoice To Be Sent
Workflow Canvas
Opportunity Changed
Review link email
"Your project is now completed" · Google review CTA
END
WF12

Auto-win on follow up

Opportunity Changed to Invoice Paid + Follow Up or Successfully Resolved (Status ≠ won)
Workflow Canvas
Opportunity Changed
Stage in [Invoice Paid + Follow Up, Successfully Resolved]; Status is not won
Wait 1 minute
Debounce against rapid stage changes
Condition
Confirm Pipeline Stage matches
Update Opportunity
Status Won
END
END
WF13

Long-tail follow up

Two triggers — Quote Rejected OR Invoice Paid + Follow Up
Workflow Canvas
Opportunity to Quote Rejected
Opportunity to follow up
Stage Invoice Paid + Follow Up
Condition
on Pipeline + trigger source
Wait 1 month
Active in another workflow?
Mark Successfully Resolved
END
1mo cold email
"We're still open if you are"
Wait 2 months
3mo cold email
"Just Checking In"
Wait 3 months
6mo cold email
"Remember us?"
Mark Successfully Resolved
END
Review Link email
"Thank you for choosing us" · Google review CTA
Wait 1 month
Active in another workflow?
Mark Successfully Resolved
END
1mo email
"How is everything looking?"
Wait 2 months
3mo email
"We'd love to see you again"
Wait 3 months
6mo email
"Any fresh painting ideas?"
Mark Successfully Resolved
END
END
Launch ends here: opportunity stays at Successfully Resolved indefinitely. Growth picks it up via WF15 (85d log + 6d purge) which Launch doesn't have.
WF14

Email unsubscribed

Email Events — Event is Unsubscribed
Workflow Canvas
Email Events
Event is Unsubscribed
Enable DND
Email channel, outbound
END

The 15 stages in Launch

Launch drops the two error-handling stages that only existed for the external worker bounce-backs (Quote Draft Error, Invoice Draft Error). Adds Quality Check Fail (to be built). Renames Stage 10 to reflect manual drafting.

Launch tier · 15 stages

01
New Lead
02
Assessor Visits
03
Send Quote
04
Quote Sent
05
Approved + Deposit Paid
06
Job Scheduling + Deposit Approved
07
Job Scheduled
08
Job Under Way
09
Quality Check
NEW
Quality Check Fail
10
Finished + Invoice To Be Sent
11
Final Invoice Sent
12
Invoice Paid + Follow Up
13
Quote Rejected
14
Successfully Resolved

Stage 10 is renamed from Growth's Finished + Invoice Drafted to Finished + Invoice To Be Sent since Launch has no automated drafting.

What's automated vs what your team still does

If you're pricing Launch, this is the slide that matters. The right column is the upgrade path to Growth.

Automated in Launch

  • Booking confirmation email to customer
  • Internal assessor notifications (booking, 3hr reminder)
  • Quote appointment reminder to customer
  • Quote acceptance and rejection emails
  • Job confirmation email to customer
  • Quality check stage notification email
  • Project completion email with review link
  • Auto-win status update on payment
  • Long-tail follow-up at 1 / 3 / 6 months
  • Email unsubscribe / DND handling
  • Internal notifications at every stage transition
  • Opportunity stage tracking and reporting

Still manual in Launch

  • Drafting the quote in Xero
  • Sending the quote to the customer
  • Moving opp to Quote Sent / Quote Rejected / Approved
  • Drafting the deposit invoice in Xero
  • Drafting the final invoice in Xero
  • Setting the job date on the contact record
  • Advancing the opp through scheduled / under way / QC
  • Reading payments off Xero and updating the opp

Launch is mostly manual at the gates

Workflows still fire on stage transitions. But in Launch, almost every stage transition has to be made manually by your team. Growth auto-advances 4 of these gates via Xero events and n8n.

Stage transition Launch Growth
New Lead → Assessor VisitsAuto (WF01 wait-for-appointment)Auto (same)
Assessor Visits → Send QuoteManual — assessor moves cardManual — assessor moves card
Send Quote → Quote SentManual — bookkeeper after sending in XeroManual — Xero API can't notify on quote send
Quote Sent → Approved + Deposit PaidManual — bookkeeper after Xero acceptance emailManual — same
Approved + Deposit Paid → Job SchedulingManual — bookkeeper after deposit clearsAuto — Xero payment webhook fires
Job Scheduling → Job ScheduledManual — scheduler after locking dateManual — same
Job Scheduled → Job Under WayManual — head painter on the dayAuto — n8n day-of trigger
Job Under Way → Quality CheckManual — head painter at job endManual — same
Quality Check → Quality Check Fail (new)Manual — QC user if check failsManual — same
Quality Check → Finished + Invoice To Be SentManual — QC user on passManual (Growth label: Finished + Invoice Drafted)
Finished → Final Invoice SentManual — bookkeeper after sendingAuto — n8n marks after send
Final Invoice Sent → Invoice Paid + Follow UpManual — bookkeeper after payment landsAuto — Xero webhook
Invoice Paid → Successfully ResolvedAuto (WF13 cadence end)Auto (same)
Pricing implication: the customer is still saving 90% of the time spent on customer comms (emails, reminders, follow-ups). But every "money" gate and most "scheduling" gates require an active human. Sell it as a system that nudges the right person at the right time, not a system that runs itself.