● Client #1 demo · built 30 July 2026

The whole flow, built on one real company.

This is the lead-gen playbook applied end to end to MAG Security & Automation Sdn Bhd — barrier gates and AI guardhouse systems, 41 years old, Cheras. They are running 43 live Meta ads right now. Their copy is genuinely good. Not one of those 43 ads asks the reader for anything.

Everything below is what we would put underneath their existing ads. The lander is real and clickable. The WhatsApp thread plays. The numbers are labelled.

Page 1570139786557784 43 ads live 16,722 page likes Archetype B — recurring / seat-based B2B Contact Jimmy
🟢Real MAG dataPulled from the live Meta Ad Library and magnet.com.my today, 30 Jul 2026.
🔵Our own moneyMeasured on the EP / MDP campaigns we actually ran.
🟠Modelled — not a promiseA placeholder. Needs a real number from Jimmy before it goes anywhere near a live ad.
00
Why this company

MAG, out of 11 prospects. It wasn't close.

I checked all eleven names on the prospect sheet against the live Ad Library. Only two of them advertise on Meta at all. MAG runs 43 ads. Plus Xnergy runs 9. The other nine run nothing.

1. The diagnosis is undeniable

You can show it on a phone in the meeting. 43 ads, good copy, and every single one ends at a spec page. Nothing to argue about, nothing to take on trust.

2. Nothing needs inventing

They already write the hardest part well. We keep their creative and build the six stages underneath it. That is days of work, not months.

3. They already believe in marketing

Five live social channels and an ad budget already flowing. We are not selling them the idea of advertising. We are selling them the bottom half of a funnel they already paid for.

The one-liner for Jimmy. “You're running 43 ads and the copy is good — your line about comparing LPR on price being the wrong problem is sharper than what most agencies would write for you. But all 43 land on a product page with a Learn More button. You're paying for the hardest part of this and giving the result away.”

01
What is running right now 🟢 real

The teardown

Pulled from the Meta Ad Library today. All 43 ads are active. All 43 launched on 2 July 2026 — the same day.

43/43
ads whose button says “Learn more”. Not one says Book, Message, or Get quote. Nothing in any ad asks for anything.
7
different destination pages across 43 ads. No single funnel to measure, so no winner can ever be found.
3
ads live with the headline literally reading {{product.name}} and the body {{product.brand}}. Broken catalogue placeholders, spending money.
~2×
nearly every creative appears twice in the set. Same image, same copy, two ad IDs — bidding against themselves.

✅ What they are doing right

This part matters. Do not walk in and tell a 41-year-old company its marketing is rubbish, because it isn't. Their Stage 2 is already correct:

“If you are comparing LPR brands to buy the lower price… you are solving the wrong problem.”
A textbook price-shopper repellent. Most agencies would never write this.
“Stop blaming the barrier gate. The real problem is happening after it opens.”
Problem-first, and it reframes the whole category.
“Normal AI merely identifies cars. Smarter systems enforce rules.”
Anti-hype in an AI-hype market. Expert positioning.
“They didn't upgrade because it failed. They upgraded because manual work never ends.”
Loss framing on a real buyer fear, no discount in sight.

❌ What breaks, in order of cost

1. Nothing asks. Every ad ends “Click here to learn more” with a raw URL pasted in the caption. The reader is invited to read, never to raise a hand.
2. The destination is a catalogue. Long spec pages about motors and encryption. There is a generic Landing Page Enquiry Form on some of them — first name, last name, phone, email, comment. It asks nothing that qualifies anyone and offers nothing in return.
3. No offer at all. Nowhere in the funnel is there a reason to give up a phone number today rather than next year.
4. 43 ads in one day is a dump, not a test. No sequencing, no holdout, no way to learn which of those good hooks is the good one.
5. Paying B2B prices for awareness. A JMB chairman's attention is expensive. They are buying it and then spending it on a spec sheet.

