📨 Email 4K 📝 Spring Blog 💰 Membership 📈 Google Ads 🔎 Sewer Blog 🏠 Blog Archive 👴 CEO Terminal 🚓 Police Magnet 🔌 HubSpot 🎨 Audrey
🧪 Scientific Method Engine // Spring 2026 Growth Playbook

The Complete BSP Revenue Engine: 9 Plays to Get the Phone Ringing

Every play below is data-backed, prioritized by speed-to-revenue, and broken into click-by-click microsteps. Nothing is theoretical. Everything deploys.

$2.24M
12-Mo Revenue
$6M
Target
3,521
Jobs (12 Mo)
1,022
Customers
610
Repeat Customers
116
$5K+ Accounts
1

📨 Lead Magnet + Email Funnel to 4,000 Past Customers

🚨 URGENT, RINGS PHONES THIS WEEK 🧪 Experiment: Lead Magnet Funnel Cost: $0 | Timeline: 48 hours

4,000 customers in ServiceTitan who already hired BSP. A PDF lead magnet gives them a reason to engage, HubSpot captures the download, and a 3-email drip sequence converts them into booked jobs and membership enrollments. Approved at Mar 16 standup.

🚀 The Full Funnel
  • 📨 Email 1 (Day 0): "Your Kansas City Plumbing Survival Guide is ready", links to blog + PDF download
  • 📚 Lead Magnet: PDF survival guide downloaded via HubSpot form on the blog page. HubSpot captures contact info automatically.
  • 📨 Email 2 (Day 3): "Did you check #5?", follow-up on the sewer inspection item. Links to sewer cost blog. Positions BSP as the expert.
  • 📨 Email 3 (Day 7): "Members save 10-25% on every visit", membership pitch with the 4 tiers. Soft CTA: "Reply to learn more" or call.
  • 📞 Throughout: Every email has phone number + "reply to book" CTA
📈 The Math
  • 👥 4,000 past customers in ServiceTitan
  • 📨 Email 1 open rate (20%): 800 opens
  • 📚 PDF download rate (25% of opens): 200 downloads captured in HubSpot
  • 📨 Drip email 2 open rate (30%, warmer audience): 60 opens
  • 📨 Drip email 3 open rate (25%): 50 opens with membership pitch
  • 📞 Total call/reply rate across all 3 emails: 3-5% = 120-200 touchpoints
  • 💰 At 80% booking rate + $1,522 avg ticket = $97K-$160K potential revenue
  • 🛡 Membership conversions from email 3: 5-10% of downloaders = 10-20 new members
  • 💲 Cost: $0 (HubSpot free tier handles all of this)

📚 The Lead Magnet: "Kansas City Plumbing Survival Guide"

📚 PDF Content Outline

The KC Homeowner's Plumbing Survival Guide, What Every Johnson County Home Needs to Know

8-10 page PDF, branded, print-ready. Not a sales brochure, a genuine resource that positions BSP as the authority.

Page 1: Cover, BSP branding, "Free Guide for KC Homeowners"

Page 2: Spring Checklist, the 7-point inspection (condensed from the blog)

Page 3: KC Pipe Types, clay tile, cast iron, Orangeburg, PVC. What your home probably has based on build year.

Page 4: Sewer Warning Signs, the 7 red flags + what they cost if ignored

Page 5: Water Quality in KC, WaterOne hardness data, what it does to your pipes, softener/filter guide

Page 6: Water Heater Lifespan Calculator, age check, sediment signs, when to flush vs replace

Page 7: Emergency Plumbing Kit, what to have in your home, how to shut off water, when to call vs DIY

Page 8: BSP Maintenance Plans, 4 tiers, "never worry about your plumbing again"

Back Cover: Phone number, QR code to book, 4.9 stars, 394+ reviews, service areas

📨 Email Sequence (3-Email Drip via HubSpot Workflows)

Email 1, Day 0 (Initial Send)

Subject: Your Free Kansas City Plumbing Survival Guide

Preview: 8 pages of KC-specific plumbing intel. Free PDF download.

