Search documentation...

ChangelogBook a demoSign up

Pinterest Ads

Deliver better ads by syncing conversion events and customer list audiences to Pinterest Ads


Manage your conversion tracking by syncing conversion events and promote your pins to a specific Pinterest audience by syncing customer lists from your data warehouse. Deliver more relevant ads, boost marketing ROI, and retarget your most loyal customers.

Supported syncing

Object TypeDescriptionSupported Sync Modes
Conversion EventsSync conversion events from any source to Pinterest AdsInsert
Customer List AudiencesSync your PII data from any source to Pinterest Ads customer list audiencesAdd, Remove

For more information about sync modes, refer to the sync modes docs.

Connect to Pinterest Ads

Go to the Destinations overview page and click the Add destination button. Select Pinterest Ads and click Continue. You can then authenticate Hightouch to Pinterest Ads by selecting Log in to Pinterest Ads and logging into your Pinterest Ads account.

Once successful, you will be redirected back to Hightouch to enter your advertiser account ID and conversion access token.

  • Advertiser account ID: You can locate your advertiser account ID within your Pinterest business account by navigating to the dropdown button on the top right of the page, then Business Access > Ad Accounts. You can find your ID under your the Asset name.

    Locate advertiser account ID

  • Conversion access token: If you want to send conversion events to Pinterest Ads, you also need to input a conversion access token. You can create a conversion access token within your Pinterest business account by navigating to the Ads dropdown then Conversions > Conversion access token. Click Generate new token and enter the token in Hightouch.

Create conversion access token

Sync configuration

Once you've set up your Pinterest Ads destination and have a model to pull data from, you can set up your sync configuration to begin syncing data. Go to the Syncs overview page and click the Add sync button to begin. Then, select the relevant model and the Pinterest Ads destination you want to sync to.

Syncing conversion events

Hightouch supports syncing conversion events to Pinterest Ads.

To ensure syncs send each event, your event model must use a truly unique primary key. See the events syncs documentation for more information.

Record matching

You can match events from your source to Pinterest Ads using the Event ID.

Field mapping

You can use field mapping to sync data to the event properties of a Pinterest Ads conversion event. Refer to the Pinterest Ads developer docs for descriptions of each property. Ensure your model columns' data types match the data types of the fields you want to sync to.

For fields that expect an array , Hightouch automatically converts your row values to arrays if they aren't already. For example, you can map string model columns to array type Pinterest Ads fields.

The Pinterest Ads API requires the Action Source field, so you must map it to complete your configuration. Action Source is an enumerated field which only accepts the following string values:

  • "app_android"
  • "app_ios"
  • "web"
  • "offline"

Handling PII

Pinterest Ads requires some identity information to be normalized and hashed. We support hashing for all fields that require values to be SHA256 hashed. Disabling PII hashing requires you to do this yourself. If you're handling hashing yourself, make sure that email addresses are in lowercase before hashing, as explained in Pinterest's documentation.

Cleaning phone numbers

You can select whether Hightouch should clean your phone numbers. By default, Hightouch doesn't clean phone numbers.

Pinterest Ads requires users' phone numbers to be normalized and hashed. The phone number should only include digits with country code, area code, and number without any symbols, letters, spaces, and leading zeros.

If you enable cleaning phone numbers, Hightouch tries to convert the phone number into E.164 format and remove the leading plus (+) symbol.

Syncing customer list audiences

A customer list audience is a customer list that is added to an audience. Depending on your model query results, Hightouch adds new user records into the Pinterest Ads customer list audience or removes them.

User identifiers

To identify which users to add or update in an audience, select model columns and the corresponding Pinterest Ads user fields. You can match on any of the following Pinterest Ads user fields:

  • Email
  • IDFA
  • MAID
  • LR_ID
  • DLX_ID
  • Hashed Pinner ID

Emails must be lowercase and can be plain text or hashed using SHA1, SHA256, or MD5. MAIDs and IDFAs must be hashed with SHA1, SHA256, or MD5.

