Skip to content
HotelSEO Lab
← The Lab
Paid Media for Hotels

Budget Pacing and ROAS for Hotel Paid Media Across Seasonal Demand Swings

How I set and shift hotel ad budgets across shoulder, peak, and need periods, plus a ROAS target methodology that accounts for cancellations and guest lifetime value.

HotelSEO LabJuly 12, 2026 11 min read

I want to talk about the least glamorous, most expensive mistake I see independent hoteliers make with paid media: they spend the same amount every month.

Same Google Ads budget in February as in March. Same metasearch bids during a sold-out festival weekend as during a dead Tuesday in the shoulder. And then they wonder why the return looks mediocre averaged across the year. It looks mediocre because they are pouring money on a fire that is already out during peak, and starving the months where an ad genuinely changes whether a room sells.

Pacing is the whole game. So is having a ROAS target that reflects reality instead of the inflated number your ad platform proudly reports. Let me walk through how I actually do this for a boutique property, with the math, because the details are where the money is.

First, kill the flat budget

Hotel demand is not flat, so your budget cannot be flat. I bucket the calendar into three demand states, and every property has its own version of these:

The instinct most owners have is exactly backwards. They spend heavily in peak because “that’s when people are searching,” and they pull back in slow periods because “nobody’s booking anyway.” Both moves destroy ROAS.

The marginal value of an ad dollar is highest when demand is soft and lowest when you are already compressing. In peak you are often paying to acquire a booking that would have arrived organically. In a need period that same dollar can be the only reason a room sells at all.

So the pacing logic inverts the instinct. Let me show you what that looks like as a starting framework. These are illustrative percentages of an annual paid budget, not a prescription, but they show the shape:

Demand stateShare of nightsTypical budget postureWhy
Peak / compression~25%Defend brand terms only, low spendYou will fill anyway; protect rate and your name
Shoulder~45%Heaviest acquisition spendAds move the needle here; best efficiency
Need periods~30%Aggressive promotion, lower ROAS targetA booking at thin margin beats an empty room

Notice that peak gets the smallest slice even though it is your busiest, most lucrative season. That feels wrong until you internalize that you are not buying demand in peak, you are buying insurance against an OTA outbidding you on your own brand name. That is a defensive spend, and it should be small and surgical.

Pacing within a booking window, not just within a month

Here is the part most pacing advice skips. Hotel demand has a second dimension: the booking window. Guests for a peak date start searching months out; guests for a need-period Tuesday book three days before arrival.

If you pace purely by calendar month, you will overspend on peak dates four months early (when you should be barely defending) and underspend on need-period dates that are still wide open with 10 days to go (when you should be hammering the gas).

So I pace against the pace report, not the calendar. Every week I look at on-the-books for each future date relative to where it should be, and I move spend toward the dates that are pacing behind. A simple version of the rule:

This is exactly how revenue managers think about rate, and paid media should be wired into the same brain. If your ads and your revenue management run in separate silos, you are leaving money on the table in both directions. I get into the channel-mix side of this in our piece on how OTAs steal search, because the same compression dates are when OTAs are most aggressive against you.

Now the part everyone gets wrong: your ROAS number is a lie

When Google Ads or your metasearch dashboard shows you a 9x return, it is almost always overstating reality, for three reasons. If you set budgets off that number, you will systematically overspend.

Reason one: cancellations

Platforms count the booking the moment it happens. They do not know — and do not care — that a chunk of those bookings will cancel before arrival. If your direct cancellation rate is 20 percent, then a reported 9x is really closer to 7.2x in realized revenue. Higher-cancellation segments (flexible rates, far-out bookings) inflate the gap further.

I always rebuild ROAS on realized, stayed revenue, not booked revenue. The formula I use:

Real ROAS = (Booked revenue × (1 − cancellation rate) − variable cost of the stay) ÷ ad spend

That variable cost of the stay term matters and gets ignored constantly. A booked room is not pure profit. Housekeeping, amenities, payment processing, OTA-equivalent costs if it came through a commissionable path — strip those out so you are measuring contribution, not top-line.

Reason two: attribution double-counting

Your brand-term paid search and your organic listing and your metasearch entry can all claim credit for the same guest. If you are running paid on your own hotel name and also ranking organically for it, the paid channel is frequently being credited for a booking you would have gotten for free. Pause brand paid for two weeks in a non-peak window and watch how much of that “lost” volume simply shifts to organic. That delta is your real incremental brand-paid value, and it is usually smaller than the dashboard implies. This is tied directly to why your hotel ranks below OTAs for your own name — if you fix the organic side, you need less defensive paid spend.

Reason three: lifetime value cuts the other way