"Hi [First Name], we just published our Kansas City Plumbing Survival Guide, everything a Johnson County homeowner needs to know about their pipes, sewer, water heater, and water quality. It is free, and it is specific to Kansas City (not generic national advice)."

CTA Button: "Download the Free Guide" (links to blog with HubSpot form)

P.S.: "Already know you need a plumber? Call (913) 963-1029 or reply to this email. Past customers get priority scheduling this month."

Email 2, Day 3 (Follow-Up)

Subject: Did you check item #5? (Your sewer line)

Preview: This is the one most homeowners skip. It is also the most expensive if ignored.

"Hi [First Name], in our Survival Guide, item #5 is the sewer camera inspection. Most homeowners skip it because they cannot see underground. But roots, cracks, and bellies get worse every season. A $150 camera inspection catches what becomes a $5,000-$19,000 emergency."

CTA: "See What Sewer Replacement Actually Costs in KC" (links to sewer cost blog)

Email 3, Day 7 (Membership Pitch)

Subject: What if we handled your spring checkup every year?

Preview: Annual inspection, priority scheduling, 10-25% off every repair. Starting at $19/mo.

"Hi [First Name], everything in the Survival Guide, the water heater flush, the pressure test, the water quality check, the sewer camera, we do all of it in one 2-hour visit as part of our maintenance plans. Members also save 10-25% on every repair and get priority scheduling."

CTA: "Learn About Our Plans" or "Call (913) 963-1029"

🛠️ Microsteps

Step 1

📚 Audrey designs the PDF

8-10 pages, BSP branded, using the content outline above. Print-ready + digital. Robert provides all copy and data.

🎨 Audrey
2-3 hours
Step 2

💻 Import 4K contacts to HubSpot

Export from ST (Customers > Export > Active with email). Import CSV to HubSpot (Contacts > Import). Create list "Past Customers" for targeting.

👴 Robert
15 minutes
Step 3

📝 Create HubSpot landing page with form

HubSpot > Marketing > Landing Pages > Create. Embed the Spring blog content + PDF download form. Form fields: name + email (already have from ST, but captures fresh consent). Form triggers PDF delivery email automatically.

👴 Robert
30 minutes
Step 4

📨 Build 3-email sequence in HubSpot Workflows

HubSpot > Automation > Workflows > Create. Trigger: form submission (PDF download). Day 0: send guide. Day 3: sewer follow-up. Day 7: membership pitch. All automated, fires without manual work.

👴 Robert
45 minutes
Step 5

📨 Build initial email blast

HubSpot > Marketing > Email > Create. Use Email 1 draft. Target: "Past Customers" list (4K). Send test to Robert + Stephanie + Kalen. Schedule for 9 AM CT.

👴 Robert
30 minutes
Step 6

📈 Track full funnel in HubSpot

HubSpot auto-tracks: email opens, clicks, form submissions, workflow enrollments. Tag inbound calls as "Lead Magnet Campaign" in ST. Measure: downloads, drip completion rate, calls, jobs booked, memberships enrolled, revenue.

👴 Robert
Ongoing
🧪 Experiment Tracking

Experiment: Lead Magnet + 3-Email Drip Funnel

  • 📈 Measure: PDF downloads, email open rates per drip, click-throughs, calls generated, jobs booked, membership enrollments
  • 🎯 Targets: 200+ PDF downloads, 80+ calls, 10+ membership enrollments, $50K+ revenue attributed
  • 🔴 Kill switch: If open rate below 10% on email 1, fix subject line and resend to non-openers
  • 🚀 Scale: If funnel works, replicate for seasonal campaigns (summer water heater, fall winterization, winter emergency prep)
2

📝 Spring Plumbing Checkup Blog

✅ DEPLOYED The landing page for the email campaign

Interactive 7-item checklist blog with clickable progress tracking, membership teaser, FAQ with Google schema markup, and mobile sticky CTA. This is where the email sends people.

📝
7
Checklist Items
Interactive click-to-check
🔎
5
FAQ Questions
Google schema markup
🛡
4
Membership Tiers
Teaser baked into blog
📞
5
CTA Placements
Phone + Book Online
✅ Live Now