⚠️ A correction to our own playbook. The methodology doc said MAG has “no lead capture anywhere in the funnel.” That was wrong, and I wrote it. Their destination pages do carry a basic enquiry form plus a WhatsApp button and a phone number. The accurate version is worse for them and better for us: the ads never ask, and the form that exists qualifies nobody. Fixed in the SOP.

Their real creatives, pulled today. The production quality is good — proper photography, consistent brand, clear single message per frame. This is the asset we keep.

MAG ad: Brand X lower price vs MAG Smarter LPR
“Not about the LOWER price” — their best hook
MAG ad: your guardhouse problem is not your barrier gate
“Not your barrier gate” — reframes the category
MAG ad: AI alone does not solve guardhouse problems
“AI alone does not solve it” — anti-hype
MAG ad: what happens when internet goes down
“When internet goes down” — real fear
MAG ad: why condos replace systems after 5 years
“Why condos replace after 5 years”
MAG ad: why management keeps getting calls
“Why management keeps getting calls”
The method

Seven stages. Each one is a filter.

A serious buyer passes all seven. A price-asker falls out early, and cheaply. The order is the whole game — everything downstream can only filter what the ad brought in, never improve it.

01
Stage 1 · the filter that does the most work

The offer

Never advertise the thing they sell. Advertise a diagnosis of the buyer's problem. The test: would a tyre-kicker bother? If yes, it's the wrong offer.

❌ What MAG has now

“Learn more” → a spec page

There is no offer. The implicit ask is “read about our motor.” The best a motivated reader can do is find the phone number and start the conversation with the only question they know how to ask: how much?

Then the sales team spends its week quoting people who were never going to buy, and Jimmy concludes Meta doesn't work for B2B.

✅ What we put in

The free 45-minute guardhouse audit

An engineer comes on site during their worst traffic window, times the throughput, marks every point where a guard has to make a judgement call, and hands over a written one-page report ranked fix-first.

MAG gives away expertise, not discount. That hour is the filter. Nobody books a 7:15am site visit to be nosy.

⭐ And the move that answers Patrick's original question. The lander publishes a price floor: “a full AI guardhouse upgrade starts from RM45,000.” 🟠 placeholder

A floor filters. A quote invites haggling. Someone who fills in that form already knows it costs at least RM45k and submitted anyway — so they physically cannot open with “how much?”, because they already know. The conversation starts at scope. This is lifted from Verdant Solar, who publish a RM17,000 budget requirement on their lander and are the best-run lead-gen operation in Malaysia. 🟢 verified live

OfferWould a tyre-kicker claim it?Verdict
“Get a free quotation”Yes, instantly, and 20 others tooManufactures price-shoppers
“Download our brochure”Yes, and never reply againCosts you a lead, gains you nothing
“Contact us for pricing”Yes — it's the only question leftAnchors price before scope
“Free 45-min on-site audit at your peak hour, written report”No. It costs them a 7:15am morning and their committee's timeSelf-selects real buyers
02
Stage 2 · where lead quality is actually decided 🔵 proven on our money

The ads

On our own MDP campaign, same funnel and same targeting, the “Death Spiral” angle pulled ~71% decision-makers at ~RM9 a lead. The “Hardware vs Software” angle pulled ~33% at twice the volume for half the spend. The creative angle roughly doubled the share of real buyers, and it was cheaper. Quality is set here, before targeting, before the lander.

