Lead Generation & Automation
A one-page map of exactly how a lead moves from ad click to booked job.
Client: Jack Weiner / Outdoor Vibes | Market: Scottsdale, AZ Date: May 2026
This document maps every lead touchpoint — from first click to five-star review — across both brands. Five Mermaid diagrams are provided, each zooming into a different layer of the system. A plain-text summary table follows the diagrams.
Brand Note: AZ Palm Tree Lights (APTL) and Trimlight Phoenix (TLP) share the same automation infrastructure but are tracked separately in every sheet, sequence, and Jobber pipeline. They are never conflated.
High-level view of all leads flowing through the system from source to retention.
flowchart TD
classDef source fill:#1a73e8,color:#fff,stroke:#1558b0
classDef automation fill:#6c3fc5,color:#fff,stroke:#4a2a8a
classDef crm fill:#0f9d58,color:#fff,stroke:#0a7340
classDef comms fill:#f4511e,color:#fff,stroke:#c23b12
classDef reporting fill:#607d8b,color:#fff,stroke:#37474f
classDef decision fill:#fbbc04,color:#1a1a1a,stroke:#e0a800
subgraph SOURCES["LEAD SOURCES"]
S1[Meta Lead Form Ad]:::source
S2[Google Ads Call]:::source
S3[Google Ads Landing Page]:::source
S4[GBP Call]:::source
S5[Website Form — APTL]:::source
S6[Website Form — TLP]:::source
S7[CX Survey — Fillout]:::source
S8[Yard Sign QR]:::source
S9[HOA / Partner Referral]:::source
S10[Nextdoor]:::source
end
subgraph INTAKE["CENTRAL ROUTING — n8n + Google Sheets"]
N1[n8n Intake Webhook]:::automation
N2{Duplicate Check}:::decision
N3[Tag: Source + Brand + Tier + UTMs]:::automation
N4[Master Lead Tracker — Google Sheets]:::automation
end
subgraph OUTREACH["OUTREACH — Quo + Resend"]
Q1[Create / Update Quo Contact]:::comms
Q2{Which Sequence?}:::decision
Q3[Sequence 1: New Lead SMS]:::comms
Q4[Sequence 2: Survey Hot Lead SMS]:::comms
Q5{Responded?}:::decision
Q6[Email Nurture — Resend\n5-touch drip]:::comms
Q7[Notify your ops/marketing manager — email]:::comms
end
subgraph CONVERSION["CONVERSION — Jobber"]
J1[Jack Calls / Quotes]:::crm
J2[Jobber Quote Sent]:::crm
J3{Quote Approved?}:::decision
J4[Jobber Job Created]:::crm
J5[Job Scheduled]:::crm
J6[Job Completed]:::crm
end
subgraph RETENTION["POST-SALE + RETENTION"]
R1[Sequence 4: Review Request SMS]:::comms
R2[Google Review Posted]:::crm
R3[Referral Ask]:::comms
R4[Sequence 3: Reactivation SMS\n30+ day cold leads]:::comms
end
subgraph REPORTING["ATTRIBUTION + REPORTING"]
A1[CallRail — call tracking]:::reporting
A2[GA4 — web events + UTMs]:::reporting
A3[Attribution Tracker — Sheets]:::reporting
A4[Looker Studio Dashboard]:::reporting
end
S1 & S2 & S3 & S4 & S5 & S6 & S7 & S8 --> N1
S9 & S10 --> N4
N1 --> N2
N2 -- New Lead --> N3
N2 -- Duplicate --> N4
N3 --> N4
N4 --> Q1
Q1 --> Q2
Q2 -- Standard new lead --> Q3
Q2 -- Survey hot lead --> Q4
Q3 & Q4 --> Q5
Q3 --> Q7
Q5 -- No response --> Q6
Q5 -- Responds --> J1
Q6 --> J1
J1 --> J2
J2 --> J3
J3 -- Approved --> J4
J3 -- No decision --> R4
J4 --> J5 --> J6
J6 --> R1
R1 --> R2 --> R3
S2 & S4 --> A1
S3 & S5 & S6 --> A2
A1 & A2 --> A3 --> A4
Zoomed in on every source, its entry point, and how it connects to n8n / Google Sheets.
flowchart LR
classDef paid fill:#1a73e8,color:#fff,stroke:#1558b0
classDef organic fill:#0f9d58,color:#fff,stroke:#0a7340
classDef referral fill:#f4511e,color:#fff,stroke:#c23b12
classDef automation fill:#6c3fc5,color:#fff,stroke:#4a2a8a
classDef sheet fill:#34a853,color:#fff,stroke:#1e7e34
classDef callrail fill:#ff6f00,color:#fff,stroke:#e65100
subgraph PAID["PAID SOURCES"]
P1["Meta Lead Form Ad\n(APTL or TLP campaign)"]:::paid
P2["Google Ads — Click-to-Call\n(brand-specific number)"]:::paid
P3["Google Ads — Landing Page Form\n(azpalmtreelights.com/google\nor trimlightphoenix.com/google)"]:::paid
end
subgraph ORGANIC["ORGANIC / LOCAL"]
O1["GBP — Calls\n(brand-specific GBP listing)"]:::organic
O2["Website Form — APTL\nazpalmtreelights.com/contact"]:::organic
O3["Website Form — TLP\ntrimlightphoenix.com/contact"]:::organic
O4["Yard Sign QR Code\n→ azpalmtreelights.com/quote\nor trimlightphoenix.com/quote"]:::organic
O5["Nextdoor\n(manual entry by your ops/marketing manager)"]:::organic
end
subgraph REFERRAL["REFERRAL / WARM"]
R1["CX Survey — Fillout\n(Trimlight post-install)"]:::referral
R2["HOA / Partner Referral\n(manual entry by your ops/marketing manager)"]:::referral
end
subgraph CALLRAIL["CALLRAIL — CALL TRACKING"]
CR1["CallRail Pool\n(Meta Ads number)"]:::callrail
CR2["CallRail Pool\n(Google Ads number)"]:::callrail
CR3["CallRail Pool\n(GBP number)"]:::callrail
CR4["CallRail Pool\n(Organic / direct number)"]:::callrail
end
subgraph N8N["n8n WEBHOOKS"]
W1["Webhook: meta-lead\n/webhook/meta-aptl\n/webhook/meta-tlp"]:::automation
W2["Webhook: callrail-inbound\n/webhook/callrail"]:::automation
W3["Webhook: lp-form\n/webhook/google-form"]:::automation
W4["Webhook: website-contact\n/webhook/aptl-contact\n/webhook/tlp-contact"]:::automation
W5["Webhook: cx-survey\n/webhook/fillout-cx"]:::automation
W6["Webhook: yard-sign-form\n/webhook/yard-sign"]:::automation
MANUAL["Manual Entry\ndirectly into Sheets"]:::automation
end
subgraph SHEETS["GOOGLE SHEETS — Master Lead Tracker"]
SH1["Tab: APTL Leads"]:::sheet
SH2["Tab: TLP Leads"]:::sheet
SH3["Tab: All Sources Combined"]:::sheet
end
P1 --> W1
P2 --> CR2 --> W2
P3 --> W3
O1 --> CR3 --> W2
O2 --> W4
O3 --> W4
O4 --> W6
O5 --> MANUAL
R1 --> W5
R2 --> MANUAL
CR1 -.->|Meta calls if enabled| W2
W1 & W2 & W3 & W4 & W5 & W6 --> SH3
MANUAL --> SH3
W1 -- brand=APTL --> SH1
W1 -- brand=TLP --> SH2
W4 -- brand=APTL --> SH1
W4 -- brand=TLP --> SH2
SMS sequences in Quo plus email drip via Resend, with timing and all exit conditions.
flowchart TD
classDef sms fill:#1a73e8,color:#fff,stroke:#1558b0
classDef email fill:#f4511e,color:#fff,stroke:#c23b12
classDef decision fill:#fbbc04,color:#1a1a1a,stroke:#e0a800
classDef exit fill:#0f9d58,color:#fff,stroke:#0a7340
classDef wait fill:#607d8b,color:#fff,stroke:#37474f
START([New Lead Enters System])
subgraph SEQ1["SEQUENCE 1 — New Lead SMS (Quo)"]
S1A["SMS 1: Immediate\n'Hi [Name], this is Jack with\n[Brand] — saw you were interested\nin [service]. Can I grab 5 min\nthis week to talk options?'"]:::sms
S1B["Wait 4 hours"]:::wait
S1C{Replied?}:::decision
S1D["SMS 2: Same day or next morning\n'Just wanted to make sure\nyou got my message! Any\nquestions I can answer?'"]:::sms
S1E["Wait 24 hours"]:::wait
S1F{Replied?}:::decision
S1G["SMS 3: Day 3\n'Last follow-up — happy to\nsend over some examples of\nour work in your area if helpful.'"]:::sms
S1H["Wait 48 hours"]:::wait
S1I{Replied?}:::decision
end
subgraph SEQ2["SEQUENCE 2 — Survey Hot Lead SMS (Quo)"]
S2A["SMS 1: Immediate\n'Hi [Name], Jack here — you\nmentioned interest in palm tree\nlighting on the survey. We just\nlaunched AZ Palm Tree Lights\nand I'd love to show you\nwhat we do. Have 10 min?'"]:::sms
S2B["Wait 2 hours"]:::wait
S2C{Replied?}:::decision
S2D["SMS 2: Same day\n'Sending over a few install\nphotos from your neighborhood.\n[photo link] — any of these\ncatch your eye?'"]:::sms
S2E["Wait 24 hours"]:::wait
S2F{Replied?}:::decision
end
subgraph SEQ3["SEQUENCE 3 — Reactivation SMS (Quo — 30+ day cold)"]
S3A["SMS 1: Month +1\n'Hey [Name], Jack from [Brand].\nJust checking in — we have a\nfew open install slots this month\nif you're still thinking about it.'"]:::sms
S3B["Wait 3 days"]:::wait
S3C{Replied?}:::decision
S3D["SMS 2: Month +1 Day 4\n'No pressure at all — just\nwanted to share our newest\ninstall: [photo link]. We're\nbooking out fast this season.'"]:::sms
end
subgraph SEQ4["SEQUENCE 4 — Post-Install (Quo)"]
S4A["SMS 1: Day after completion\n'Hi [Name]! Hope you're loving\nyour new [lights]. Would mean\nthe world if you left us a quick\nreview: [Google link]'"]:::sms
S4B["Wait 48 hours"]:::wait
S4C{Reviewed?}:::decision
S4D["SMS 2: Day +3\n'Thank you so much! Also — do\nyou know anyone who might love\nthis? We'd love to earn the referral.'"]:::sms
end
subgraph EMAIL["EMAIL NURTURE — Resend (5-touch drip)"]
E1["Email 1 — Immediate\nSubject: 'Welcome to [Brand] —\nhere's what to expect'\nContent: intro, what we do,\nhow the process works"]:::email
E2["Email 2 — Day +2\nSubject: 'Your top questions answered'\nContent: FAQ, pricing range,\ntimeline, before/after photos"]:::email
E3["Email 3 — Day +5\nSubject: '[Neighbor's name] in\nScottsdale just got installed'\nContent: testimonials, Google\nreviews, case studies"]:::email
E4["Email 4 — Day +8\nSubject: 'Ready to get a quote?'\nContent: soft CTA, 'book a\n15-min call', link to Jobber booking"]:::email
E5["Email 5 — Day +14\nSubject: 'We're booking out for\n[Season] — last few slots'\nContent: urgency, seasonal\nscarcity, strong CTA"]:::email
end
BOOKED([Lead Books Call / Converted]):::exit
UNSUB([Unsubscribed]):::exit
COLD([Marked Cold — no further outreach]):::exit
%% Entry routing
START --> |Standard new lead| SEQ1
START --> |Survey hot lead| SEQ2
%% Sequence 1 flow
S1A --> S1B --> S1C
S1C -- Yes --> BOOKED
S1C -- No --> S1D
S1D --> S1E --> S1F
S1F -- Yes --> BOOKED
S1F -- No --> S1G
S1G --> S1H --> S1I
S1I -- Yes --> BOOKED
S1I -- No, sequence complete --> EMAIL
%% Sequence 2 flow
S2A --> S2B --> S2C
S2C -- Yes --> BOOKED
S2C -- No --> S2D
S2D --> S2E --> S2F
S2F -- Yes --> BOOKED
S2F -- No, sequence complete --> EMAIL
%% Email drip flow
E1 --> E2 --> E3 --> E4 --> E5
E5 --> COLD
%% Email exit conditions
E1 & E2 & E3 & E4 & E5 -- Replies or books call --> BOOKED
E1 & E2 & E3 & E4 & E5 -- Unsubscribes --> UNSUB
%% Reactivation
COLD --> |30+ days pass| SEQ3
S3A --> S3B --> S3C
S3C -- Yes --> BOOKED
S3C -- No --> S3D
S3D --> COLD
%% Post-install
BOOKED -.->|After job completed| SEQ4
S4A --> S4B --> S4C
S4C -- Yes --> S4D
S4C -- No reviewed yet --> S4D
How every touchpoint is tagged, tracked, and reported back to source.
flowchart TD
classDef source fill:#1a73e8,color:#fff,stroke:#1558b0
classDef tracking fill:#f4511e,color:#fff,stroke:#c23b12
classDef sheet fill:#34a853,color:#fff,stroke:#1e7e34
classDef reporting fill:#607d8b,color:#fff,stroke:#37474f
classDef decision fill:#fbbc04,color:#1a1a1a,stroke:#e0a800
subgraph SOURCES["TOUCH POINT"]
T1["Meta Lead Form Ad"]:::source
T2["Google Ads — Click-to-Call"]:::source
T3["Google Ads — Landing Page Form"]:::source
T4["GBP Call"]:::source
T5["Organic Website Visit\n(no ad click)"]:::source
T6["Yard Sign QR Code"]:::source
T7["Referral / Nextdoor\n(manual)"]:::source
end
subgraph TRACKING["TRACKING LAYER"]
CR["CallRail\n- Unique number per source\n- Whisper: 'Google Ads' / 'GBP'\n- Records call duration\n- Fires n8n webhook on ring"]:::tracking
GA["GA4 Events\n- form_submit\n- page_view: /thank-you\n- UTM params captured\n- Meta Pixel fires on same page"]:::tracking
META["Meta Pixel\n- PageView\n- Lead event on form submit\n- Custom audience: all visitors\n- Custom audience: thank-you page"]:::tracking
UTM["UTM Parameters\n- utm_source: meta | google | gbp\n organic | yard-sign | referral\n- utm_medium: cpc | organic\n | qr | referral\n- utm_campaign: campaign name\n- utm_content: ad set / creative"]:::tracking
end
subgraph TAGS["n8n TAGGING on INTAKE"]
TAG1["source_tag: meta_aptl | meta_tlp\ngoogle_lp_aptl | google_call\ngbp_call | organic_aptl\norganic_tlp | yard_sign\nreferral | nextdoor | cx_survey"]:::sheet
TAG2["brand_tag: APTL | TLP"]:::sheet
TAG3["tier_tag: hot | warm | cold\n(hot = survey/referral/direct call\nwarm = form fill\ncold = retargeting / cold list)"]:::sheet
TAG4["timestamp, UTMs, phone, email\nlead_id (deduplicated UUID)"]:::sheet
end
subgraph SHEETS["GOOGLE SHEETS"]
SH1["Master Lead Tracker\n- All columns: name, phone, email,\n source, brand, tier, status,\n date, UTMs, sequence enrolled,\n Jobber quote #, outcome"]:::sheet
SH2["Attribution Tracker\n- Weekly roll-up by source\n- Columns: source | leads | quotes\n | jobs | revenue | CPL | CPA\n | close rate"]:::sheet
SH3["CallRail Log\n- Auto-populated from CallRail webhook\n- Call date, duration, source #,\n caller ID, recording link"]:::sheet
end
subgraph REPORTING["REPORTING LAYER"]
LS["Looker Studio Dashboard\n- Pulls from all Sheets tabs\n- Charts: leads by source (bar)\n CPL trend (line), close rate\n by source (table), revenue\n by brand (pie)\n- Refreshes every 4 hours"]:::reporting
MONTHLY["Monthly Report to Jack\n- your ops/marketing manager compiles from Looker\n- Top sources by CPL and CPA\n- Which sequences converted best\n- Budget recommendation for next month"]:::reporting
end
T1 --> META & UTM
T2 --> CR
T3 --> GA & UTM
T4 --> CR
T5 --> GA & META
T6 --> UTM & GA
T7 --> TAG1
CR --> TAG1
GA --> TAG1
META --> TAG1
UTM --> TAG1
TAG1 & TAG2 & TAG3 & TAG4 --> SH1
SH1 --> SH2
CR --> SH3
SH1 & SH2 & SH3 --> LS
LS --> MONTHLY
Review collection, referral engine, and reactivation loop.
flowchart TD
classDef job fill:#0f9d58,color:#fff,stroke:#0a7340
classDef sms fill:#1a73e8,color:#fff,stroke:#1558b0
classDef email fill:#f4511e,color:#fff,stroke:#c23b12
classDef meta fill:#6c3fc5,color:#fff,stroke:#4a2a8a
classDef decision fill:#fbbc04,color:#1a1a1a,stroke:#e0a800
classDef outcome fill:#607d8b,color:#fff,stroke:#37474f
JOB_DONE(["Jobber: Job Status = Completed"]):::job
subgraph REVIEW["REVIEW REQUEST — Sequence 4 (Quo SMS)"]
R1["SMS Day +1\n'Hope you're loving your lights!\nWould you mind leaving us\na quick Google review?\n[link]'"]:::sms
R2{Left Review?}:::decision
R3["SMS Day +3\n'Thank you! Your review means\na lot to a small local business.\nKnow anyone who might want\nthis for their home?'"]:::sms
R4["SMS Day +5\n(if no review yet)\n'We'd really appreciate it —\ntakes 60 seconds! [link]'"]:::sms
end
subgraph REFERRAL["REFERRAL ENGINE"]
REF1["Referral Ask via SMS\n+ follow-up email via Resend\n'Send us a friend and we'll\ngive you [incentive] on\nyour next service'"]:::sms
REF2{Referral Provided?}:::decision
REF3["New lead entered manually\ninto Master Lead Tracker\nsource_tag = referral\ntier = hot"]:::job
end
subgraph REACTIVATION["REACTIVATION LOOP"]
COLD1["Quoted — never approved\n(Jobber: Quote status = Sent, no approval\nafter 30 days)"]:::job
COLD2["Past leads — no conversion\n(Master Lead Tracker: status = cold\nafter 30+ days)"]:::job
COLD3["Email non-openers\n(Resend: opened = false\nafter 7 days)"]:::email
REACT1["Sequence 3: Reactivation SMS\n(Quo — 2-touch, 3 days apart)"]:::sms
REACT2["Re-send Email with\nnew subject line\n(Resend one-off trigger from n8n)"]:::email
REACT3["Meta Retargeting Audience\n'Quoted but not booked'\n(manual upload to Meta\nmonthly, via email CSV)"]:::meta
end
subgraph GOOGLE["GOOGLE REVIEW POSTED"]
GR1["New Google Review Live\non APTL or TLP listing"]:::outcome
GR2["your ops/marketing manager screenshots + saves\nfor use in ad creative +\nemail nurture social proof"]:::outcome
end
JOB_DONE --> R1
R1 --> R2
R2 -- Yes --> R3 & GR1
R2 -- No --> R4 --> R2
R3 --> REF1
GR1 --> GR2
REF1 --> REF2
REF2 -- Yes --> REF3
REF2 -- No --> COLD2
REF3 --> |Back into main\nnurture flow| R1
COLD1 --> REACT1 & REACT3
COLD2 --> REACT1
COLD3 --> REACT2
REACT1 --> |Responds| JOB_DONE
REACT2 --> |Opens + books| JOB_DONE
REACT3 --> |Clicks ad| JOB_DONE
| Symbol | Meaning |
|---|---|
| Rectangle | System action or data node |
| Diamond | Decision / branch point |
| Rounded rectangle | Start or end state |
| Blue nodes | Lead sources or SMS outreach (Quo) |
| Purple nodes | Automation layer (n8n) |
| Green nodes | CRM / data storage (Jobber, Google Sheets) |
| Red / Orange nodes | Email outreach (Resend) or call tracking (CallRail) |
| Gray nodes | Reporting and analytics |
| Yellow nodes | Decision points in logic |
| Source | n8n Webhook | Sheet Tab | SMS Sequence | Email Sequence | Jobber Action | Attribution Tag |
|---|---|---|---|---|---|---|
| Meta Lead Form — APTL | /webhook/meta-aptl |
APTL Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | meta_aptl |
| Meta Lead Form — TLP | /webhook/meta-tlp |
TLP Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | meta_tlp |
| Google Ads Click-to-Call | /webhook/callrail (via CallRail) |
All Sources | Sequence 1 (if voicemail) | 5-touch drip (if no callback) | Quote on call | google_call |
| Google Ads Landing Page Form — APTL | /webhook/google-form |
APTL Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | google_lp_aptl |
| Google Ads Landing Page Form — TLP | /webhook/google-form |
TLP Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | google_lp_tlp |
| GBP Call — APTL | /webhook/callrail (via CallRail) |
APTL Leads | Sequence 1 (if voicemail) | 5-touch drip (if no callback) | Quote on call | gbp_aptl |
| GBP Call — TLP | /webhook/callrail (via CallRail) |
TLP Leads | Sequence 1 (if voicemail) | 5-touch drip (if no callback) | Quote on call | gbp_tlp |
| Website Contact Form — APTL | /webhook/aptl-contact |
APTL Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | organic_aptl |
| Website Contact Form — TLP | /webhook/tlp-contact |
TLP Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | organic_tlp |
| CX Survey — Fillout (Hot) | /webhook/fillout-cx |
TLP Leads | Sequence 2 | 5-touch drip (if no SMS reply) | Quote on call | cx_survey_hot |
| CX Survey — Fillout (Warm/Cold) | /webhook/fillout-cx |
TLP Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | cx_survey_warm |
| Yard Sign QR — APTL | /webhook/yard-sign |
APTL Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | yard_sign_aptl |
| Yard Sign QR — TLP | /webhook/yard-sign |
TLP Leads | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | yard_sign_tlp |
| HOA / Partner Referral | Manual entry | All Sources | Sequence 1 or 2 (at your ops/marketing manager's discretion) | 5-touch drip (if no SMS reply) | Quote on call | referral |
| Nextdoor | Manual entry | All Sources | Sequence 1 | 5-touch drip (if no SMS reply) | Quote on call | nextdoor |
| Post-sale referral (from existing customer) | Manual entry | All Sources | Sequence 2 (warm context) | — | Quote on call | referral |
| Reactivation — 30+ day cold | n8n scheduled trigger | All Sources | Sequence 3 | Re-send email (new subject) | Quote on call | original tag preserved |
| Quoted — never approved | Jobber status webhook | All Sources | Sequence 3 | Re-send email (new subject) | Reopen quote | retarget_quoted |
Use this monthly to verify the automation stack is running correctly.
| Check | How to Verify | Owner |
|---|---|---|
| All webhooks responding | Send a test lead through each source; confirm it appears in Master Lead Tracker within 2 min | your ops/marketing manager |
| Duplicate check working | Submit same phone number twice; second row should be flagged, not double-enrolled in Quo | your ops/marketing manager |
| CallRail numbers routing correctly | Call each tracking number; confirm source tag in Sheets matches expected source | your ops/marketing manager |
| Quo sequences firing on schedule | Check Quo contact timeline for a recent lead; confirm SMS 1 sent immediately | Jack / your ops/marketing manager |
| Resend drip triggering after SMS sequence | Manually verify a lead that didn't reply to SMS is enrolled in Resend after sequence ends | your ops/marketing manager |
| Jobber quote webhook firing to Sheets | Approve a test quote; confirm "Quote Sent" status updates in Master Lead Tracker | your ops/marketing manager |
| Looker Studio refreshing | Open dashboard; confirm "Last updated" timestamp is within 4 hours | your ops/marketing manager |
| Attribution Tracker updating | Check Attribution Tracker tab; confirm weekly CPL/CPA numbers look reasonable | your ops/marketing manager |
| Post-install SMS firing | Mark a job Complete in Jobber; confirm Sequence 4 SMS fires within 1 hour | your ops/marketing manager |
| Meta Pixel firing | Use Meta Pixel Helper browser extension on both websites; confirm Lead event on form submit | your ops/marketing manager |
Part of your Outdoor Vibes asset library — yours to keep and run.