Preview: morpheus.callbrightside.com/documents/blog_spring_checkup.html

Needs to be published on callbrightside.com via WordPress. Robert will create the post in WP and paste the content.

🎨 Audrey Creative Needed

🎨 Blog Hero Image

Spring-themed header image for the blog. Outdoor hose bib, green lawn, BSP truck in background. Clean, bright, seasonal feel.

📐 Dimensions: 1200x630px (social share) + 1920x600px (blog header) | Format: PNG/JPG | Style: Bright, clean, seasonal
3

🛡 Preventative & Safety Membership

🟢 STRATEGY COMPLETE Experiment #19 V2 | $0 to launch | 121x ROI

"If you had been on our maintenance plan, we could have prevented this emergency.", The tech pitch after every repair.

🔁
610
Repeat Customers
Loyalty invite targets
💲
$0
Launch Cost
ST config + brochure + training
📈
$135K+
Y1 Target Revenue
Subscriptions + upsells
🔒 Three Enrollment Paths
  • 🌟 Post-Repair Enrollment: "We could have prevented this." Said after every repair. Target: 10-15% conversion.
  • 💰 Loyalty Conversion: Email to 610 repeat customers. "Thank you for your business, here's your membership." Target: 5-10%.
  • 💎 Automatic Tiering: $5K+ lifetime spend = auto-enrolled in matching tier. 116 customers qualify TODAY.

🛠️ Microsteps

Day 1

💻 Configure ST Membership module

Settings > Memberships > Create 4 tiers (Essential/Protection/Premium/Elite). Set recurring billing, auto-discount rules.

👴 Ashton
2 hours
Day 1

📄 Build one-page brochure

4 tiers side by side with pricing, benefits, and "Preventative & Safety" branding. Print-ready for trucks.

🎨 Audrey
2 hours
Day 2

💎 Auto-enroll 116 $5K+ customers

Pull list from ST by lifetime spend. Bulk-enroll in Premium/Elite. Send thank-you text: "You've earned membership status."

👴 Ashton
1 hour
Day 2

💬 Train techs: "prevent this" pitch

15-minute huddle. One script: "If you had been on our plan, we could have caught this early." No pressure. Plant the seed.

👴 Kalen
15 minutes
Day 3-5

📨 Loyalty email to 610 repeat customers

Separate from the Spring Checkup email. "As a thank you, we're inviting you to our maintenance program." Special rate for existing customers.

👴 Robert
1 hour

🎨 Audrey Creative Needed

🎨 Membership Brochure / One-Pager

Print-ready brochure for truck stock. All 4 tiers side by side. BSP branding. Clean, professional, not salesy. "Preventative & Safety" messaging.

📐 Format: 8.5x11" PDF (print) + digital version for email/text | Both sides | 4 tiers with pricing + benefits

🎨 Membership Badge / Icon

Small graphic for invoices, emails, website. Shows "BSP Member" status. Makes customer feel part of something.

📐 Sizes: 200x200px icon + 600x200px banner | PNG with transparency | Navy/yellow BSP colors

🎨 Welcome Email Header

Header image for new member welcome email. Warm, trustworthy, 5th-generation family brand.

📐 Dimensions: 600x200px | Format: PNG/JPG | Clean, warm, BSP branded
4

📈 Google Ads Budget Ramp + Smart Bidding

🟢 DEPLOYED TODAY $68/day ➔ $1,225/day | 7-14 days to full ramp
📊 Google Ads API // Last 7 Days

🚨 Why the Phone Wasn't Ringing

CampaignSpendClicksConversionsStatus
Emergency 24/7$9316472🟢 Working
LSA$146262🟡 Slow
Water Heater$56240🔴 Starved
Sewer Replacement$4890🔴 Starved
Drain Cleaning$46180🔴 Starved
Gas Line$3130🔴 Starved
Sewer$2940🔴 Starved
Brand$2941🟡 Low
TOTAL$47925275$68/day avg
🚀 What Changed Today
  • 💲 Budgets doubled across all campaigns: Sewer $200/day | Replacement $300/day | Emergency $300/day | Drain $200/day | Water Heater $150/day | Gas $50/day | Brand $25/day
  • 📈 New daily total: $1,225/day ($36,750/month) up from $68/day
  • 📊 39 offline conversions uploaded ($54K in revenue), Smart Bidding now knows which clicks produce paying customers
  • 🕑 Timeline: Google ramps gradually. Expect noticeable increase by Thursday/Friday. Full optimization in 7-14 days.
