Luxury private villa with infinity pool in Bali at golden hour

Hospitality — Bali, Indonesia

Bali Sands — from brochure to booking channel.

A premium villa-management company with 80+ properties across Canggu, Pererenan, Seminyak, Uluwatu, Ubud and Sanur — bringing owners' villas to market and filling their calendars.

Client
Bali Sands Management — bali-sands.com
Industry
Villa management & short-term rental
Channels
Meta & Instagram — full funnel
Scope
Paid social, creative, retargeting
+0%Direct monthly reservations over the engagement
0.0xReturn on paid social spend, measured on direct bookings
−0%Reservation volume dependent on OTA commissions
Direct reservations per month — from a standing start of 128/month at takeover
Direct monthly reservations across eight months0120240360480M1M5M8402 /moDirect reservations / month
Bali Sands — paid social view, month 8
Spend — M8
$23.5k
▲ scaled on proof
Direct bookings
402
▲ 3.1x vs M1
Cost per booking
$58.46
▼ 27% vs M1
Owner leads
96
▲ villa acquisition
CampaignSpendROASCPA / CPLResults
Prospecting — Canggu & Uluwatu villas$9,4005.60x$46.08204 bookings
Prospecting — Ubud honeymoon stays$6,1004.40x$52.59116 bookings
Retargeting — Engaged 14d$4,2007.30x$51.2282 bookings
Owners — Villa acquisition (leads)$3,800—$39.58 /lead96 leads
Month 8 total$23,5004.69x$58.46402 + 96

The working view

Month eight — the direct-booking engine.

No Google in this engagement — the mandate was paid social only. Everything below reconciles to $23,500 of spend, 402 direct reservations and 96 owner leads.

adsmanager.facebook.com/adsmanager/manage/campaigns?act=452880173
Ads Manager
Bali Sands Management · act_452880173
1 – 31 Aug 2026Export ▾
Campaigns · 4Ad sets · 11Ads · 26
+ CreateDuplicateEdit A/B test🔍 Search and filter Columns: Performance ▾Breakdown ▾
CampaignDeliveryBudget ResultsReachImpressions Cost per resultAmount spentPurchase ROAS
BSM · Prospecting — Canggu & Uluwatu
Sales · Broad · AU/SG/EU
ActiveSales
$313/day
204 bookings1,842,0064,208,114$46.08$9,4005.60
BSM · Prospecting — Ubud honeymoon stays
Sales · Broad · AU/EU/US
ActiveSales
$203/day
116 bookings1,208,4402,714,882$52.59$6,1004.40
BSM · Retargeting — Engaged 14d
Sales · Custom audience · video + site
ActiveSales
$140/day
82 bookings184,2101,442,006$51.22$4,2007.30
BSM · Owners — Villa acquisition (leads)
Leads · Broad · ID/AU/SG
ActiveSales
$127/day
96 leads402,8841,108,442$39.58 /lead$3,800—
Results from 4 campaigns$783/day402 bookings3,318,9049,473,444$58.46 /booking$23,5004.69
Direct-booking engine · ROAS measured on the client's net revenue share of direct reservations, not gross booking value · Attribution setting: 7-day click, 1-day view · $ reporting currency

Meta Ads Manager — month 8Three booking campaigns and one owner-acquisition lane running side by side out of the same $23,500.

→ swipe the panel sideways to see every column

adsmanager.facebook.com/adsmanager/manage/adsets?act=452880173
Ads Manager
Bali Sands Management · act_452880173
1 – 31 Aug 2026Export ▾
CampaignsAd setsAds
+ CreateDuplicateEdit A/B test🔍 Search and filter Columns: Delivery ▾Breakdown: Placement ▾
Ad setDeliveryBudget PurchasesFrequencyCPM Cost per purchaseAmount spentROAS
Canggu surf-trip — AU 25–44
Broad · Australia · 25–44
ActiveSales
$164/day
1181.42$6.10$41.86$4,9406.10
Uluwatu cliff villas — SG/EU
Broad · Singapore, EU · 28–50
ActiveSales
$149/day
861.31$6.84$51.86$4,4605.00
Ubud honeymoon — AU/EU/US
Broad · 26–42 · engaged couples
ActiveSales
$203/day
1161.28$6.72$52.59$6,1004.40
RT — Viewed a villa page, 14d
Custom audience · 186,440 people
ActiveSales
$97/day
617.84$5.94$47.70$2,9107.80
RT — Watched 50% of a villa reel
Custom audience · video engagers
ActiveSales
$43/day
216.12$6.31$61.43$1,2906.10
Owners — villa acquisition, ID/AU
Broad · property owners · 30–60
ActiveSales
$127/day
961.84$3.43$39.58$3,800—
Results from 6 ad sets$783/day4982.96$6.28$47.19$23,5004.69
Learning phase exited on all delivering ad sets · Budget scheduling: none · Bid strategy: Highest volume

Ad-set level — micro-market splitCanggu, Uluwatu and Ubud are three different guests. Splitting them at ad-set level is what made the creative honest.

→ swipe the panel sideways to see every column

Two businesses, one account

Filling villas and finding villas.

The fourth card is the one we killed. A price-led hook produced the best CTR of the account and the worst guest: shorter stays, more cancellations, more support load. Cheap clicks are not cheap.

