[CODE]

The Ads Account That Spent Years Learning the Wrong Thing

A B&B in Hengchun had run Google Ads for years on instinct. The account was optimizing toward map-navigation taps, not bookings. Fixing the conversion target — and clearing out hundreds of irrelevant keywords — took one learning week to find customers at a completely different scale.

7 min read AI-generated
case-study google-ads ga4 bnb conversion-tracking

A B&B in Hengchun had been running Google Ads for years. Every month the account showed a few thousand “conversions,” Smart Bidding looked busy and efficient, and the operator had no reason to think anything was wrong. The problem was that the conversion number and the actual bookings had never agreed with each other, and nobody had ever sat down to ask why.

The answer, once you looked, was almost banal. The account counted “customer opens map navigation” as a conversion goal. That’s a default tracking action Google sets up automatically, and most operators never realize it’s there. So for years, Smart Bidding optimized exactly as instructed: it learned to bring in more people who tap for directions, not more people who want a room. The budget was doing its job. The job was just the wrong one.

This is the most expensive kind of waste in paid search. It isn’t the money spent on a bad click — it’s the algorithm getting smarter every day at the wrong objective. A few years of that compounds into an account that is confidently, efficiently optimized toward a metric that has nothing to do with revenue.

The real problem was the objective, not the budget

The account ran a modest monthly ad budget — neither high nor low by small-business standards, and there was never a case for cutting it. Telling this operator to “spend less” would have been the wrong call. The budget wasn’t the problem. The problem was what the budget was teaching the system.

On top of the broken objective, the spend was leaking in two other directions. A meaningful slice of it was paying for clicks on other B&Bs’ brand names and on Kenting tourist landmarks — searches from people who were never looking for this property at all. And the geographic setting was “location or interest” rather than “location,” which meant the account was buying clicks from overseas users who were never going to drive to Hengchun for a night.

None of this was the operator’s fault. Each individual setting looked reasonable in isolation. It’s the accumulation — a default conversion goal, broad keyword matching, a loose location setting — that quietly turns a working budget into a machine for attracting passers-by.

Four interventions, in the order they could actually pay off

The sequence mattered as much as the steps themselves.

First, the landing page. The property launched a new website on April 20th, and the ads were re-pointed from the old page to it. The new site is built so that the moment a visitor arrives, the phone and LINE buttons are immediately visible. This is the cheapest, highest-leverage change available: same ads, same budget, same traffic — but now the people who arrive can actually find a way to contact the property.

Second, the conversion tracking. On June 1st, a proper GA4 setup went in, and real conversion goals were built in Google Ads — counting only genuine inquiry actions like tapping the phone number or adding the LINE account. Map navigation, page views, and the other phantom conversions were pulled out of Smart Bidding’s optimization target entirely. This is the change that fixes the objective. Until this lands, every other improvement is being judged against the wrong scoreboard.

Third, clearing out the dead weight. Over three days from June 9th to 11th, more than 400 exclusions went in — pulling spend off competitor brand terms, the local fishing harbor, the old-town tourist strip, and every other search with no booking intent behind it. The location setting was corrected from “location or interest” to “location” at the same time, stopping the bleed to overseas users.

Then, the ongoing part. Every Monday morning a cron job produces an automated weekly operations report — tracking phone and LINE tap volume, ad traffic quality, and the on-site conversion funnel — so anything anomalous surfaces while there’s still time to act on it.

The order is deliberate. Fix the landing page first so traffic can convert at all. Fix the objective second so the system starts learning the right thing. Clear the noise third so the budget concentrates on real intent. Then keep a weekly eye on it, because Smart Bidding doesn’t stay fixed on its own.

What the numbers did

The cleanest way to read this is month by month, because each month tells a different part of the story.

YoY monthly revenue growth (2025 vs 2026):

MonthGrowthWhat it reflects
April−33%Site didn’t launch until 4/20; essentially the pre-intervention baseline
May+59%First full month on the new site — visitors could finally find the contact buttons
June+14%Smart Bidding relearning + three days of site downtime suppressed growth
July+54%True performance after the learning period, with July not even started yet

April is the world before the work. Ads running as before, tracking broken, old site still up. The −33% is the baseline — what “unchanged” looked like.

May is the landing page, in isolation. Not a single ad setting was touched. The same budget brought the same people, but now those people could find a way to book. The +59% is purely the website doing its job.

June is the cost of doing the right thing. Fixing tracking and excluding 400-plus keywords forced Smart Bidding back into a learning period. For the first two weeks of June, phone and LINE inquiries were low — the learning phase didn’t end until around the 14th. And here’s the lag that matters: people staying in June had booked back in April and May, so June’s ad improvements would only show up in July’s reservations. Add three days of site downtime, and June landed at +14%.

July is the real strength of a properly tuned account. After the learning period ended in mid-June, weekly phone and LINE inquiries jumped to a completely different order of magnitude. Those people were booking July rooms. As of June 30th — with July not yet begun — confirmed bookings were already +54%, and that number only goes up once the month actually runs.

The weekly inquiry data tells the same story up close. Indexing the first week of measurement to 100%, weekly phone-plus-LINE inquiries climbed roughly tenfold by the week the learning period closed — and held near that level even through the week that included three days of downtime. Same budget. Same property. Nearly ten times the genuine inquiries, once the system was finally pointed at the right target.

Why this only exists now

The insight here isn’t subtle once it’s named: the most expensive waste wasn’t the ad spend, it was the ad spend teaching the system the wrong lesson, every day, for years. The fix was conceptually simple — point the optimization at real inquiries, clear the irrelevant keywords — and it took one learning week to surface customers at a scale the old account never reached.

But conceptually simple and economically viable are different things. Diagnosing a broken conversion objective, rebuilding tracking, auditing and excluding hundreds of keywords, then producing a weekly report an operator can actually act on — each of those used to mean dedicated headcount. An engineer, an analyst, someone watching the account weekly. For a single small B&B, that service was simply never on the table. The math didn’t work.

What changed is that AI made this category of work affordable for this category of client for the first time. Not faster work that a team would otherwise have done — work that, for a small operator, would never have happened at all. This piece covers the results end-to-end; the engineering behind the weekly report and the conversion pipeline is told in [Real Bookings Replace Click Proxies in the Ads Conversion Pipeline] and [GA4 as Infrastructure, Not a Dashboard].

For years this account ran efficiently toward nothing. One week of relearning, and it found a different class of customer entirely.