Offer your vacation packages on Google

A vacation, holiday, or package consists of a hotel, flights, and amenities offered at a combined price for a set number of days.

Google users can enter date and destination queries, compare package accommodations, flights and prices, and then book flights and hotel together in a single checkout flow.

This article tells you how to work with Google in order to show your vacation packages on Google and send users to your website for booking.

Attention: Would you like to show your vacation packages on Google? If after reading this article you think that vacation package listings on Google would be a great way to drive travelers to your itineraries, and you have the technical resources needed to participate, please contact us for more information.

Before you begin

To show your vacation and holiday packages on Google, you need to establish a partner account with Google. The support team for vacation package listings will request information about your brands and create an account for you in the Google Hotel Center.

Once that’s completed, you’ll be ready to prepare and upload your vacation packages data feeds. The feeds provide information about each combination of hotel, flights, price, and other details. Since Google will direct travelers to your website for booking, you must also provide deep links to the booking page for each vacation package offer.

Get started

To get started, create vacation packages data files and send them to Google as specified in this article.

You will work with the support team to ensure that your vacation package feeds are correctly formatted and transmitted via SFTP. The team monitors these feeds for quality and freshness. You need to exchange contact information in case any issues arise, such as failure to upload or read a file, or the team detects unusually long lag time between updates.

Upon successful receipt of your data, Google will initiate testing to ensure that the deep links work and that the prices you provided agree with those on the booking page. You must meet a price accuracy threshold of 90% to show your information on Google.

After the link and price accuracy tests pass successfully, Google will complete the onboarding steps for your vacation packages brands, and begin to show them publicly.

These are the basic steps for showing vacation and holiday packages on Google:

  1. Upload your hotel list

  2. Create a vacation feed CSV file

  3. Upload the feed file to Google

  4. Provide continuous updates

Upload your hotel list

Use the Hotel List Feed upload tool to provide details about the hotels in your vacation packages. You must do this before providing the package details. See this article for instructions and examples.

Note: The id field in the hotel list must match the corresponding hotel_id in the vacations data feed.

Create a vacation packages feed CSV file

Google accepts vacation packages feed files in CSV format.

Your Google contact will work with you to decide on a compression scheme and create an appropriate format for your feed file names.

File syntax

The format for flights supports one slice each way; that is, one outbound flight (airport and airline) and one return flight. Flight numbers are not required.

The file consists of a header row that specifies the names of the columns, plus an additional row for each vacation in the feed. This example includes all of the possible fields:

hotel_id,check_in_date,check_out_date,room_type_id,room_type_description,room_type_language,outbound_flight_origin,outbound_departure_datetime,outbound_flight_destination,outbound_arrival_datetime,outbound_num_stops,outbound_airline,return_flight_origin,return_departure_datetime,return_flight_destination,return_arrival_datetime,return_num_stops,return_airline,price,currency_code,num_adults,num_children,max_child_age,deeplink,board_options,has_transfer

Not all fields are required. The following table describes each of the available fields.

Column

Type

Required?

Description

hotel_id

string

A hotel identifier which is unique to your site. The value must match a hotel id value in your hotel list feed.

check_in_date

date

Hotel check in date in the format yyyy-mm-dd, for example 2019-01-27

check_out_date

date

Hotel check out date in the format yyyy-mm-dd, for example 2019-10-03

room_type_id

string

 

Room type identifier

room_type_description

string

 

Description of the hotel room/accomodations

room_type_language

ISO 639-1 language code

 

The language of the room_type_description field, such as "en", "ar", "de". See

http://www.w3.org/International/articles/language-tags/.

outbound_flight_origin

IATA airport code

3-letter IATA airport code for the outbound flight origin, for example FRA

outbound_departure_datetime

ISO 8601 datetime

Local outbound flight date and time, including the timezone offset, in the format yyyy-mm-ddThh:mm:ss-hh:ss, for example 2018‑12-27T13:40:21-05:00

outbound_flight_destination

IATA airport code

3-letter IATA airport code for the outbound flight destination, for example ATH

outbound_arrival_datetime

ISO 8601 datetime

Local arrival flight date and time, including the timezone offset, in the format yyyy-mm-ddThh:mm:ss-hh:ss, for example 2018‑12-27T13:40:21-05:00

outbound_num_stops

number

The number of stops between the outbound flight origin and destination.

outbound_airline

