The group had everything except the one thing that scales: a system.Premium hospitals, a real audience of Indonesian patients seeking specialist care abroad— and no engine to reach and convert them across three brands at once.
In about 90 days we built that engine on Meta — from zero: a campaign architecture mapping each hospital to the cities most likely to produce its patients, an audience model that split intent into separate streams, and a bilingual creative-and-capture layer that qualified every lead before a human stepped in. The system got cheaper every month — cost per lead fell 70%, weekly volume held roughly 5× on the same budget, and the group kept the machine.
Meet the group.
The client is a leading Southeast Asian hospital group operating several hospital brands, with its Malaysian hospitals at the center of this engagement — each with its own positioning, catchment, and ideal patient, from a flagship general hospital to an ultra-premium brand for high-income patients. Their target market sat across the strait: Indonesians who travel abroad for specialist treatment they can’t easily get at home, weighing a real health concern with real financial and emotional stakes.
That demand was already in the market. What the group lacked was a way to meet it at scale — to put the right hospital in front of the right patient, in their own language, at the moment they were searching. Paid media for a multi-brand group is a different problem from a single-location business: three hospitals meant three positionings, three catchments, and three very different patients, all competing for the same budget if you run them as one.
A strong product. No system to reach the right patients at scale.
Paid media brings cold, high-stakes patients who are weighing a health decision — not casual browsers. The structure the group was inside wasn’t built for that job. Four constraints defined the starting line.
- One blanket campaign couldn’t serve many hospitals. Each brand had distinct positioning, geography, and patient profile. A single Indonesia-wide approach either duplicated spend across brands or wasted it on the wrong audience for the wrong hospital.
- The audience was high-intent and high-stakes — not casual. These patients are weighing a health concern that carries real emotional and financial weight. The wrong message at the wrong moment loses them, and one funnel could never speak to three different levels of intent at once.
- Broad targeting leaked budget. With no exclusion system, the same low-intent people were served ads repeatedly while fresh prospects went untouched — spend burning on audiences that were never going to convert.
- No clean capture, so leads stalled. Inquiries had no structured intake. Leads went cold before the coordination team could act on them, and nothing pre-qualified them before a human had to step in.
Where the group stood
The patients were already there, already searching, already willing to travel for care. This was never a demand problem — it was a system problem. Our whole job was to build the engine the demand had been waiting for.Growth Director, GTMLab
Three systems, built to reinforce each other.
We built three things in parallel and bound them with a weekly testing loop. An architecture that mapped each hospital to the cities most likely to produce its patients. An audience model that split intent into separate streams and kept removing the people already won. And a creative-and-capture layer that spoke the patient’s language and qualified them before any agent intervened. Each decision had to earn its place week over week — the way capital is defended a dollar at a time.
1 Map each hospital to the cities that actually produce its patients.
Relevance is local. A blanket Indonesia-wide blast treats three hospitals as one product and pays to reach people the wrong hospital can’t serve. So we ran separate campaigns per brand, each weighted to the cities most likely to produce its patients — by proximity, flight routes, and existing patient patterns. A patient in Surabaya sees what’s reachable from East Java; a patient in Medan sees what’s reachable from North Sumatra.
- Separate parallel campaigns for each hospital brand, not one shared account
- Each brand weighted to its highest-yield Indonesian cities by geography and travel routes
- Spend concentrated where proximity and intent overlapped, not spread evenly
- The architecture became the foundation every audience and creative decision sat on
2 Split intent into streams — and keep removing the people you’ve already won.
One funnel can’t speak to three levels of intent. So each hospital ran three audience streams — health awareness, treatment intent, and an upper-class stream for the ultra-premium brand — each with its own creative and path. The compounding move was exclusion: every new batch of leads was fed back as an audience to remove, so budget stayed on fresh prospects instead of re-serving people already converted. That single discipline drove most of the efficiency gain.
- Three parallel intent streams per hospital — awareness, treatment intent, and upper-class
- A continuous exclusion engine: converted leads removed from targeting in rolling batches
- Budget kept on unconverted prospects, preventing the fatigue that quietly inflates cost per lead
- A core driver of the 70% cost-per-lead drop and the 75% drop in cost per thousand impressions
3 Speak the patient’s language — and qualify before a human steps in.
Language isn’t a translation step; it’s a conversion variable. We tested English against Bahasa Indonesia, and Bahasa won decisively — it became the primary creative language, with messaging written per specialty rather than a generic healthcare tone. On the capture side, a bilingual intake form on the WhatsApp coordination layer captured name, hospital, doctor, and appointment type before any agent intervened — cutting time-to-first-contact and pre-qualifying every lead.
- English vs Bahasa tested head-to-head; Bahasa won and became the account’s primary language
- Specialty-specific messaging for cardiology, oncology, neurology, and screening
- An automated WhatsApp intake captured and pre-qualified every lead before a human stepped in
- Winning angles graduated into the always-on set weekly; weak ones were dropped
One group, three patient mindsets, three different fears.
This is the high-level cut. The working breakdown is roughly 10× more nuanced — each segment splits into sub-cells (intent, lead-time, price tier, branch, geo) with a separate landing page, ad-set structure, and funnel custom-built per cell. The table below is the map, not the territory.
| Patient group | Friction | Intervention |
|---|---|---|
| Health awarenessTop of funnel · not yet in treatment mode | “Why travel abroad at all? Why this country, why this group?” | Wellness and prevention messaging that educates on why Malaysia and this group specifically — warming health-conscious people for later retargeting rather than pushing a procedure too early. |
| Treatment intentActively seeking a specialist or procedure | “Can they actually treat my condition? Can I trust them with it?” | Bahasa-first, specialty-specific creative speaking directly to the condition — cardiology, oncology, neurology, screening — with reassurance on capability, routed into the WhatsApp intake. |
| Upper classUltra-premium brand · high-income | “Is this the standard of care I expect? Will my insurance work?” | Premium-positioned angle with a higher bar for trust signals and insurance-friendly messaging, built for a high-income segment with distinct media habits. |
From scattered spend to a system that compounds.
Execution detail is generalized to protect the engagement playbook — the principle is shown, the verbatim build stays internal.
| Dimension | Before | After |
|---|---|---|
| Campaign structure | One blanket Indonesia-wide campaign | Hospital-specific campaigns, mapped city by city to highest-yield catchments |
| Audience model | Broad targeting, no exclusions | Three intent streams per brand + a continuous exclusion engine |
| Creative language | English-default, generic healthcare tone | Bahasa-first, specialty-specific messaging per condition |
| Lead capture | Unstructured inquiries that stalled | Automated WhatsApp intake that pre-qualifies before a human steps in |
| Efficiency | High, drifting cost per lead | Cost per lead −70%, cost per thousand impressions −75% |
From cold impression to pre-qualified inquiry.
The system mapped to the full journey from a first impression to a coordination-ready inquiry — with the intake engineered to pre-qualify the lead before a human ever stepped in. The last stage, the booked appointment, is where the next build goes (see the honesty note below).
A repeatable path from impression to booked patient.
Performance improved every month as the architecture matured, creative was refined, and exclusions cut wasted spend. The shift wasn’t just more leads — it was a cheaper, repeatable system the group now owns.
The honest gap: we drove cost per lead down 70%, but we still can’t trace a single lead end-to-end to a booked patient — full-journey attribution from inquiry to appointment is the next piece of infrastructure to build, and until it ships the true cost-per-patient stays an estimate.
Four principles that earned their place.
Language is a conversion variable, not a translation step.
Bahasa Indonesia creative beat English decisively and became the primary language for the whole account — with copy written for local medical-travel considerations, not a globally generic tone. Audiences convert on communication that reflects their own context. Test language as a variable; don’t assume the default.
Exclusion matters as much as targeting.
Feeding every batch of converted leads back as an exclusion audience kept budget on fresh prospects and prevented fatigue — a core driver of the 70% cost-per-lead drop and the 75% drop in CPM. Most accounts obsess over who to target and ignore who to stop paying to reach.
Purchasing power predicts genuine intent.
High-income geography delivered stronger lead quality and conversion than broad or outer-island targeting, and at the specialty level the top segment out-produced the weakest by 15× on comparable budgets. Where you spend matters as much as how much — concentration beats breadth.
A multi-brand group needs many engines, not one blanket campaign.
Three hospitals meant three positionings, three catchments, three patients. Run as one, they outbid each other and waste spend; run as a mapped architecture, each brand reaches the cities that actually produce its patients — and one system scaled weekly volume ~5× without a matching rise in budget.
Ninety days in, the group no longer has a demand problem or a system problem — it owns a cross-border patient engine that gets cheaper as it scales.
The next milestone is full-journey attribution: tracing each pre-qualified inquiry through to a booked appointment, so cost-per-patient is measured, not estimated. That’s how the partnership works — we take ownership of the system that fills the funnel, the group owns the care that closes it, and we hand back a machine that compounds. The demand was always there. Now there’s an engine built to meet it.
Book a strategy call →