Facebook Custom Audiences (Actions)

Destination Info
  • Refer to it as Facebook Custom Audiences (Actions) in the Integrations object
  • This destination is in Beta

Deliver effective Facebook Ads campaigns by defining and syncing custom audiences to power ad suppression, acquisition (using lookalikes), retargeting, and more.

This destination sends audiences, or lists of users, from your data warehouse to Facebook Custom Audiences using Reverse ETL. Syncs can add or remove users from your Facebook Custom Audiences as records are created, updated, or deleted in your warehouse.

This destination only supports Reverse ETL sources

This destination only supports Reverse ETL sources. To connect Facebook Custom Audiences to Twilio Engage, use the Facebook Custom Audiences destination.

Getting started

Prerequisites

  • A Reverse ETL source already set up. If you don’t yet have a Reverse ETL source, follow the instructions in Segment’s Reverse ETL documentation. Segment recommends setting an External ID as the primary key for your Reverse ETL model, as you’ll need an External ID to remove users from your custom audiences.
  • A Facebook account with ads_management permissions for the target Facebook Ad Account(s). The Facebook Ad Account(s) must also be associated with a Facebook Business Account.

Connect to Facebook Custom Audiences

  1. From your Segment app, navigate to Catalog > Destinations and search for “Facebook Custom Audiences (Actions)”.
  2. Select the Facebook Custom Audiences (Actions) destination and click Add destination.
  3. Select the Reverse ETL source you’d like to connect to your Facebook Custom Audiences (Actions) Destination and click Next.
  4. Enter a name for your destination and click Create destination.
  5. Navigate to your destination’s settings page and click Connect to… to authenticate with Facebook.
  6. Return to the Segment app and enter your Advertiser Account ID. See Facebook’s Find your Facebook ad account ID number documentation for more information.
  7. Save the changes you’ve made and Enable your destination.

Add users to a Custom Audience

After you’ve connected your Facebook Custom Audiences destination to Segment, set up a mapping that adds users to a new or existing Custom Audience.

  1. Navigate to Connections > Sources and select your Reverse ETL source.
  2. On the Models page, select the model you’d like to use and click Add Mapping.
  3. Select the Facebook Custom Audience (Actions) destination and the Sync Audience action, then click Create Mapping.
  4. Enter a descriptive name for your mapping. Segment recommends a name that includes both the audience name and sync mode, for example, Loyalty Users (Add).
  5. Under Select record to map and send, select Added or updated records. The Added or updated records sync mode both adds new records and attempts to re-add any updated records to the custom audience. Adding updated records to your destination enables better match rates as more user identifiers are added to the source model over time.

Added or updated records is the only supported additive sync mode

Selecting any other sync mode might lead to sync failures with the Facebook Custom Audiences (Actions) destination.

  1. Set how often your model syncs by setting the Sync schedule.

  2. Select or create an audience in Facebook to sync your data with. Click the Select or create audience in Facebook button to save the audience ID to your mapping.

  3. Map your model columns to the appropriate Facebook Custom Audience parameters. For more context about data formatting, see the Sync Audience and Data processing documentation.

    • Map External ID to a unique user identifier from your system (like User ID, CRM ID, or anonymous ID.) Segment recommends using the External ID column as your primary key when setting up your Reverse ETL model so you can more easily remove users from your custom audience. External ID is the only field Facebook requires.
    • Segment recommends mapping as many parameters as you have available in your source model so that you can increase your match rates.
  4. Send a test record. If successful, you should see a 200 response in Segment and one added record to your custom audience. To verify that the record was successfully added to your custom audience, open Facebook Ads Manager and navigate to Audiences > {Audience Name} > History.

  5. Click Save Mapping and enable the mapping.

Remove users from a Custom Audience

  1. Navigate to Connections > Sources and select your Reverse ETL source.
  2. On the Models page, select the model you’d like to use and click Add Mapping.
  3. Select the Facebook Custom Audience (Actions) destination and the Sync Audience action, then click Create Mapping.
  4. Enter a descriptive name for your mapping. Segment recommends a name that includes both the audience name and sync mode, for example, Loyalty Users (Remove).
  5. Under Select record to map and send, select Deleted records. The Deleted records sync mode removes any records from your custom audience that you deleted from your source model.
  6. Set how often your model syncs by setting the Sync schedule.
  7. Select or create an audience in Facebook to sync your data with. Click the Select or create audience in Facebook button to save the audience ID to your mapping.
  8. Map your model columns to the appropriate Facebook Custom Audience parameters. Only the External ID is required. When a record is deleted from your source model, only the model primary key is sent to the mapping; other columns from your source model are not sent. Segment recommends using the External ID as your primary key in your source model.
  9. Send a test record. If successful, you should see a 200 response in Segment and one record removed from your custom audience. To verify that the record was successfully removed from your custom audience, open Facebook Ads Manager and navigate to Audiences > {Audience Name} > History.
  10. Click Save Mapping and enable the mapping.

