π‘οΈ The framing principle: COLD vs WARM offers (Rio's learning 7/24)
Match the size of your ask to the temperature of the relationship.
- COLD (they don't know you, zero trust): the offer must be a tiny ask β permission, a free breakdown, an idea. Value first, pitch hidden. Goal = the reply, not the sale. Cold + a big ask (buy / book a call) gets ignored; that's why cold pitching feels like death. Examples: the wrap SMS drip, the Kylie DM (before she posted).
- WARM (they know you / engaged / referred / replied to your value): now you can make a real ask β the proposal, the price, the meeting. Example: She-Wrapz (referral + in-person + saw value β full $650/$950 proposal).
- THE ENGINE: the audit-first method is a machine for turning cold into warm β cold DM (free value, tiny ask) β they reply β now warm β THEN the real offer. Temperature is a ladder you walk people up, not a fixed state. Your only job on a cold touch is to earn the raised hand.
- Live proof (7/24): Kylie posted "who can update my site?" publicly = she raised her own hand β instantly warm/hot β Rio skipped the cold structure and went straight to a direct, proof-led offer (free mockup). When someone shows intent, you match it.
Ingested 2026-07-24 from "I've Made Thousands of Cold Calls. Here's Why I Stopped And What I Do Instead." A HighLevel promo, but the method is gold and it maps exactly onto Rio's stack β he's already on GHL and already ran the Prospecting Tool tonight (the wrap + logistics lists). This is the next-level version of what he's doing: stop dialing cold, lead with a specific audit.
The core insight
Cold calling feels bad (and converts low) not because of nerves or a weak script, but because you show up with nothing but a pitch. You ask for time before you've given anything. The fix: show up already knowing something specific about them β a real problem you found before you said a word. That flips the energy from "who is this?" to "what did they find?"
The 3-step system
Step 1 β Find the problem BEFORE you reach out
Audit each business fast (Google Maps or GHL Prospecting Tool β Rio has both):
- Review count + rating (the shop with 400 reviews gets the call every time; low count = losing jobs)
- Are they responding to reviews? Most aren't β "nobody's home"
- Website linked to the GBP? Many have none β nowhere to go even if found
- GHL Prospecting Tool scores each business by how obviously they need help AND auto-generates an audit PDF to send as value-in-advance. (Google Maps = same info, just take notes instead of a PDF.)
Step 2 β Lead with what you found (the message β save word-for-word)
Hey [name]. I was searching for [business type] in [city] and came across your business. You've got some solid reviews. I noticed a few things on your Google listing that might be costing you calls though. I put together a quick breakdown if you'd like to see it. No charge, no strings attached. Just thought it might help. Is it okay to send it over?
No pitch, no service mention, no meeting ask. Just proof you paid attention. Single-to-double-digit response rate vs. ~0 for generic "I help businesses get more leads." Works on any channel β SMS, email, DM, or as a call opener. Specificity + prior research matters more than the channel.
Step 3 β Follow up like a human (3-4 msgs, few days apart, each ADDS something)
- Msg 1 = the message above. A tag gets added β automation kicks in.
- Msg 2 (next day, no reply) β add a specific value nugget, don't just bump:
Hey [name], forgot to mention, one of the fastest things I've seen work for [business type] is an automated review request that goes out after every job. I talk about that in the breakdown. Want me to send it over?
- Msg 3 (few days later) β name the awkwardness, get on their side:
Hey [name], I know salespeople are the worst, so I get it if you'd like me to stop. That said, I'd hate for you to miss out on what I found just because I didn't send one more message. Still happy to send it over if you want.
- Msg 4 (couple days after) β the "close your file" natural deadline:
Hey [name], before I close your file, I just wanted to check one last time. If you're not interested, no worries at all, I won't reach out again. But if the timing's just been off, I'm still happy to send over what I found.
- After 4, move on. A surprising number of replies land on Msg 4 (finally a reason to respond).
When they reply "send it over"
Send the audit, walk them through it, then pick ONE problem and offer to fix it (not all β avoids paradox of choice). One problem β one solution β one price. Then stack more once the first is working and they can see results.
The offer stack in the video (a DIFFERENT model β consider, don't blindly adopt)
Productized recurring services, not project builds:
- Reviews issue β review automation $197/mo (auto review-request after every job)
- Missing calls (test by calling after hours) β AI receptionist $247/mo (answers, qualifies, books β installs in GHL)
- Later β revenue website $299/mo (captures + converts leads)
- Stacked = $743/client; 10 clients β six figures/yr, low churn because results are visible weekly.
- βοΈ This is lower-ticket/productized vs. Rio's current Uprise model (website + ads, $1,500/mo). The outreach method is immediately usable as-is; the offer stack is a strategic option to weigh, not a mandate.
How this plugs into what Rio built tonight
- He already has the two prospected lists (
wrap-dial-0724,trucking-0724) in GHL. - Instead of (or before) dialing cold, send them the Step 2 message + run the 4-message sequence as a GHL workflow (same builder as the
txt-backworkflow). Lead with the audit, not the pitch. - The GHL Prospecting Tool's audit PDF is the value-in-advance asset β use it.
- β οΈ Compliance: for cold SMS keep the STOP-out + batch sends (same as the missed-call rail).
π² BUILT-FOR-SMS: the 4-message drip (wrap list) β adopted 7/24
Rio's channel call 7/24: content + SMS/text + ringless voicemail, go all-in doing the work. First drip = audit-first, for wrap-dial-0724 (fits local/Google-driven shops; logistics needs its own angle β direct-shipper hook, build separately).
GHL workflow shape: Trigger = contact tag audit-drip added β Send SMS 1 β Wait 1 day β Send SMS 2 β Wait 3 days β Send SMS 3 β Wait 3 days β Send SMS 4 β End. Workflow Settings β "Stop on Response" = ON (reply halts msgs 2-4). Sends from the (954) A2P line. Batch the enrollments.
β οΈ RULE: NO pitch, NO company intro ("Uprise"), NO "I help businesses" anywhere. Lead with the specific observation, offer free value, ask only for permission to send. The pitch comes ONLY after they reply and you send the breakdown. β οΈ SPECIFICITY IS THE ENGINE (Rio's call 7/24): msg 1 must name the ACTUAL business + the ACTUAL specific reason for THAT shop. Generic "a few things on your listing" is weaker. Achieved at scale via merge fields + one custom field.
The mechanism β specificity at scale:
- Custom field on Contact:
audit_note(text) = the one specific finding for that business. - Audit the business (GHL Prospecting Tool or Google Maps) β drop the finding into
audit_note, e.g. "you've got solid reviews but haven't replied to any in months" / "there's no website linked to your Google listing" / "your listing's light on photos vs the shops ranking above you." - Tag
audit-dripβ msg 1 fires, naming them + the exact problem. {{contact.company_name}}and{{contact.audit_note}}are the merge fields. The audit work up front IS the method β no blind blast.
LOCKED COPY (finalized 7/24 β no em dashes, tightened, Rio's voice). Build from these verbatim.
- Msg 1 (immediate, specific): Hey, came across {{contact.company_name}} while looking at wrap shops around Miami and noticed {{contact.audit_note}}. Small stuff, but it quietly costs you jobs. I put together a quick breakdown, no charge. Want me to send it over? (reply STOP to opt out)
- Msg 2 (+1 day): Hey, forgot to mention. One of the fastest wins I see for shops like yours is an automated text that asks for a review after every job. It's in the breakdown. Want me to send it over?
- Msg 3 (+3 days): Hey, I know salespeople are the worst, so I get it if you want me to stop. I'd just hate for you to miss what I found over one more text. Still happy to send it if you want.
- Msg 4 (+3 days): Hey, before I close your file I wanted to check one last time. If you're not interested, no worries, I won't reach out again. But if the timing's just been off, I'm still happy to send over what I found.
β οΈ Msg 2 note: the review-automation nugget is a free tip, not tied to
audit_note. If a shop's finding was already about reviews, msg 2 double-hits them β for those contacts, pick a non-reviewaudit_note(photos, no website, listing gaps).
π REPORT-GRADE audit_notes from the API (cracked 7/24 β the scalable pipeline)
The GHL Prospecting "Marketing Audit Report" (analyzemy.business) data is pullable from a public, no-auth API using the share link's report id:
- Share URL shape:
https://prod.analyzemy.business/#/share/report/<PROSPECT_ID> POST https://services.leadconnectorhq.com/prospecting/report/share?trackReportCount=truewith body{"prospectId":"<PROSPECT_ID>"}β returns the full ~96KB report JSON (no auth header needed).- Key fields:
reputation.gmb(averageRating, totalReviews, totalProcessedReviews, reply.count β review-reply %),globalListings(globalListingsCount, globalScanResults MATCH/NO_MATCH, globalAccuracyResults.overallAccuracy),websiteAnalyser(chatWidget.active, wordPress/leadConnector), health/website scores.
Pipeline: Rio copies share links from the Prospecting Tool β paste to Claude β /tmp/amb_oneliner.py <linkβ¦> fetches each + emits ranked sharp one-liners β pick top β push into GHL audit_note (field id 2p2e4wGNIFbDlGPf7kQN, format [{"id":...,"field_value":...}]). Report-grade > website-scrape because the tease matches the breakdown the prospect opens, and it's real numbers (e.g. RB VIP: "123 five-star reviews, replied to only ~1/3").
Why not fully native: GHL sends the report natively (report-link token / "Generate Marketing Audit Report" action), but has NO merge field that distills one specific finding into a sentence β that distillation is the custom edge (Rio's 7/24 specificity rule). This API pipeline automates it.
Build via GHL AI builder (same as the txt-back workflow) β paste prompt:
When a contact is tagged "audit-drip", send them an SMS, then wait 1 day and send a second SMS, then wait 3 days and send a third SMS, then wait 3 days and send a fourth SMS. If the contact replies at any point, stop the workflow so they get no more messages. Then paste the 4 messages into each Send SMS step, and turn ON Stop-on-Response in workflow Settings.