An operator running a small group of villas in Bali came to us with a number that made the problem obvious immediately: 22% of every booking's revenue was going to online travel agency commissions, and that share had been rising for three years straight, not falling. This direct booking case study is about how they clawed back roughly a third of their reservations to a channel where they kept the full margin, without blowing up the OTA relationship that still brought them most of their new guests.

The instinct in situations like this is to declare independence from OTAs entirely. That instinct is almost always wrong, and it was wrong here too. OTAs were doing something the villa operator could not replicate cheaply: putting the property in front of travelers who had never heard of it. The actual opportunity wasn't replacing OTAs, it was stopping the bleed on guests who already knew the brand and would happily book direct if given an easy, trustworthy way to do it.

The Real Problem Was Repeat Guests, Not New Discovery

We pulled the booking data and split it two ways: first-time bookings and repeat bookings. First-time bookings were overwhelmingly OTA-sourced, which made sense, discovery is what OTAs are for. But repeat bookings, guests who had stayed before and were coming back, were also going through the OTA at nearly the same rate as first-timers.

That was the actual leak. A guest who already trusted the property, already had the operator's WhatsApp number from their last stay, was still opening Booking.com or Agoda out of habit because that's where they'd booked the first time and there was no clear alternative offered to them. Every one of those bookings cost the operator 15-20% in commission for zero additional discovery value. The OTA had already done its job for that guest a year earlier.

What We Built

The fix wasn't a big platform. It was a narrow, trust-focused direct channel aimed specifically at guests who already had a relationship with the property.

  1. A simple direct booking page, not a full OTA clone. Real-time availability synced from the same calendar used for OTA listings (avoiding double-booking was non-negotiable), clear pricing, and a WhatsApp-first checkout flow since that's how the target guests already communicated.
  2. A post-stay follow-up sequence. Every guest who checked out received a message a few weeks later (not immediately, that felt transactional) with a direct booking link and a modest returning-guest rate, something the OTA listing could never legally match due to rate parity clauses.
  3. A loyalty-adjacent perk, not a discount war. Instead of undercutting the OTA rate outright (which risks parity violations and platform penalties), the direct channel offered things OTAs structurally can't: early check-in when available, a welcome amenity, flexible cancellation terms. Value-adds instead of price cuts kept them inside parity rules while still making direct clearly the better choice for a returning guest.
  4. WhatsApp as the actual booking desk. The website was a trust signal and a calendar check. The actual conversation, the reassurance, the local recommendations, happened over WhatsApp, which matched how the operator's guests already behaved and cost nothing extra to run.

The Rate Parity Tightrope

This is the part most operators get nervous about, correctly. Most OTA contracts include rate parity clauses that prohibit listing a lower nightly rate directly than what's on the platform. Undercutting on price is the fastest way to get delisted or penalized.

The workaround the operator used, and the one I'd recommend to anyone in this position, is to compete on total value rather than headline rate. Same nightly price, but direct guests got perks that don't show up as a rate difference: guaranteed early check-in subject to availability, a bottle of something local on arrival, more flexible cancellation than the non-refundable OTA rates the same guest might otherwise be pushed toward. None of that violates parity clauses because the rate itself never changed.

Channel Conflict Was the Real Fear, and It Didn't Materialize

The operator's biggest hesitation going in was that OTAs would notice declining volume and retaliate, either through lower search ranking or a harder negotiating stance on commission. In practice, this didn't happen, for a reason worth understanding: OTAs care about new guest acquisition and overall platform booking volume, not about capturing 100% of every individual guest's lifetime bookings. A repeat guest booking direct instead of through the platform doesn't cost the OTA a customer relationship they were monetizing long-term, it costs them one transaction fee on a guest they'd already been paid to acquire once.

The new-guest funnel through OTAs stayed exactly as strong as before. What changed was that the repeat-guest funnel, which OTAs were never really adding value to beyond payment processing, got redirected to a channel that kept the margin.

The Results, In Plain Numbers

Over eight months: direct bookings grew from under 5% of total reservations to roughly a third. Overall OTA volume from new guests stayed flat, meaning the shift wasn't cannibalizing OTA-driven discovery, it was purely capturing bookings that were already going to happen from returning guests. Net effect on margin was meaningfully positive without any change to nightly pricing or occupancy.

The lesson generalizes past hospitality: any business with a mixed acquisition-versus-retention model (marketplaces, aggregator apps, franchise directories) has the same structural leak. New customers need the discovery channel. Returning customers rarely do, and a business that doesn't build a direct path for them is paying acquisition-tier fees on retention-tier relationships forever.

The Practical Takeaway

If a third party is bringing you new customers, keep them, they're earning their fee. But audit whether that same third party is also charging you full price on customers who already know and trust you. If so, the fix isn't abandoning the platform, it's building one narrow, low-effort direct channel aimed specifically at people who've already stayed, already trust the brand, and just need an easier, equally attractive path back to you.

A hotel group facing the same OTA dependence took a similar approach at larger scale, worth reading alongside this one: How a Hotel Group Shifted Bookings Direct. If your business runs on the same acquisition-versus-retention split and you want a second pair of eyes on where the leak is, that is exactly the kind of narrow, high-leverage project I partner with owners on.