Destination Settings

Setting Description
Advertiser Account ID Required.

Your advertiser account id. Read more.

Available Actions

Build your own Mappings. Combine supported triggers with the following Facebook Custom Audiences-supported actions:

Mapping limits per destination

Individual destination instances have support a maximum of 50 mappings.

Sync Audience

Sync data to Facebook Custom Audiences.

Sync Audience is a Cloud action.

Click to show / hide fields

Field Description
External ID* Type: STRING

Your company’s custom identifier for this user. This can be any unique ID, such as loyalty membership IDs, user IDs, and external cookie IDs.

Email Type: STRING

User’s email (ex: foo@bar.com)

Phone Type: STRING

User’s phone number, including country code. Punctuation and spaces are ok (ex: 1-234-567-8910 or +44 844 412 4653)

Country Type: STRING

User’s country. Use 2-letter country codes in ISO 3166-1 alpha-2 format.

Date of Birth Type: OBJECT

User’s date of birth. Include as many fields as possible for better match rates (ex: year = YYYY, month = MM, day = DD)

Name Type: OBJECT

User’s name. Include as many fields as possible for better match rates. Use a-z only. No punctuation. Special characters in UTF-8 format

City Type: STRING

User’s city. Use a-z only. No punctuation. No special characters.

State Type: STRING

User’s state. Use the 2-character ANSI abbreviation code, Normalize states outside the US with no punctuation and no special characters.

Postal Code Type: STRING

User’s postal code. For the US, use only the first 5 digits. For the UK, use the Area/District/Sector format.

Gender Type: STRING

User’s gender (m for male, f for female)

Mobile Advertising ID Type: STRING

User’s Apple IDFA, Android Ad ID, or Facebook app scoped ID. Keep hyphens (ex: AB1234CD-E123-12FG-J123)

App ID Type: STRING

The app ID of the user.

Page ID Type: STRING

The page ID of the user.

Data processing

To improve match rates, Segment built in normalization and hashing for common fields to align with Facebook’s recommended best practices.

Normalization

Segment automatically strips whitespace and converts the following fields to lowercase:

  • Email
  • First name
  • Last name
  • First initial
  • City
  • State
  • Country

Segment normalizes the Phone field by removing any non-numeric symbols, whitespace, and leading zeroes.

Hashing

Facebook requires you to hash all PII before sending it to the Facebook Conversions API.

Segment automatically hashes any of the following fields that are not already SHA256 hashed at egress:

  • Email
  • Phone
  • First name
  • Last name
  • First initial
  • City
  • State
  • Postal code
  • Country
  • Year of birth
  • Month of birth
  • Day of birth
  • Gender

FAQs and troubleshooting

Audience not creating and/or existing audience list not populating

If you’re unable to create a new audience or select existing audiences while creating a mapping, this might be due to an authentication error. Verify that you’ve authenticated with Facebook under Destination Settings and that the Facebook user that authenticated with Segment can access your Advertiser Account ID.

Audience size smaller than expected

Segment sends lists of users with the identifiers you’ve mapped from your source model. The matching logic itself occurs within Facebook. Facebook is more likely to be able to match a user profile if you track as many identifiers as possible, like email, mobile advertising identifiers (IDFA, Google advertising ID), and others. If Facebook is unable to identify users based on the data that you provide, then the match rate will be low.

As an example, many B2B SaaS businesses have users that sign up for their products with a work email address, like jane.doe@segment.com. However, most Facebook users sign up for Facebook with a personal email only, like janedoe@gmail.com. If you only provide Facebook with the work email address and no other identifiers, then Facebook can’t match your user to the Jane Doe Facebook profile. This is the case for all identifiers: Facebook must have the identifier somewhere in a user’s profile or they can’t match on it.

Do you support value-based lookalikes?

While Facebook has a feature called value-based lookalikes, where you can send an additional field like LTV to optimize campaigns based on a customer’s value, there is currently no way to sync LTV data to a value-based lookalike using the Facebook Custom Audiences (Actions) destination.

Settings

Segment lets you change these destination settings from the Segment app without having to touch any code.

Setting Description
Advertiser Account ID
(required)
string. Your advertiser account id. Read more.

This page was last modified: 09 Aug 2024



Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
or
Create free account