Same creative image. Same brand. Only the copy, the button and the destination change.
Ad 01Angle: the budget already decided
MAG
MAG Security SystemSponsored · 🌐
···
MAG Smarter LPR for AI Guardhouse
Book now
👍 Like💬 Comment↗ Share
Why it works. It doesn't create demand, it intercepts a budget that already exists. JMBs approve capex at the AGM. This ad walks into that meeting. Lifted from AntDragon's “Before you hire another developer” — the cleanest example of this angle running in Malaysia. 🟢
Ad 02Angle: the honest expert
MAG
MAG Security SystemSponsored · 🌐
···
AI alone does not solve guardhouse problems
Book now
👍 Like💬 Comment↗ Share
Why it works. Three unrelated Malaysian operators run this same move and it keeps working: JB CCTV's “customer wanted 32 cameras, we recommended 16”, Verdant Solar arguing against oversized systems, and MAG's own LPR price line. Talking the buyer down is a proven MY pattern, not a clever one-off. 🟢
Ad 03Angle: the specific loss
MAG
MAG Security SystemSponsored · 🌐
···
Why management keeps getting calls
Book now
👍 Like💬 Comment↗ Share
Why it works. Loss first, not gain. The wound is named in the buyer's own words — arrears, the 7:45am argument, the calls at night. No number is invented, because we don't have MAG's real case data yet. Once Jimmy gives us one real building's figures, this ad gets a number and gets stronger. 🟠 needs a real case
Ad 04Angle: the costly mistake · Bahasa Malaysia
MAG
MAG Security SystemSponsored · 🌐
···
Your guardhouse problem is not your barrier gate
Book now
👍 Like💬 Comment↗ Share
Why it's in Malay. Meta cannot target race in Malaysia, so language and casting are the only levers you have. Our MDP campaign proved the cost of ignoring that: the ICP was the Chinese-Malaysian owner and the ads pulled mostly Malay leads, with no ad reaching the Chinese ICP at all. 🔵 Verdant Solar runs every offer as three separate ads — Chinese, English, Malay. We copy that. So the fourth angle ships in BM, and a Mandarin cut follows.

⚠️ And the setting nobody will tell Jimmy. The “proper” Meta answer to lead quality is Conversion Leads optimisation — feed CRM stages back so Meta learns what a good lead looks like. It needs 200–250 leads a month, uploaded daily. A guardhouse business booking site visits will do 30–80. It is permanently out of reach.

So the architecture is: never optimise the campaign on the booked audit (it will sit in learning forever), optimise on the lead, control quality upstream in the creative and downstream with qualification, and keep ONE ad set. A small budget split five ways learns nothing.

03
Stage 3 · friction on purpose

The lander

This one is real and live below — scroll it, fill it in, submit it. It grades the lead and shows you what happens next. Counter-intuitive but load-bearing: make it slightly harder, not easier. Every friction point removes someone who was never going to buy.

🔒 mag-guardhouse-audit.my/?utm_source=meta&utm_content=agm-intercept

What's load-bearing on it

The eligibility gate
100+ units · you're on the JMB/MC or you're the manager · from RM45,000
Their own line as the H1
“Your guardhouse problem is not your barrier gate” is MAG's copy, already running. Continuity from ad to page.
Seven qualifying fields, not four
We benchmarked 5 live MY competitor pages: the winners ask more questions. Verdant asks nine and leads the market. 🔵
Language preference captured
Then routed to someone who actually speaks it. Almost nobody in MY does this.
“What this audit is not”
Four things stated plainly, including “we will not be the cheapest.” Repels the grinder before he costs anyone a meeting.
Real proof, no invention
41 years · 319 projects · 1,541 dealers · Malaysia Book of Records. All from their own site. 🟢

Do not shorten this form to lift opt-in. Our EP landers run ~3.5% opt-in from Meta traffic 🔵 and the temptation is always to cut fields. We audited five live competitors: page mechanics were not the leak. The levers that move it are urgency, a sharper hook, and inline over popup. A shorter form buys more leads and worse ones.

04
Stage 4 · the biggest lever after creative

Speed, and the WhatsApp thread

In Malaysia the enquiry lands at 9:47pm while the client's BD is at dinner. Whoever replies first wins by default. Under 5 minutes vs 30 minutes is a 21× difference in whether a lead qualifies, and 78% buy from whoever answers first. Speed is not a nicety, it is the product.

What the thread is doing, message by message

