Important: Flights Ads for Prospecting has been deprecated in 2023. Meta CSM may have already informed you about this change, however there was no public announcement made.
Recommendation from Meta is to replace it with:
- Hotel or Destination ads
- Dynamic Ads with Local Commerce
- Advantage+ Shopping Campaigns
Before starting to create a Facebook Travel Ads (previously known as Dynamic Ads for Travel, or DAT for short) campaign, make sure you have a hotel, destination or flight catalog. Your website and mobile apps also need to send the correct hotel, flight, or destination Pixel and SDK events for the targeting to work properly.
In this article, we'll cover the setup of Facebook Travel Ads in Smartly.io as well as some common retargeting ad cross-selling use cases. For information on common questions and issues, see the Travel Ads FAQ
Step 1: What is your objective?
In order correctly set up your campaign with the correct catalogs, feeds, and Pixel events, you need to know your objective. The table below highlights the main use cases to help you identify the correct assets that are needed for your campaign.
Step 2: Campaign
To start creating a Facebook Travel Ads campaign:
- Go to your Facebook tab in Campaigns
- Click Create > New campaign > Dynamic Ads Campaign
- On the Campaign tab, select a hotel, destination, or flight catalog
Step 3: Audience
Select first the Event Source Group you want to use to build the dynamic audience. If you haven't created an Event Source Group before, click + New to create a new group. Travel Ads uses Event Source Groups to capture the travel intent signal and to create dynamic audiences. For more information, see Technical requirements for Travel Ads.
In Facebook dynamic ads, the dynamic audiences are defined with event-based inclusion and exclusion rules. These rules are based on whether a person has searched, viewed, initiated checkout or purchased a hotel or a flight. You can also combine static targeting rules with the audience. To set up static targeting rules, click Show native targeting options.
The default way is to use recency and event type, for example to retarget users who have viewed a hotel in the past 14 days but not purchased one in the last 10 days. This can be combined with a booking window, for example by excluding people whose check-in date is already gone. Note that this requires you to send check-in dates in your Pixel and SDK events. In addition, you can use the following parameters to further specify the audience under Optional rules for targeting:
- Hotel or destination set
- Length of stay
- Number of weekends
- Number of travelers
- Destination
- Travel dates
Optional rules are "AND" rules. For example, in the example below, you're targeting users whose check-in date is after 7th of January AND checkout date is before 7th March.
Optional rules are:
Field name and type | Description |
---|---|
Hotel Set ID
|
Matches only those events when at least one Only for travel audiences with Example: Hotel set ID equals 123456789 |
Destination Set ID |
Matches only those events when at least one Only for travel audiences with Example: Destination Set ID equals 12345 |
Flight Set ID |
Required for Dynamic Ads for Flights. Matches only those events when the route ( Only for travel audiences with Example: Flight Set ID equals 12345 |
Length of Stay
|
Number of nights spent during the trip. Example: Length of stay equals 1 |
Number of Weekends |
Number of weekends between the start and end date Example: Number of Weekends greater than 2 |
Number of Travelers
|
Total number of travelers
Example: Number of Travelers greater or equal 1 |
Date fields: Dynamic Ads for Hotels
Dynamic Ads for Flights
Dynamic Ads for Destinations
|
Use relevant date fields based on Example: Checkin date greater than 2021-09-21 |
ℹ️ Note: Dynamic audience retention times are created in seconds in Facebook. What this means is that when tiering audiences into different ad sets based on recency (for example, searched within 0-1 days, 1-10 days, 10-30 days, etc.), always remember to set the end time of one targeting as the start time of the next one. If you set the duration as 0-1 days, 2-10 days, 11-30 days, you will miss a 24-hour window with each audience.
Step 4: Dynamic Creatives
Creatives in Dynamic Ads campaigns are based on templates and generated dynamically. It is possible to define multiple templates and choose which ones to use with each ad set by selecting Choose creatives on the Audience tab.
You can use also a different Product Set at the Creative level than the one promoted if you have selected All Hotels (or All Flights, All Destinations) at the audience level.
Template Tags
In Dynamic Ads, the creatives are generated based on templates that can contain dynamic and static content. The dynamic content is denoted with double curly brackets and can be related to the user’s travel plans (e.g. {{trip.checkin_date}}
) or the hotel you’re advertising (e.g. {{hotel.name}}
). The list of available variables appears under Template Tags.
Pricing variables for Hotel Catalogs
Facebook offers alternative ways for displaying prices in the creative for Hotel Catalogs when using date-specific pricing (advanced feature).
Template Tag | Value if date-specific pricing provided |
---|---|
hotel.base_price |
Base price for room type |
hotel.price |
Average dynamic price per night with tax and fees |
hotel.price_no_tax_fees |
Average dynamic price per night without tax and fees |
hotel.total_price |
The total price a user has to pay for the entire stay. This price includes tax and fees. |
ℹ️ Note: These different pricing variables are only supported for hotel catalogs. For destination catalogs, 'destination.price' should be used
Transforms
It's possible to apply some transforms to the template tags:
- Dates support date formatter, e.g.
{{trip.checkin_date date_format:Y-m-d}}
. Read More. List of available formats here. - Other options and transforms available in Facebook's documentation
Flight price from Pixel
ℹ️ Note: Using this feature requires allowlisting from Facebook. Contact your account manager for more information.
When using a flight catalog, instead of getting the price provided in feed, you can choose to use the latest price provided for the flight in Pixel events. To do that, use the template tag {{flight.price source:event}}
.
Note: The preview won't probably show this correctly but it works in the live ads.
Link
For the ad link, you have two options:
- Use the default URL specified for each hotel or
- Define a dynamic URL template
With the latter option, you can direct the user to the appropriate search/content page with all the user-specific selections such as travel dates pre-filled. In case your URL requires the variables in a non-default format, you can use the transforms described above. Ask your account manager to help with these.
Dynamic Image Templates
Setting up Dynamic Image Templates can be done in catalog settings. One catalog can have multiple image templates and you can choose the one you want to use with each creative.
Dynamic Image Templates support all static data from your catalog. Dynamic pricing data and user-specific trip data can't be used in the image templates. (It can be, however, used in the text fields of the creative template.)
Using different catalog images for different Dynamic Image Templates
If you are passing more than one image in your catalog's image field (needs to be in an array), you can configure different image templates to use different images. Images being passed are identified by sequential numbering - "image 0", "image 1", "image 2", etc. For example, if you have different types of imagery in image 0 and image 1, you can create two different image templates in order to see what kind of imagery performs better.
Carousel Map Card
When using a hotel or a destination catalog, it's possible to add a Map Card to your carousel creative template. It is automatically generated by Facebook and shows the hotels/destinations on a map. You can define a title for the card. The description is automatically pulled from the title of the first dynamic card.
ℹ️ Note: Using Map Card in an ad set with Link Clicks as its billing event is not supported.
Retargeting and upselling use cases
Hotel retargeting
If you want to retarget people who searched for hotels in a specific location and viewed specific hotels but didn’t yet book, choose the following settings:
- Catalog used on campaign level: Hotel catalog
- Promote: All hotels
- Content type for events: Hotel
- Searched for/viewed/initiated checkout: hotel within X to Y days
- Exclude people who: booked a hotel within Y days
Hotel upselling
If you want to retarget people who searched for hotels with a specific star rating or price with hotels that have a higher price or better star rating, choose the following (example based on promoting 5-star hotels for people who looked at 4-star hotels):
- Catalog used on campaign level: Hotel catalog
- Promote: 5-star hotels (note: you need to create this hotel set in your catalog settings first)
- Content type for events: Hotel
- Searched for/viewed/initiated checkout: hotel within X to Y days
- Optional rules for targeting: Hotel set id - contains (case sensitive) - Star rating equals 4 (or whatever you have named this hotel set)
- Exclude people who: booked a hotel within Y days
Flight retargeting
If you want to retarget people who searched for flights to a specific location but didn’t yet book, choose the following settings:
- Catalog used on campaign level: Flight catalog
- Promote: All Flights
- Content type for events: Flights
- Searched for/viewed/initiated checkout: flight within X to Y days
- Exclude people who: booked a flight within Y days
Flight to hotel cross-selling
If you want to retarget people who searched for flights or booked a flight to a specific location with individual hotels in that destination, choose the following settings:
- Catalog used on campaign level: Hotel catalog
- Promote: All hotels
- Content type for events: Flights
- Searched for/viewed/initiated checkout/booked: flight within X to Y days
- Exclude people who: booked a hotel within Y days
Flight to destination page cross-selling
If you want to retarget people who searched for flights or booked a flight to a specific location with destination pages (such as a hotel search results page with all hotels in New York), choose the settings below. This often works best with people who haven’t made any hotel searches for that destination yet which is reflected in the example. Another option is to A/B test destination and hotel catalog cross-selling against each other using Ad Studies (add link) to determine which way works best for your customers.
- Catalog used on campaign level: Destination catalog
- Promote: All destinations
- Content type for events: Flights
- Searched for/viewed/initiated checkout/booked: flight within X to Y days
- Exclude people who: booked OR searched for a hotel within Y days
Retarget content page visitors with destinations
ℹ️ Note: For this targeting to work, your content pages need to send destination Pixel events, including destination_ids.
If you want to retarget people who visited specific content pages (e.g. blog articles related to a destination, thematic landing pages with several destinations such as a summary page of European city breaks, etc.) but who didn’t yet make a search, with destination pages (such a search results page with all hotels in that destination) choose the settings below:
- Catalog used on campaign level: Destination catalog
- Promote: All destinations
- Content type for events: Destination
- Viewed a destination within X to Y days
- Exclude people who: searched for a hotel within Y days OR who searched for a flight within Y days (if you are selling both, excluding flights is the better option)
Cross-selling: Retarget content page visitors with flights
If you want to retarget people who visited specific content pages (e.g. blog articles related to a destination, thematic landing pages with several destinations such as a summary page of European city breaks, etc.) but who didn’t yet search for flights to that destination, with flights choose the settings below:
- Catalog used on campaign level: Flight catalog
- Promote: All flights
- Content type for events: Destination
- Viewed a destination within X to Y days
- Exclude people who: searched for a flight within Y days
Cross-selling: Destination & Hotels
ℹ️ Note: For this targeting to work, your content pages need to send Destination Pixel events, including destination_ids.
If you are you using destination Pixel on blog articles related to a destination, thematic landing pages with several destinations such as a summary page of European city breaks, etc. and want to retarget people who visited specific content pages but who didn’t yet search for hotels in that destination, with hotels choose the settings below:
- Catalog used on campaign level: Hotel catalog
- Promote: All hotels
- Content type for events: Destination
- Viewed a destination within X to Y days
- Exclude people who: searched for a hotel within Y days
If you want to retarget users who have seen an hotel with destination images for extra-inspiration, or you'd like to run Dynamic Ads Broad Audience for Destinations based on your hotel inventory, you can implement destination_id in your Hotel events. (Read more)