💲
12.4x
Proven ROAS
LaTeX verified
💰
81%
Revenue from Sewer
$16,476 in 30 days
📈
59%
Attribution Rate
Up from 0%
🚀
$1,225
New Daily Budget
18x increase
5

🔎 Sewer Cost Blog, #1 Page Target

🟢 BUILT, AWAITING KALEN REVIEW SEO play for "sewer line replacement cost Kansas City"

Interactive cost estimator, FAQ with schema, comparison tables, all pricing from 55 actual BSP sewer jobs. Kalen has the review doc with blank lines for his notes.

🔎
55
Jobs Analyzed
ServiceTitan verified
💰
$9,714
Avg Sewer Repair
BSP actual data
📈
6
Interactive Estimator Cards
Click to see your range
💬
7
FAQ Questions
Google schema markup
✅ Preview + Kalen Review

Blog Preview | Kalen Review: drafts/kalen_sewer_blog_review.txt

6

🏠 Blog Archive Fixed, All 21 Posts + Working Filters

✅ DEPLOYED Snippets #35 + #37 | Categories fixed
📝
21
Posts Now Visible
Was showing only 10
🎯
6
Filter Buttons
Were dead, now live
🔧
3
Categories Fixed
Sewer cost moved to Sewer
💻
2
WP Snippets
#35 (posts) + #37 (filters)
7

👴 Stephanie's CEO Terminal, Fixed & Connected

✅ DEPLOYED Monday API connected | Revenue fixed | Tech names resolving
Fixed

🔒 Monday API Auth

API key was missing from CEO API .env. Added + restarted. 20 boards now pulling.

✅ WORKING
Fixed

📈 Revenue Endpoint

Now separates invoiced vs pending jobs. Shows "32 jobs pending invoicing" instead of misleading low totals.

✅ WORKING
Fixed

👴 Tech Name Resolution

Was showing "Unknown" for all techs. Now resolves Dan Chritton, Anthony Erickson, Scott Gibson via ST technicians endpoint.

✅ WORKING
Populated

📈 Revenue Drivers Board

Was empty. Now has 12 revenue drivers with monthly impact numbers and notes from actual data.

12 drivers, $74K/mo projected
Fixed

📋 GPT Instructions

Trimmed from 8,500 to 3,626 chars. Bearer token auth configured. Stephanie connected and pulling data.

✅ WORKING
8

🚓 KC Police Safety Magnet, 100 Year Plumbing

🔴 AWAITING ARTWORK $500-$800 | Exclusive plumbing placement | Fridge magnet distributed to homes

KC Police Department safety magnet, 8.5"x11", distributed to homes. 100 Year Plumbing gets the exclusive plumbing business card spot. $500-$800 one-time cost. Lives on fridges for years.

🎨 Audrey Creative Needed

🎨 Business Card Ad for Police Magnet

100 Year Plumbing and Sewer branding (NOT BSP). Logo, phone number, "24/7 Emergency Plumbing" tagline. Professional, sits next to police branding. QR code if room allows.