28 seconds. The first reply is automated and goes out day or night. It does not sell. It acknowledges, names the building back, and asks the first qualifying question.
Two questions, not seven. Lanes and peak time. Both are things only a real committee member knows, and both are needed to scope the visit.
No budget question. Deliberate. In Malaysian B2B, asking budget in the first three messages reads as sizing them up to charge more. The floor was already published on the lander, so it's handled. Budget comes out at the audit, with a human in the room.
The handoff is marked. Once the lead grades HOT, a named human takes over. The AI never pretends to be Ivan.
Two slots, never an open calendar. “Tuesday 7:15am or Thursday 6:15pm?” beats “when suits you?” every time.
They must reply to confirm. A tap-to-confirm micro-commitment cuts no-shows a further 15–25% over a one-way blast.
The engineer's plate number. Tiny detail, real effect: the guard lets him in without phoning the chairman, so the audit starts on time.

⚠️ The WhatsApp rule that bites. A form submission is business-initiated, so that 28-second reply must go as an approved Utility template, not a marketing one. We have already hit Meta's marketing-category cap once on the EP account. 🔵 The moment the lead replies, the 24-hour service window opens and everything after that is free text.

The same first message, routed by the language they picked on the form. Not a translation of one English ad — a different person answering.

English→ Ivan
Evening Mr Tan 👋 Ivan here from the MAG guardhouse team. Got your audit request for Sri Pelangi Condominium. Before I check the engineer's diary, two quick ones: 1. How many lanes at your entrance, in and out? 2. What time is your worst jam on a weekday?
Bahasa Malaysia→ Faizal
Selamat malam Puan 👋 Faizal dari team guardhouse MAG. Dah terima permohonan audit untuk Sri Pelangi Condominium. Sebelum saya check jadual jurutera, dua soalan cepat: 1. Berapa lorong di pintu masuk, masuk dan keluar? 2. Waktu paling sesak hari biasa pukul berapa?
中文 / Mandarin→ Wei Ling
陈先生晚上好 👋 我是 MAG 门卫组的 Wei Ling。已收到 Sri Pelangi Condominium 的免费勘查申请。 在我查工程师档期之前,先问两个小问题: 1. 你们出入口共有几条车道?进和出? 2. 平日最塞是几点?
05
Stage 5 · four questions, in Malaysian

Qualify, and the record that lands in the CRM

Only ask what changes whether this person gets an appointment. Every extra question loses a real buyer.

The four that matter, in this order

1 · Project reality
“Is this for a project already confirmed, or still exploring?”
On the form as the timeline dropdown, so we know before the first message.
2 · Timeline
“Next AGM, this year, or just gathering information?”
The AGM answer is the money answer for a JMB.
3 · Role
“Are you deciding, or checking for someone?”
Committee member and appointed manager both score. A resident doesn't, and we say so honestly rather than wasting their morning.
4 · The one number that sizes the job
Units, and lanes at the entrance.
This decides whether it's a RM45k single-lane job or a RM150k+ two-lane one with visitor management.

What Ivan opens on his phone

Grade🔥 HOT · 8/8
NameTan Chee Meng
BuildingSri Pelangi Condominium, Setapak
RoleJMB committee member
Units601–1,000
Current systemLPR camera, over 5 years old
TimelineBudget already approved, moving now
LanguageEnglish
Entrance2 in, 1 out · double peak 7:30–8:30am and 6:30pm
Their words“Guard override almost every morning la. Residents complain also”
Came fromutm_content = agm-intercept

The attribution line is the retention argument. Without utm_content on every lead we cannot tell Jimmy which angle produced the closed deal, and that is the whole reason he renews. Note: our custom ad_name / ad_id fields come through empty in GHL — the path that actually works is native attributionSourceutmContent. 🔵 learned the hard way

Grading rules we paid to learn. A blank optional field is not junk — people skip fields for privacy, and we over-junked once. An unfamiliar name is not junk — our classifier binned Sabah and Sarawak Bumiputera names as “foreign” and threw away two real leads at real Sdn Bhds. A typo'd phone is not junk — real name plus company email means check their website for the right number first; we rescued a genuine CEO that way. Junk only when someone actively puts garbage in. And grade hot / warm / cold, never a binary — the middle is where the follow-up money is. 🔵