Increase match rates in Pinterest Ads by enabling Match Booster.

New audience creation

In your sync configuration, you can tell Hightouch to create a new customer list audience for you. You can optionally assign a custom name to your audience. If no name is provided, Hightouch defaults to using your model name. To help differentiate the name of your customer list and audience, we save the customer list name as customer list-{customer list name} and audience name as audience-{audience name}.

The following example screenshot would create a new customer audience list called "Users 1."

Creating a new customer list audience

After creation, the customer list name will be "customer list-Users 1," and the audience name will be "audience-Users 1."

Using an existing audience

Instead of creating a new data customer list audience, Hightouch can also sync users to existing audiences that are already populated in your Pinterest Ads account. The Hightouch UI shows the customer list and audience as a comma-separated string.

In the example screenshot below, the customer list audience shows as "customer list-Users 1, audience-Users 1."

Using an existing customer list audience

Field mapping

You can sync columns from your model to the following identifiers in Pinterest:

  • Email
  • IDFA
  • MAID
  • LR_ID
  • DLX_ID
  • Hashed Pinner ID

Hightouch Match Booster can help to provide additional identifiers and increase your match rates.

Handling PII

Pinterest Ads requires some identity information to be normalized and hashed. Hightouch supports hashing for all user types except for Email, since Pinterest Ads doesn't require hashing this field.

Enable PII hashing if you wish for Hightouch to normalize and hash PII fields using a SHA256 hash. Disabling PII hashing requires to do this yourself.

Tips and troubleshooting

Matched users count

Below only applies to the audiences sync type.

Hightouch retrieves the audience metadata from Pinterest Ads in real-time. The matched number displayed in Hightouch should reflect what you see in Pinterest Ads. Note that the matched numbers are approximated to maintain privacy thresholds. Hightouch takes the matched count to calculate a match rate for your sync, where applicable. The calculation breakdown:

matched_user_count / # of rows queried in the latest sync run

The match rate is


calculated when:
  • syncing to an existing segment because the total number of records to ever be uploaded to the segment is unknown
  • removed users from your model is not removed in Pinterest Ads because the matched user count would be inflated in the calculation

Common causes for low match rates:

  • Your audience model is too small. Most ad platforms do not display the matched number unless there's at least one thousand matched users to maintain privacy thresholds.
  • The upload is still processing. We recommend waiting at least

    72 hours

    from the first sync run for numbers to settle.
  • Your data isn’t cleaned or hashed properly. Hightouch normalizes and hashes your data according to destination requirements, but it’s still good to make sure that the data is as clean as possible. Note that Hightouch cannot clean your data if you opt to hash it yourself. In that case, ensure you follow the data cleaning requirements forPinterest Ads.

Common errors

If you encounter an error or question not listed below and need assistance, don't hesitate to . We're here to help.

Delayed syncing

Pinterest takes around 24 hours to fully sync after Hightouch has synced data to their API. You can find more details under customer list on Pinterest's audience targeting help page.

Smaller audience size

You may notice that the audience size may be smaller than the total number of records synced to Pinterest Ads. This is because Pinterest filters out records that don't have a Pinterest account.

400 - Invalid request

You may receive a 400 - {"code":1,"message":"Invalid request: {} is not valid under any of the given schemas"} error message because a row being sent to Pinterest contains a null or blank value.

Ensure that mapped fields do not contain anynull or blank values. You can resolve this error by:

  • Filtering these rows in the model's query
  • Selecting the Don't sync null values checkbox in of the field mapping configurations.

Live debugger

Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.

Sync alerts

Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Last updated: Mar 28, 2024

On this page

OverviewSupported syncingConnect to Pinterest AdsSync configurationSyncing conversion eventsSyncing customer list audiencesTips and troubleshootingMatched users countCommon errorsLive debuggerSync alerts

Was this page helpful?