📐 Size: Business card (3.5x2") within 8.5x11 magnet | Must match police-level professionalism | 100 Year branding, not BSP
9

🔌 HubSpot API Automation, The Engine Behind Everything

🔴 NEEDS API KEY Automates contact import, email sends, drip sequences, and tracking

HubSpot is the email engine for this entire playbook. Once the API key is configured, Nexus automates the manual steps and connects HubSpot to our ServiceTitan data.

🔒 Step 1: Get the HubSpot Private App Token

1.1

💻 Open HubSpot Settings

HubSpot > Settings (gear icon, top right) > Integrations > Private Apps

👴 Robert
1 minute
1.2

🔒 Create Private App

Click "Create a private app" > Name: "Nexus AI" > Scopes tab: check crm.objects.contacts.read, crm.objects.contacts.write, crm.lists.read, crm.lists.write, content > Create app > Copy the access token

👴 Robert
2 minutes
1.3

💻 Give token to Nexus

Robert provides the token. Nexus adds it to VM config: HUBSPOT_API_KEY=pat-na1-xxxxx in /opt/nexus/nexus/config/.env. CEO API restarts. Done.

👴 Robert + Nexus
2 minutes

🚀 What Nexus Automates Once Connected

Auto 1

👥 Import 4K ST Contacts

Nexus exports customer list from ServiceTitan API (name, email, phone, service history) and bulk-imports to HubSpot via API. Creates "Past Customers" list automatically. Runs once, then syncs weekly.

Replaces: manual CSV export/import
Auto 2

📨 Build Email Templates via API

Nexus creates the 3 drip emails in HubSpot programmatically, subject lines, body HTML, CTAs, tracking. No UI clicking needed.

Replaces: 30+ min manual email building
Auto 3

🔄 Create Workflow (Drip Sequence)

Nexus sets up the HubSpot Workflow: trigger on form submission > send email 1 > wait 3 days > send email 2 > wait 4 days > send email 3. Fully automated nurture.

Replaces: manual workflow building
Auto 4

📊 Sync ST Revenue to HubSpot Contacts

Nexus matches HubSpot contacts to ST customers by email/phone. Writes lifetime spend, last service date, and membership status as HubSpot custom properties. Enables smart segmentation.

Replaces: nothing, this does not exist today
Auto 5

🎯 Auto-Segment High-Value Customers

Nexus creates HubSpot lists automatically: "$5K+ Customers" (auto-tier membership), "Sewer Customers" (sewer blog target), "Repeat Customers" (loyalty invite), "Recent Jobs" (review ask). No manual list building.

Replaces: manual list creation
Auto 6

📈 Weekly Performance Dashboard

Nexus pulls HubSpot email stats (opens, clicks, bounces, unsubscribes) and pushes to Monday board + CEO Terminal. Stephanie sees email performance alongside revenue, ads, and experiments.

Replaces: checking HubSpot manually
💡 Why This Matters

Without automation, every email campaign is 2+ hours of manual work: export contacts, import to HubSpot, build email, build workflow, check results. With Nexus + HubSpot API, it is one command: "send spring checkup email to past customers." The system does the rest.

This also enables seasonal campaign replication: summer water heater campaign, fall winterization campaign, winter emergency prep campaign, all built from the same funnel template with different content. Build once, reuse forever.

🎨

🎨 Audrey's Creative Deliverables, Complete List

Everything needed across all 8 plays
#DeliverablePlayPrioritySpecs
1KC Plumbing Survival Guide PDF📨 Play 1URGENT8-10 pages, BSP branded, print-ready + digital | Lead magnet for email funnel | Content provided by Robert
2Spring Blog Hero Image📝 Play 2URGENT1200x630 social + 1920x600 header | Spring theme, outdoor, BSP truck
3Email Header Graphic📨 Play 1URGENT600x200px | "Spring Plumbing Checkup" | Clean, seasonal, BSP branded
4Membership Brochure🛡 Play 3THIS WEEK8.5x11 print PDF + digital | 4 tiers | "Preventative & Safety"
5Membership Badge/Icon🛡 Play 3THIS WEEK200x200 icon + 600x200 banner | "BSP Member" | Navy/yellow
6Welcome Email Header🛡 Play 3NEXT WEEK600x200px | New member welcome | Warm, trustworthy
7Police Magnet Ad🚓 Play 8THIS WEEK3.5x2" business card | 100 Year Plumbing branding | QR code
🎯 Priority Order for Audrey
  • 🔴 TODAY/TOMORROW: Email header graphic (#2) + Spring blog hero (#1), email campaign sends tomorrow morning
  • 🟡 THIS WEEK: Membership brochure (#3) + badge (#4) + police magnet (#6)
  • 🟢 NEXT WEEK: Welcome email header (#5)