Skip to content

Hotel Ads - Template Tags

Updated: Jun 24, 2026

When you create hotel ads, use these template tags in the ad creative and deep-link URLs. When Facebook displays your ad, the template tags are replaced with that person's travel selections.

Guidelines

  • Provide template tags in double curly brackets: {​{....}​}
  • Before using template tags, provide all required details through your Hotel Events.

For example, the title of your ad could be:

Complete your booking to {​{hotel.city}​} today!

And the template URL of your ad could deep link people straight to the hotel page they were interested in, with the right check-in and check-out date:

https://www.(...).com/hotels?id={​{hotel.hotel_id}​}&checkin={​{trip.checkin_date date_format:Y-m-d}​}&checkout={​{trip.checkout_date date_format:Y-m-d}​}

Dynamic dates

Dynamic dates for template tags enable you to continuously update the dates that appear in your ad, without having to re-upload the data in feed. You can use these for Advantage+ catalog ads used for a particular vertical, such as for hotels, flights, destinations, automotive, and so on. You can specify the following options with these tags:

  • Today
  • Today, plus or minus n days
  • Today, plus or minus n months
  • Today, plus or minus n years

The syntax for these tags is as follows:

Today:
{​{date.today}​}

Today + 12 days:
{​{date.today date_offset:+12d}​}

Today - 12 days:
{​{date.today date_offset:-12d}​}

Today + 3 months:
{​{date.today date_offset:+3m}​}

Today + 3 years:
{​{date.today date_offset:+3y}​}

By default, UTC is used; however, you can override with a specific time zone. For example:

{​{date.today date_timezone:PST}​}

Available template tags

Template TagDescription
hotel.brandHotel brand provided in catalog.
hotel.base_priceIf dynamic pricing is provided, this displays the base price from room type. If advertiser has not provided dynamic pricing, this displays the base_price provided in static hotel feed.
trip.checkin_dateThe check-in date that Facebook collected for the user from the advertiser. If there is no check-in date collected, this template tag defaults to the next day. Most date formats provided here⁠ are supported. Example: * {​{trip.checkin_date}​} * {​{trip.checkin_date date_format:Y-m-d}​}
trip.checkout_dateThe check-out date that Facebook collected for the user from the advertiser. If there is no check-out date collected, this template tag defaults to the day after tomorrow. Most date formats provided here⁠ are supported. Example: * {​{trip.checkout_date}​} * {​{trip.checkout_date date_format:Y-m-d}​}
hotel.cityCity provided in catalog.
hotel.city_idCity ID provided in catalog.
hotel.countryCountry provided in catalog.
trip.currency_codeThe ISO-4217⁠ currency code (for example, "USD") passed by the advertiser in dynamic events (for example, pixel events) using the key currency. If no currency code has been passed for an item, the product's feed's default currency is shown.
hotel.descriptionHotel description provided in catalog.
hotel.guest_ratingHotel guest rating provided in your catalog. To use this template tag, at least 30% of the catalog items must have a rating.
hotel.hotel_idHotel ID provided by advertiser in catalog.
hotel.nameHotel name provided in catalog.
hotel.neighborhoodFirst neighborhood provided in catalog.
trip.num_adultsNumber of adult travelers, based on intent signals Facebook collects about the user. Currently defaults to 1; subject to change.
trip.num_childrenNumber of children travelers, based on intent signals Facebook collects about the user. Currently defaults to 0; subject to change.
trip.num_travelersSum of adult and children travelers, based on intent signals Facebook collects about the user. Currently defaults to 1; subject to change.
hotel.priceIf dynamic pricing is provided, this displays the average dynamic price per night with tax and fees. If advertiser has not provided dynamic pricing, this defaults to base price.
hotel.sale_priceIf dynamic pricing is provided, this displays the average dynamic sale price per night. If advertiser has not provided dynamic date-based sale price, this defaults to sale price at the room level.
hotel.star_ratingHotel star rating provided in your catalog feed. To use this tag, at least 30% of the catalog items must have this field.
hotel.total_priceIf dynamic pricing is provided, this can be used to display the total price a user has to pay for the entire stay, including tax and fees.
hotel.urlHotel URL provided in catalog.

Date template tags

In addition to the tags above, these date-specific options are available:

Template TagDescription
date.todayToday's date.
date.today date_format:YmdToday's date in format 20181231. Most of the formats defined in PHP, date are supported.
date.today date_offset:OFFSET+ or - for time later than or earlier than today. D for days, such as +14D for 14 days from now. W for weeks, such as -3W for a date 3 weeks ago. Y for years, such as +1Y for one year from now
date.today date_timezone:TIMEZONEFor example, PST for a date in the PST timezone. If not specified, defaults to UTC⁠.

Unofficial mirror for reference/search purposes. All content originates from developers.facebook.com — see the source link at the top of each page. Machine-readable indexes: llms.txt · llms-full.txt · About