IATA or ICAO carrier code

2-letter IATA carrier code for the outbound airline, for example LH. Alternatively, the 3-letter ICAO carrier code, for example DLH.

return_flight_origin

IATA airport code

3-letter IATA airport code for the return flight origin

return_departure_datetime

ISO 8601 datetime

Local return flight date and time, including the timezone offset, in the format yyyy-mm-ddThh:mm:ss-hh:ss, for example 2018‑12-27T13:40:21-05:00

return_flight_destination

IATA airport code

3-letter IATA airport code for the return flight destination

return_arrival_datetime

ISO 8601 datetime

Local arrival flight date and time, including the timezone offset, in the format yyyy-mm-ddThh:mm:ss-hh:ss, for example 2018‑12-27T13:40:21-05:00

return_num_stops

number

The number of stops between the return flight origin and destination.

return_airline

IATA or ICAO carrier code

2-letter IATA carrier code for the return airline, for example LH. Alternatively, the 3-letter ICAO carrier code, for example DLH

price

decimal number

Total price for the vacation in the specified currency units, for example 1009.98.

currency_code

ISO 4217 currency code

3-letter currency code defined in ISO 4217 for example EUR.

num_adults

number

Number of adult travelers.

num_children

number

 

Number of child travelers, if any.

max_child_age

number

 

Required for child travelers; the age limit, in years, after which the traveler is considered an adult.

deeplink

URL

A hyperlink to specific content on the vacation website where the user can confirm the travel details, including price, for this vacation as in the following example.

https://holiday_road.com/wallyworld?tripid=123&adults=2&children=3&checkin=20190210

For more information, please refer to the technical specifications provided to you during the onboarding process

board_options

one of NONE, BREAKFAST, HALF_BOARD, FULL_BOARD, ALL_INCLUSIVE, SELF_CATERING

Meal options.

has_transfer

boolean (0 or 1)

1 (true) if amenities include transfers between hotel and airport, else 0.

CSV example

The following example shows a feed with hotel, travel and price information for one adult traveling from London on holiday to Athens. The package includes breakfast and a transfer to and from airport to hotel.

hotel_id,check_in_date,check_out_date,outbound_flight_origin,outbound_departure_datetime,outbound_flight_destination,outbound_arrival_datetime,outbound_num_stops,outbound_airline,return_flight_origin,return_departure_datetime,return_flight_destination,return_arrival_datetime,return_num_stops,return_airline,price,currency_code,num_adults,deeplink,board_options,has_transfer

123abc,2019-01-22,2019-02-01,LHR,2019-01-22T10:15:00+01:00,ATH,2019-02-01-22T15:45:00+02:00,0,AE,ATH,2019-02-01T07:15:00+02:00,LHR,2019-02-01T11:30+01:00,1,AE,2999,EUR,1,http://mybrand.com/holiday?myparams,BREAKFAST,1

Upload the feed file to Google

Use Google’s SFTP service to upload the vacation packages feed file

Connection Information

  • Hostnames: partnerupload.google.com, upload.partner.android.com

  • Anycast IP: 216.239.32.130

  • Port: 19321

Hostnames are the preferred access point for connecting to Google’s SFTP service; however if an IP address is required for whitelisting purposes, use the Anycast IP. Do not resolve hostnames or anycast IP, as static IPs are not guaranteed.

Setup

Authentication

Authentication is either by username/password or public/private key pair. Please let Google know your preference.

  • Username/password: For security and privacy purposes, Google will auto-generate your SFTP username and password and provide them to you.

  • Public/private key pair: Generate your own public/private key pair, and then send us the public key to load. Learn how to generate a public/private key pair.

Test

Upon finalizing your SFTP account set up, please notify the support team and any additional parties you are working with, and then send a test transfer so that we can validate successful receipt of the file and its contents.

File transfer

Google recommends that you write files using a temporary file extension (.tmp), then when transfer is complete replace the .tmp extension with the actual extension as agreed with the support team. This mitigates unintended processing of incomplete files, where a full file is not transferred because of a disconnect or other problem.

Provide continuous updates

To maximize your return on bookings made through Google and ensure that Google continues to display your offers, provide new and updated information about your hotels and vacation packages as soon as they are available for booking.

Tip: Log on to the Hotel Center to access tools to help analyze the performance of your vacation packages on Google.

Was this helpful?
How can we improve it?