06
Stage 6 · the unit we actually deliver

The booked audit

We sell booked site visits. Not form fills, not phone numbers, not “leads”. That is the whole commercial argument and it has to be enforced in the flow, not just in the pitch.

Two slots, inside the chat

The booking link never goes by email — nobody in this market opens it. Two concrete times offered in the WhatsApp thread, and one of them is deliberately at their peak hour, because that's when the audit is worth anything.

They reply to confirm

Not just receive. A one-character reply is a micro-commitment, and it's worth another 15–25% off the no-show rate versus a one-way blast.

Two calendars, one opportunity

It lands in the engineer's calendar and as a GHL opportunity at stage Audit Booked, valued at the RM45k floor so the pipeline number means something. Jimmy and we see the same board.

⚠️ Put the client-side SLA in the contract, with a named person. If MAG's engineers let booked audits rot, our numbers look fine and Jimmy's result looks terrible — and we get fired for a campaign that was working. This has bitten us before with a partner's punctuality. Day 45 gate: is their team actually attending the visits we booked?

07
Stage 7 · an appointment nobody attends is not a lead

Show up

Our own MDP webinar hit 61% show-up on 130 signups 🔵 — well above the norm. And seniority did not predict turnout: Owner 62%, C-Suite 63%, Staff 67%, Manager 50%. Do not assume senior people show up more. They don't. Run the full chain on everyone.

60-70%
fewer no-shows from confirm + 24h + 2h, the full chain
~60%
from two reminders
~20%
from one reminder. The second reminder does most of the work.
~98%
WhatsApp open rate, on par with SMS

Media on the important beats, never text-only. Text-only scrolls past on Malaysian WhatsApp. The −24h reminder carries a photo of the engineer, and the report delivery carries the actual PDF. 🔵

And if they no-show, do not bin them. Rebook once, automatically, in the same thread. A no-show is a scheduling failure far more often than an interest failure.

The message flow · WhatsApp carries it, email backs it up

Every message, in order

WhatsApp does the work in this market. Email exists for the two jobs WhatsApp is bad at: attachments a committee can forward, and a paper trail. Click any row.

