The Feedance AI features is rolling out. Check it out!
How Feedance can help your revenue growth
250+ channel and platform integrations
Start optimizing with powerful integration
Wordpress compatible e-commerce integration
Start optimizing Magento very quickly
Open source e-commerce platform integration
Integrate ChatGPT Ads Catalog in seconds
Optimize Meta Catalog Ads
Optimize your Google Shopping visibility correctly
Optimization of TikTok Catalog Ads
Google Hotel Ads is Google's advertising and metasearch program for hotels, resorts, and other lodging properties. Rather than showing a static product listing, it displays live room rates and availability for a property directly inside Google Search, Google Maps, and Google Travel, sourced from a feed that the hotel or its technology partner submits through Hotel Center, Google's dedicated management platform for the program.
Unlike a standard product feed, Hotel Ads is built on three connected feed types rather than one file: a Hotel List Feed that registers each property and maps it to Google's canonical Maps listing, a Price Feed that reports nightly rates, availability, and booking restrictions, and a Landing Page Feed that tells Google exactly which URL to send a shopper to when they click through to book. All three are submitted as XML validated against Google's own schema, built on the OpenTravel Alliance (OTA) message standard.
Hotel Ads places your property's real rates and availability next to the same search results where online travel agencies (OTAs) already compete for the booking, giving travelers a direct-booking option at the exact moment they are comparing prices on Google Search, Google Maps, and Google Travel.
Because pricing is pulled live from your feed rather than crawled from your website, an accurate, frequently updated feed is what keeps your rates eligible to show at all. Google's own Price Accuracy Policy ties auction eligibility and free booking link placement directly to how well your submitted price matches what a guest sees on your booking page, so feed quality has a direct, measurable effect on visibility and cost.
Hotel Ads campaigns are billed through Google Ads once your Hotel Center feed is linked to an ads account. Google currently supports two bidding approaches for hotel campaigns: Cost-Per-Click (CPC), where you bid a fixed amount or a percentage of the total nightly price (CPC%) and pay each time a shopper clicks through to your site, and Target Return on Ad Spend (tROAS), where Google's bidding system optimizes toward a revenue goal you set.
This is a change from how the program used to work. Google's commission-based 'pay per stay' model, where a hotel paid a percentage only after a guest actually completed their stay, was officially discontinued on February 20, 2025. Feeds and integrations built around the old commission program need to be reconfigured for CPC or tROAS bidding, since pay-per-stay is no longer an available option in Google Ads.
Every Hotel Ads feed is plain-text XML, not CSV or a spreadsheet-based format, and each file is validated against Google's published schema before it can go live. Google recognizes two ways to deliver pricing:
OTA_HotelRateAmountNotifRQ
OTA_HotelAvailNotifRQ
Files are uploaded to Google either as a single XML document or zipped (STORED or DEFLATED compression only) and served from an HTTP or HTTPS location, optionally protected with Basic or Digest authentication. Uncompressed Hotel List files are capped at 100 MB, and Google recommends keeping individual ARI rate messages under 5 MB.
HotelID
HotelCode
RoomID
InvTypeCode
PackageID
RatePlanCode
Start
End
CurrencyCode
BaseByGuestAmt
NumberOfGuests
RestrictionStatus
LengthOfStay
Capacity
AdultCapacity
ChildCapacity
Feedance takes the OTA-XML complexity out of the equation by mapping your PMS, channel manager, or property-management export into the exact Hotel List and ARI (rate and availability) XML structures Google Hotel Center expects, instead of asking your team to hand-build OTA_HotelRateAmountNotifRQ and OTA_HotelAvailNotifRQ messages.
Under Google's ARI push delivery model, there is no fixed schedule — you send an updated rate or availability message the moment something actually changes on your side, whether that's a nightly rate, an inventory count, or a length-of-stay restriction. Google explicitly recommends sending an updated availability message whenever availability changes, rather than batching updates on a timer.
Google's own guidance for improving price accuracy goes further, recommending prices be refreshed several times a day so the feed never drifts out of sync with what a guest sees on your live booking page. For hotels that need true real-time accuracy, Google can also issue live pricing queries and expects a response within its specified timeframe for that price to appear in results.
Google's Feed Status Tool inside Hotel Center surfaces these codes along with the specific hotel and dates affected, so they can be corrected and the message resubmitted.
Does Google Hotel Ads accept a simple CSV or spreadsheet feed?No. Every feed type — Hotel List, Price, and Landing Page — must be submitted as XML validated against Google's schema; there is no supported flat-file alternative.
Is the commission-based (pay per stay) model still available?No. Google discontinued commission-based bidding for hotel ads on February 20, 2025. Current campaigns run on CPC (fixed or percentage-of-price) or Target ROAS bidding instead.
What currencies can I submit rates in?Rates must use a valid ISO 4217 three-letter currency code in the CurrencyCode attribute of the ARI Rate message; Google maintains the list of currencies it supports for hotel pricing.
What happens if my HotelID doesn't match my Hotel List feed?You'll receive error 1022, 'Can't find a match for the given partner and hotel ID' — the Price Feed's HotelID must map exactly to an ID already registered in the Hotel List Feed, since all rate and availability data is matched against that registry.
Do I need to submit availability separately from rates?Yes. Rates are sent via the ARI Rate message (OTA_HotelRateAmountNotifRQ) and availability/restrictions via the ARI Availability message (OTA_HotelAvailNotifRQ) — they are distinct message types, and a room can have a valid rate but still show as unavailable if its Master restriction is closed.
We’ll tailor your demo to your immediate needs and answer all your questions. Get ready to see how it works!