The first two reasons make your reported ROAS too generous. This one makes it too stingy. A direct guest you acquire today is not worth one stay — they are worth their repeat visits, their direct rebookings (zero acquisition cost the second time), and the OTA commission you never pay on those future stays. If a meaningful share of your guests return, your true return on a first acquisition is higher than the single-stay number.

Cancellations and double-counted attribution push your real ROAS down. Repeat-guest lifetime value pushes it back up. A defensible target reconciles all three — most owners model none of them and just trust the dashboard.

Building a ROAS target you can actually pace against

I do not start with a target ROAS and hope. I back into it from the economics of the property. Here is the sequence, with illustrative numbers so you can see the mechanics:

  1. Start with average direct booking value. Say it is 600 dollars (three nights at 200).
  2. Strip variable cost to get contribution. If variable cost runs 35 percent, contribution is 390 dollars.
  3. Haircut for cancellations. At an 18 percent cancellation rate, expected realized contribution per booking is about 320 dollars.
  4. Add a conservative LTV uplift. If 25 percent of guests return once with near-zero reacquisition cost, you can credit a modest uplift — say 15 percent — bringing effective value to roughly 368 dollars. Keep this conservative; do not build a budget on optimistic repeat assumptions.
  5. Decide what you are willing to pay for that booking given the demand state.

In a shoulder period I might be willing to spend 60 dollars to net a booking worth ~368, which is a healthy realized ROAS in the 6x range on the booking value. In a need period I will happily spend 120 dollars for the same booking — a ~3x target — because the realistic alternative is an unsold room earning zero. In peak, I am barely spending at all, so ROAS there should look enormous because it is almost entirely brand defense on guests who were already coming.

That is the key insight: a single annual ROAS target is meaningless. You want a different target per demand state, and the need-period target should be deliberately low. A low ROAS on a room that would otherwise be empty is still pure incremental contribution.

How I split the budget across channels by season

Pacing is not only about how much, it is about where. The channel mix shifts with demand too:

Every direct booking you pull through these channels is a booking you did not hand to an OTA at a 15 to 25 percent commission. Paid media will not let you escape the OTAs — nothing does, and you should not want to lose that distribution entirely — but a smart paced spend genuinely improves the mix and claws back margin. I ran the commission arithmetic in the book-direct math post if you want to see exactly how much a recovered direct booking is worth.

A realistic operating cadence

So what does running this actually look like week to week? Here is the rhythm I keep:

And a word on expectations, because I will not sell you a fantasy: paid media is a lever you control day to day, but it does not produce overnight transformation. Metasearch and brand efficiency improve over weeks as you tune bids and clean up your booking funnel. Nobody can guarantee you a specific ROAS or a number-one anything — what we can do is stop the obvious leaks, pace spend to where it actually moves bookings, and measure on money that truly arrives. Done consistently, that is what maximizes your odds of a return you can actually bank.

The takeaway

Flat budgets and dashboard ROAS are the two silent killers. Bucket your calendar into peak, shoulder, and need periods; spend least where you compress and most where ads change the outcome; pace against your booking window, not the wall calendar; and build a per-demand-state ROAS target off realized revenue net of cancellations, with a conservative nod to lifetime value. Do that and your paid program stops being a flat tax and starts being a precision instrument.

If you want a second set of eyes on your current pacing and a real ROAS model built off your actual numbers, book a free intro call and we will pull it apart together. You can also see how this fits the bigger picture on our paid and book-direct CRO services page.

FAQ

Quick answers

What ROAS should an independent hotel target on paid media?

There is no universal number. I back into a target from your real margin after OTA-equivalent costs, your cancellation rate, and repeat-guest value. For most independents that lands somewhere in the 4x to 8x range on direct channels, but a need period might justify a much lower target because the alternative is an empty room.

Should I cut my ad budget during peak season when I am already full?

Usually yes, but not to zero. When demand is high you do not need to pay to capture it, so I shift spend toward defending your brand terms and protecting rate. The dollars you save get reallocated to shoulder and need periods where ads actually change the outcome.

How do cancellations change my real ROAS?

Reported ROAS counts bookings, not stays. If 20 percent of your direct bookings cancel, your platform-reported ROAS is overstated by roughly that much. I always model ROAS on realized revenue net of cancellations so the budget decisions are based on money that actually arrives.

Does paid media reduce my dependence on the OTAs?

It can help. Paid search and metasearch let you compete for guests who would otherwise book through an OTA, and every direct booking you win back claws margin off the 15 to 25 percent commission you would have paid. It does not eliminate the OTAs, but it improves the mix.

Keep reading

More from the Lab

Free intro call

Let's go find out why the OTAs are outranking you for your own name.

20 free minutes. We'll look at your hotel live, show you where you're invisible — on Google and in the AI answers — and tell you straight whether we can help.

No lock-in · No 12-month handcuffs · You talk to the strategist