+28 sec
The 28-second WhatsApp replyEvening Mr Tan 👋 Ivan here from the MAG guardhouse team…
WhatsApp
Evening Mr Tan 👋 Ivan here from the MAG guardhouse team. Got your audit request for Sri Pelangi Condominium. Before I check the engineer's diary, two quick ones: 1. How many lanes at your entrance, in and out? 2. What time is your worst jam on a weekday?
Why: goes out as an approved Utility template because we initiated it. It acknowledges, names the building back so it doesn't read like a bot, and asks the first qualifying question. It does not sell anything.
+2 min
Your guardhouse audit — what to have readyOne page, so the 45 minutes actually count…
Email
Subject: Your guardhouse audit — what to have ready Mr Tan, Your audit request for Sri Pelangi Condominium is in. I'll confirm a slot on WhatsApp shortly. So the 45 minutes actually counts, three things help if you can find them: 1. Your last service report from your current LPR supplier 2. Roughly how many units are behind on maintenance fees — a range is fine, we don't need names 3. Anyone from the committee who'll be in the decision. Bring them. An audit with three committee members in the room is worth five without. What happens on the day: our engineer stands at your entrance through your peak window with a stopwatch. He counts cars, times each manual decision, and marks every point where your guard has to make a judgement call. You get one page, ranked by what stops the most complaints per ringgit. If the honest answer is that your entrance is fine, that's what the page will say. Ivan Loh MAG guardhouse team · +6011 3133 9143
Why: this is the first thing that makes MAG look different. It asks the buyer to prepare, which raises perceived value and doubles as more qualification. And it repeats the “we'll tell you if you're fine” promise, so the promise is now in writing.
Same night
Two slots → locked🅐 Tue 12 Aug 7:15am · 🅑 Thu 14 Aug 6:15pm — reply A or B
WhatsApp
Right, that's the one we see most. The camera still reads fine — nothing enforces the rule, so your guard becomes the rule. That's exactly what the audit measures. Two slots open: 🅐 Tue 12 Aug, 7:15am — at your morning peak, best for this 🅑 Thu 14 Aug, 6:15pm — evening peak Reply A or B and I'll lock it in.
Why: two options, not a calendar link. One is deliberately at the peak hour because that's when the audit is worth anything. The single-character reply is the micro-commitment.
−24 h
Tomorrow 7:15am — Ivan's detailsWhite Hilux, WVX 8842. Please tell your guard 🙏
WhatsApp
Morning Mr Tan 🙏 Reminder for tomorrow, Tue 12 Aug, 7:15am at Sri Pelangi guardhouse. Engineer: Ivan Loh — white Hilux, WVX 8842. Please tell your guard so he doesn't get stopped 😅 [photo of engineer] Anything changed on your side? Just reply here.
Why: the second reminder does most of the no-show reduction, and this one carries a photo because text-only scrolls past. The plate number is a small thing that stops the audit starting late.
−2 h
On the wayIvan's leaving Cheras now, ETA 7:10am
WhatsApp
Ivan's leaving Cheras now — ETA 7:10am at your guardhouse. See you shortly 👍
Why: short on purpose. This one exists to catch the person who forgot, at the last moment when they can still act on it.
+3 h after
Your Sri Pelangi guardhouse audit — the one pagePDF attached. Fix #1 costs you nothing.
Email
Subject: Your Sri Pelangi guardhouse audit — the one page Mr Tan, Thanks for the early morning. Report attached — yours to keep, forward it to the committee freely. The short version of what we counted between 7:15 and 8:00am: • 61 cars in. 23 of them were waved through manually — that's 38%. • Average manual decision: 41 seconds. Longest: 2 min 18 sec. • Peak queue reached 9 cars, backing onto the main road. • 4 of the 23 overrides were units your own system had already flagged. Fix-first, in order: 1. Free. Change the override rule so the guard cannot lift the boom for a flagged plate — it goes to the manager's phone instead. Takes the decision off a RM1,800-a-month guard and off your entrance. Costs a committee resolution, nothing else. 2. RM__k. Enforcement layer on your existing camera. Your LPR still reads plates fine — it just can't act on what it reads. 3. RM__k. Bay enforcement, if the parking complaints are the bigger fight. You do not need a new barrier gate. Yours has years left. Happy to walk the committee through this on a call if it helps. If you'd rather take the page and do nothing, that's completely fine too. Ivan Loh MAG guardhouse team
Why this email is the whole strategy. It keeps the promise — a real written report with real counted numbers. It recommends the free fix first and says out loud that they don't need a new gate, which is the honest-expert angle actually delivered instead of just advertised. That is what earns the RM45k+ job later, and what makes this building recommend MAG to the next JMB. 🟠 numbers illustrative
No-show
Missed you this morning — Thursday instead?Rebook once, automatically, same thread
WhatsApp
Morning Mr Tan — we were at your guardhouse at 7:15 but couldn't reach you. No problem at all, mornings are mornings 🙏 Ivan's next free peak slot is Thu 14 Aug, 7:15am. Want me to hold it?
Why: no guilt, no “as per our appointment”, and one rebook attempt only. A no-show is a scheduling failure far more often than an interest failure — but chasing twice turns a warm lead cold.
The automation · GoHighLevel, Fastcom sub-account

What we actually build

Node by node. This is the shape we'd build in GHL — not built yet, this is the spec. Written this way so Steven can build it and Jimmy can see there's no magic in it.

Triggert = 0
Form submitted — “MAG Guardhouse Audit”

