Skip to Content
DestinationsAdvertisingExpedia Group Advertising

Expedia Group Advertising

Sync audience data to Expedia Group Advertising for travel advertising campaigns. Zeotap uploads audience segments via AWS Data Clean Rooms, enabling privacy-safe matching against Expedia Group’s first-party traveler data for display, sponsored listings, and offsite advertising.

Prerequisites

  • An Expedia Group Advertising partnership with Data Clean Room access
  • An AWS account with an S3 bucket configured for the collaboration (must be in us-east-1)
  • AWS IAM credentials with S3, AWS Glue, and Data Clean Room permissions
  • Your AWS Data Clean Room collaboration membership ID (provided by Expedia Group)

Authentication

Expedia Group Advertising uses AWS Access Keys for authentication.

  1. Create an IAM user in your AWS account with the following permissions:
    • s3:PutObject, s3:GetObject, s3:ListBucket on the designated S3 bucket
    • glue:CreateDatabase, glue:CreateTable, glue:GetTable for AWS Glue catalog operations
    • cleanrooms:GetCollaboration, cleanrooms:GetMembership for Data Clean Room access
  2. Generate an access key pair for the IAM user
  3. Enter your AWS Access Key ID and AWS Secret Access Key in Zeotap

Configuration

FieldTypeRequiredDescription
S3 Bucket NameTextYesThe S3 bucket for uploading audience data. Expedia Group recommends us-east-1.
AWS RegionSelectYesThe AWS region where the bucket is located. Default: us-east-1.
Path PrefixTextNoOptional prefix for uploaded files. Default: ht_expedia__dcr/.
Data Clean Room Collaboration IDTextYesThe AWS Data Clean Room collaboration membership ID shared with Expedia Group.

Target Settings

FieldTypeRequiredDescription
Audience NameTextYesName for the audience segment being synced.
File FormatSelectYesOutput file format: CSV (default) or JSONL.

Supported Operations

Sync Modes

ModeSupported
InsertYes
MirrorYes
Upsert
Update

Audience Sync Modes

ModeSupported
AddYes
MirrorYes
Remove
Upsert

Features

  • Field Mapping: No
  • Schema Introspection: No

Default Destination Fields

FieldTypeDescription
emailstringContact email address (raw or SHA256-hashed)
phonestringContact phone number (raw or SHA256-hashed)
timestampstringEvent timestamp in ISO 8601 format

Expedia Group recommends sharing both email and phone numbers (hashed or unhashed) to maximize match rates in the Data Clean Room collaboration.

How It Works

  1. Upload: Zeotap serializes audience rows as CSV or JSONL and uploads the file to your designated S3 bucket at the configured path prefix.
  2. Cataloging: The uploaded data is registered in AWS Glue as a table, making it queryable within the Data Clean Room.
  3. Matching: Expedia Group runs privacy-safe matching queries against their first-party traveler data (search behavior, booking patterns, travel intent) using the Data Clean Room collaboration.
  4. Activation: Matched audiences are activated across Expedia Group’s advertising surfaces including display ads, TravelAds Sponsored Listings, and offsite audience extension via The Trade Desk.

Each sync run uploads a new batch file with a unique timestamp-based name, preserving a full audit trail of synced data.

Rate Limits

S3 upload operations support up to 3,500 PUT requests per second per partitioned prefix. There are no practical rate limits for typical audience sync workloads.

AWS Data Clean Room queries are subject to your AWS account quotas. Contact AWS support to increase limits if needed for high-frequency syncs.

Best Practices

  • Use us-east-1 region for your S3 bucket, as Expedia Group’s Data Clean Room infrastructure is optimized for this region.
  • Include both email and phone identifiers to maximize audience match rates.
  • Hash PII before upload using SHA256 if your data governance policies require it. Expedia Group accepts both raw and pre-hashed identifiers.
  • Use CSV format for the best compatibility with AWS Glue table definitions.
  • Set a meaningful audience name to distinguish segments when reviewing match reports with your Expedia Group account team.
  • Mirror mode for full refreshes: Use mirror sync mode when you want to replace the entire audience each run, ensuring removed users are excluded from future campaigns.

Troubleshooting

S3 bucket access denied

Verify that the IAM user has s3:PutObject and s3:ListBucket permissions on the configured bucket. Ensure the bucket policy does not deny cross-account access if the bucket is in a different AWS account.

Data Clean Room collaboration not found

Confirm the collaboration membership ID is correct. The ID is available in the AWS Clean Rooms console under Collaborations > Membership details. Ensure the membership is in ACTIVE status.

Upload succeeds but no matches

Expedia Group matches on hashed email and phone. Ensure your data includes at least one of these identifiers. Check that email addresses are lowercased and trimmed of whitespace before hashing.

Region mismatch errors

The S3 bucket must be in the same region as the Data Clean Room collaboration. Expedia Group typically uses us-east-1. If you receive region errors, confirm your bucket region matches.

Large file upload timeouts

For audiences exceeding 1 million rows, Zeotap automatically splits data into batched files. If individual uploads still time out, check your network connectivity and consider using an S3 VPC endpoint for faster, private uploads.

AWS Glue table creation fails

The IAM role specified for Glue operations must have glue:CreateDatabase and glue:CreateTable permissions. Verify the role ARN is correct and the trust policy allows your IAM user to assume it.

Last updated on