BS
Bali SandsSponsored ·
···
Book the villa directly. Same nights, no platform fee, better rate.
Bali Sands advertising creative Angle · Direct booking
The pool is yours. All of it.
BALI-SANDS.COMPrivate villas — Canggu
Book now
3.06%
CTR
$46.08
CPA
5.6x
ROAS
Scaled — best performer
BS
Bali SandsSponsored ·
···
Two people, one valley, and nobody else within three hundred metres.
Bali Sands advertising creative Angle · Honeymoon
Nobody else. For six days.
BALI-SANDS.COMUbud honeymoon villas
Check dates
2.44%
CTR
$52.59
CPA
4.4x
ROAS
Scaled — Ubud lane
BS
Bali SandsSponsored ·
···
Your villa is empty 140 nights a year. We fill them and you keep the guest.
Bali Sands advertising creative Angle · Owner acquisition
140 empty nights. Fixed.
BALI-SANDS.COMList your villa with us
Learn more
1.71%
CTR
$39.58
CPL
96
LEADS
Scaled — second business line
BS
Bali SandsSponsored ·
···
Villas from $189 a night. Limited availability this September.
Bali Sands advertising creative Test · Price-led
From $189 / night.
BALI-SANDS.COMSeptember availability
Book now
3.88%
CTR
$74.20
CPA
2.1x
ROAS
Killed — cheap clicks, wrong guest

What we tested

Eight months of verdicts.

TestHypothesisSpentResultVerdict
Micro-market split (Canggu / Uluwatu / Ubud)Three destinations are three different guests$18,400−26% cost per bookingWON
Price-led hook “from $189/night”Price cuts the cost per booking$5,900Best CTR, worst guest — killedLOST
Cinematic villa reels vs photo carouselsMotion sells a space photos cannot$12,100Reels −34% CPAWON
14-day retargeting into direct booking flowTravel decisions close inside two weeks$9,2007.3x on the laneWON
Owner-acquisition lane, always onThe supply side is also a paid-media problem$21,60096 leads/mo at $39.58WON
WhatsApp enquiry vs direct booking formA chat step lifts conversion in this market$4,400+18% enquiry-to-bookingWON
Broad vs travel-interest stacksBroad finds travellers cheaper$7,800Broad −15% CPAWON

Before Orvalis

  • Social as a brochure — pretty, but booking nothing
  • Occupancy dependent on OTA listings and their commissions
  • No retargeting of engaged travellers
  • Guest relationships owned by the platforms
  • One creative language for six very different destinations

After the engagement

  • Social as the #1 direct-reservation channel
  • −38% OTA dependence — commissions kept by owners
  • Full-funnel retargeting into the direct booking flow
  • Guest database owned by the client, compounding
  • Four destination lanes, each with its own guest and angle

The problem

Bali Sands manages villas as assets — their owners are paid from performance. Occupancy was strong, but too much of it arrived through Airbnb and Booking listings that charge commission on every night and own the guest relationship. Social media existed as a brochure, not as a booking channel.

What we did

We rebuilt paid social as a direct-reservation engine. Cinematic villa reels and property-story creatives fed a full-funnel Meta structure: broad prospecting into the strongest micro-markets, then retargeting engaged viewers straight into the direct booking flow. Every villa got a creative angle matched to its guest profile — surf trips in Canggu and Uluwatu, honeymoon stays in Ubud, family groups in Sanur and Seminyak.

A second lane ran continuously for the other half of the business: villa-owner acquisition. Supply is a media-buying problem too, and at $39.58 a lead it is a far cheaper one than most operators assume.

What happened

Direct monthly reservations grew from 128 to over 400 in eight months — a 3.1x multiple — while the share of nights arriving through commission-charging OTA channels fell by 38%. Each direct booking keeps the commission in the owner's pocket and the guest in the client's database, which compounds: repeat stays now start from an owned audience, not a rented one.

Eight months

From brochure to booking channel.

Months 1–2

Stop posting, start buying

Cinematic villa reels replaced the photo feed. Tracking rebuilt around the direct booking flow, not page views.

Months 3–4

Split the destinations

Canggu surf trips, Uluwatu cliff stays, Ubud honeymoons, Sanur families — four guests, four creative languages.

Months 5–6

Close the loop

Retargeting pushed engaged travellers into the direct flow. Guest database starts compounding instead of belonging to a platform.

Months 7–8

Fix the supply side too

An always-on owner-acquisition lane at $39.58 a lead — because more villas is also a media-buying problem.

Where the bookings came from

Month eight.

Direct reservations by destination

Canggu & Pererenan118 bookings
Ubud116 bookings
Uluwatu86 bookings
Seminyak48 bookings
Sanur34 bookings
Australia38%
Singapore & SE Asia21%
Europe24%
United States11%
Other6%

Top: reservations by destination. Bottom: guests by source market.

Reservation channel mix — month 8 vs takeover
47%NOW DIRECT, PAID
Direct — paid social47%
OTA platforms34%
Direct — organic & repeat13%
Agents & other6%
At takeover:  OTA platforms carried 72% of nights. Eight months later they carry 34% — and every night that moved across keeps its commission with the owner and its guest in the client's database.

Within a quarter, social went from a brochure to a booking channel. Direct reservations tripled.

Bali Sands Management
Next case studyVelmora
→

Next step

Tell us what you are trying to scale.

A short note about your brand, your market and your current monthly ad spend is enough. We reply within one business day — by email only.

Book a strategy call Use the contact form