Inline form on the lander, not a Meta instant form. We want the page to do the filtering.

namephonebuildingroleunitssystem_agetimelinelang
Action+0s
Capture attribution, then tag

Read native attributionSource.utmContent for the ad angle. Our own custom ad_name/ad_id fields arrive empty — do not rely on them.

src-metaangle-agm-interceptlang-enmag-audit
If / else+0s
Grade the lead

Score on role, units, timeline and system age. Never junk on a blank field, never junk on an unfamiliar name.

🔥 Hot / warm

Committee or manager, 100+ units, decided or going to AGM → straight to the human path.

❄ Cold

Resident, under 100 units, or “just gathering info” → same first reply, no chasing, monthly nurture. Not binned.

Action+28 sec
WhatsApp — first reply, in their language

Routes on the lang tag to Ivan (EN), Faizal (BM) or Wei Ling (中文).

⚠️ Category matters. We initiated this, so it must be an approved Utility template. Sending it as Marketing risks the 131049 cap we already hit once on the EP account. Their reply opens the 24-hour service window; everything after is free text.
Action+2 min
Email — the audit prep sheet

Backs up WhatsApp with something a committee can forward. Also raises perceived value by asking them to prepare.

Action+2 min
Notify the human

Internal WhatsApp to whoever owns that language, carrying the full lead card. Hot leads also get a phone-call task due within the hour.

Waitup to 24 h
Wait for their reply
They replied

Service window is open. Human continues, offers two slots, books.

Silence at 24 h

One follow-up nudge, then a phone call from a human. Never a third automated message — that's how a number gets reported.

Bookedthe unit
Appointment → opportunity → two calendars

Creates a GHL opportunity at stage Audit Booked valued at the RM45k floor, drops the visit into the engineer's calendar, and emails a forwardable invite to the committee.

stage: Audit Bookedvalue: RM45,000 🟠
Action−24 h · −2 h
The reminder chain

−24h WhatsApp with the engineer's photo and plate number. −2h “on the way”. −30min internal nudge to the engineer himself, because our SLA is also our problem.

If / elseday of
Did the audit actually happen?
Attended

Stage → Audit Done. Task on the engineer: report out within 24 hours. This is the promise; it does not get to slip.

No-show

One automatic rebook in the same thread. If that's ignored, it goes to monthly nurture — not to the bin.

Delivered+3 h
Report out → stage Report Delivered → 3-day follow-up

The PDF is the deliverable and the sales asset. Three days later, one human message: any questions from the committee?

Never
What we deliberately do NOT wire up

We never send the booked-audit event back to Meta as the optimisation target. At 30–80 leads a month the campaign would sit in learning forever and burn the budget. Meta optimises on the lead. Quality is controlled in the creative and by this workflow — not by the algorithm.

📊
What Jimmy sees every Monday

The scoreboard

Readable in 60 seconds. He sees exactly the same numbers we do. Shape shown with 🟠 illustrative figures — the real ones start in week one.

MAG Security · guardhouse auditsWeek 3 · 18–24 Aug 2026 🟠
Booked audits
6
↑ 2 vs last week
Cost per booked audit
RM 168
band agreed: RM120–250
Show-up rate
67%
4 of 6 · ours to fix
Qualified rate
52%
hot+warm ÷ leads · gate is 40%
Speed to first reply
31 s
median · SLA 60s
Sub-line, never the headline: 23 leads · RM1,008 spend · CPL RM43.8 · best angle agm-intercept (4 of 6 bookings)

Why CPL is not the score

If we report CPL as the headline, Jimmy will push us to lower it — and lowering CPL is exactly how you rebuild the price-shopper machine. Our own data says so plainly: the cheap high-volume angle delivered half the decision-maker share. 🔵

Cost per booked audit is the real efficiency number. It can go up while the business gets better, and the report has to make that legible.

The gates

Day 14Leads flowing, qualified rate above 40%? → Kill the losing angle. Don't touch targeting yet.
Day 30Cost per booked audit inside the band? → Rework the offer, not the audience.
Day 45Are MAG's engineers actually attending? → ⚠️ Escalate. #1 way a working campaign gets blamed.
Day 90Pipeline value vs spend → Go / no-go.
💰
The economics · move the sliders yourself

What it costs and what it has to produce

Nobody knows MAG's real numbers yet, including me. So instead of asserting a projection, here are the assumptions as sliders. Every default is a guess 🟠 except the two anchored to our own campaigns 🔵. Move them and see what has to be true for this to work.

RM 4,000

🟠 Jimmy's number, not ours. They already spend on 43 ads — we don't know how much.

RM 45

🟠 Unknown for this category in MY. Anchor: our MDP webinar signups ran ~RM9 🔵 — a JMB committee member is a much narrower, more expensive audience, so expect multiples of that.

28%

🟠 The number the whole method is designed to move. Real figure lands in week 2.

61%

🔵 Defaulted to 61% — what we actually measured on the MDP webinar with the full reminder chain. The most defensible number on this page.

20%

🟠 MAG's close rate off a site visit. Only Jimmy knows this. It is the single biggest unknown here.

RM 65,000

🟠 Above the RM45k published floor, since most condo jobs land higher. Needs their real average.

RM 8,000

🟠 The RM8k/mo rung of the ladder, client funds ad spend separately.

Leads / month89
Booked auditsthis is what we sell25
Audits actually attended15
Cost per booked auditad spend + retainer ÷ bookingsRM 480
Sales / month3.0
Revenue / monthRM 197k
Return on total spend16.5×

⚠️ Read this before you believe the big green number. It is the product of five guesses multiplied together. Move “audits that become a sale” from 20% to 8% and it collapses. That's not a flaw in the model, it's the actual state of our knowledge: MAG's close rate off a site visit is the one number that decides whether this account is worth running, and we don't have it.

Also: on a 3–6 month B2B cycle, months 1 and 2 will show no closed revenue at all. That has to be in the contract or we get fired at day 60 for a campaign that is working. Report booked audits and pipeline value, not closed sales, until month 3.

What it costs Jimmy to find out

Month 1RM5,000 setup + build 🟠
Lander, form, GHL workflow, WhatsApp templates approved, 4 ads live, tracking green.
Month 2 onRM8,000/mo retainer 🟠 + ad spend paid direct to Meta
The honest pitchOne month, one offer, one ad set, four angles. By day 30 he has a real cost per booked audit for his own business — a number that does not currently exist anywhere in Malaysia for this category. If it's bad, he stops and he still owns the lander, the workflow and the number.
What's missing

Five numbers only Jimmy has

Everything above is built. These are the inputs that turn the 🟠 placeholders into real ones — and the first four are questions no other agency will ask him, which is most of why the meeting goes well.

1
The price floor. What is the cheapest real AI guardhouse job you'd take?

Everything hangs off this. It goes on the lander, in all four ads, and it is the single filter that kills price-shoppers. RM45,000 is my placeholder and it is a guess.

2
Your close rate off a site visit.

Out of ten site visits your engineers attend, how many end in an order? This decides whether the whole account is worth running, and it's the number the model is most sensitive to.

3
Average job value, split single-lane vs two-lane.

So we can score leads on the entrance layout instead of guessing from unit count.

4
How many audits a month can you actually staff?

The scarcity line on the lander says eight. If the truth is three, the ads have to say three — otherwise we book more than MAG can attend and the day-45 gate fails on their side.

5
One real building's numbers, for the loss ad.

A condo where the overrides and arrears were counted. That turns Ad 03 from a good hook into an undeniable one. Anonymised is fine.

What to actually do in the meeting. Open the Ad Library on a phone, filter to their page, and scroll the 43 ads with him. Point at the three that say {{product.name}}. Then open the lander on the same phone. The gap between those two screens is the entire sale, and neither of them is an opinion.