Multiplicateurs d’enchères

REMARQUE : cette API est disponible de manière limitée pour les partenaires et les annonceurs qui figurent sur la liste d’éléments autorisés. Contactez votre représentant Meta pour l’utiliser.

Les multiplicateurs d’enchères permettent aux annonceurs de limiter la segmentation d’audience requise en leur donnant la possibilité de gérer une stratégie d’enchère nuancée dans le cadre d’un ensemble de publicités unique dont l’audience est ciblée. Les annonceurs créent généralement des ensembles de publicités afin de pouvoir enchérir différemment selon les divers segments d’audience concernés. Par exemple, un annonceur peut créer 3 ensembles de publicités correspondant à 3 tranches d’âge différentes : 18–25, 26–35, 36–65. Avec un multiplicateur d’enchères, un annonceur peut créer un ensemble de publicités unique, puis utiliser les multiplicateurs d’enchères pour enchérir de manière spécifique à chacune des tranches définies.

Les annonceurs diffusant des publicités relatives au logement, à l’emploi et au crédit, et établis aux États-Unis, ou diffusant des publicités destinées aux États-Unis sont soumis à des restrictions différentes et ils ont accès à un sous-ensemble de catégories d’audience pour ajuster les enchères. Les campagnes relatives au logement, à l’emploi et au crédit ne permettent pas d’ajuster les enchères pour les catégories d’audience suivantes : age, gender, locale, home_location, user_bucket et custom_audience similaire (une audience personnalisée dérivée d’une audience similaire). Voir Catégorie publicitaire spéciale.

Depuis le 30 janvier 2023, les publicités qui utilisent un multiplicateur d’enchères avec des catégories de données tierces (booking_window, custom_audience (audiences personnalisées similaires incluses), lengthofstay, travelstartdate, travelstartdayofweek, user_recency, user_bucket) ne seront plus diffusées aux utilisateur·ices qui s’en sont désabonné·es.

Recommandations relatives aux multiplicateurs d’enchères

  • Utilisez des stratégies d’enchères personnalisées sans qu’il soit nécessaire de créer de trop nombreux segments d’audience ou ensembles de publicités. Cela vous permet d’obtenir une meilleure diffusion des publicités tout en évitant de trop segmenter les campagnes en un grand nombre d’ensembles de publicités avec des audiences relativement faibles.
  • Auparavant, il était possible de créer 3 ensembles de publicités correspondant à 3 tranches d’âge différentes. Vous pouviez alors enchérir séparément pour chacun de ces ensembles de publicités. Désormais, vous pouvez créer un seul ensemble de publicités et utiliser des multiplicateurs d’enchères afin d’enchérir différemment pour chacune de ces tranches d’âge. Les multiplicateurs d’enchères sont compris entre 0,09 et 1.
  • Les multiplicateurs d’enchères doivent être spécifiés sous une seule et même clé user_groups.
  • Les multiplicateurs d’enchères sont disponibles pour les campagnes d’enchères.
  • Toutes les stratégies d’enchère sont prises en charge par les multiplicateurs d’enchères, à savoir : limite d’enchère, limite de coût et coût le plus bas.

Configurer les catégories d’audience

Vous pouvez définir des catégories d’audience et attribuer un multiplicateur d’enchères à chacune d’elles. Ces catégories d’audience sont définies d’après les données démographiques, les appareils utilisés et les informations personnalisées concernant les annonceurs. Les campagnes relatives au logement, à l’emploi ou au crédit ne permettent pas d’attribuer des enchères aux catégories d’audience suivantes : age, gender, locale, home_location, user_bucket et custom_audience similaire (une audience personnalisée dérivée d’une audience similaire).

PrioritéDescription

age

Enchère dont l’utilisation dépend de l’âge ou de la tranche d’âge. (Non disponible pour les campagnes relatives au logement, à l’emploi et au crédit.)

booking_window

Enchère dont l’utilisation dépend du nombre de jours restants avant le début du voyage.

custom_audience

Enchère sur la custom_audience à laquelle appartient l’utilisateur·ice. Les audiences similaires sont prises en charge pour cette option, sauf pour les campagnes relatives au logement, à l’emploi et au crédit.

device_platform

Enchère dont l’utilisation dépend de la plateforme utilisée sur le système de l’utilisateur·ice (appareil mobile ou ordinateur, par exemple).

gender

Enchère dont l’utilisation dépend du genre. (Non disponible pour les campagnes relatives au logement, à l’emploi et au crédit.)

home_location

Enchère basée sur home_location de l’utilisateur·ice. Ceci représente son lieu de résidence actuel. Le multiplicateur home_location peut être divisé en villes, régions et pays. (Non disponible pour les campagnes relatives au logement, à l’emploi et au crédit.)

lengthofstay

Enchère basée sur le nombre de jours entre le début et la fin d’un voyage.

locale

Enchère dont l’utilisation dépend des paramètres linguistiques (anglais ou espagnol, par exemple). (Non disponible pour les campagnes relatives au logement, à l’emploi et au crédit.)

position_type

Enchère basée sur la position de la publicité affichée, par exemple, facebook_feed, facebook_marketplace ou instagram_story.

publisher_platform

Enchère basée sur publisher_platform comme facebook, instagram, audience_network ou messenger.

travelstartdate

Enchère dont l’utilisation dépend de la date de départ. Par exemple, 20181231 correspond au 31 décembre 2018.

travelstartdayofweek

Enchère basée sur le jour de la semaine du départ. 0 correspond à lundi et 6 à dimanche.

user_bucket

Enchère basée sur la valeur user_bucket définie dans l’évènement d’application ou le déclenchement de pixel de l’annonceur. Le champ user_bucket est un paramètre facultatif dont la valeur est un nombre entier compris entre 0 et 100. (REMARQUE : 1. Non disponible pour les campagnes relatives au logement, à l’emploi et au crédit ; 2. Disponible uniquement pour le secteur de l’hôtellerie, à savoir lorsque content_type=« hotel »)

user_device

Enchère basée sur user_device, tel que iPhone. Voir user_device

user_os

Enchère basée sur user_os, tel qu’iOS ou Android.

user_recency

Enchère basée sur la date de dernière consultation du site ou de l’application par l’utilisateur·ice.

age

Groupez les utilisateur·ices par tranches d’âge, par exemple, 18-25, 26-35. Exemple : pour un ensemble de publicités associé à une enchère maximale de 5 USD, les enchères émises peuvent être de 2,5 USD pour les utilisateur·ices âgé·es de 18 à 25 ans, de 3,5 USD pour celles et ceux âgé·es de 26 à 40 ans et de 5 USD pour toutes les autres personnes. Remarque : l’option par défaut est facultative. Vous pouvez appliquer la valeur 1.0 comme multiplicateur.

Exemple

{
    "user_groups": {
      "age": {
        "18-25": 0.5,
        "26-40": 0.7,
        "default": 1.0
      }
    }
}

booking_window

Les valeurs de répartition possibles comprennent toute plage de nombres entiers supérieurs ou égaux à 1. Par exemple, 1-3, 4-9, etc.

Exemple

curl -X POST \ 
  -F 'bid_adjustments=
     {"user_groups":{"booking_window":{"event_sources":["123456789"],"1-2":0.1,"3-5":0.2,"default":0.5}}}' \ 
  -F 'access_token='$access_token \ 
  https://graph.facebook.com/<API_VERSION>/<ad_set_id>

Voir aussi Exemples de multiplicateur applicable aux voyages.

custom_audience

Depuis le 30 janvier 2023, les publicités qui utilisent un multiplicateur d’enchères avec des catégories de données tierces (booking_window, custom_audience (audiences personnalisées similaires incluses), lengthofstay, travelstartdate, travelstartdayofweek, user_recency, user_bucket) ne seront plus diffusées aux utilisateur·ices qui s’en sont désabonné·es.

Vous pouvez ajuster les enchères en fonction de vos audiences personnalisées.

Exemple

curl -X POST \ 
  -F 'bid_adjustments=
     {"user_groups":{"custom_audience":{"<CUSTOM_AUDIENCE_ID>":0.8, "<CUSTOM_AUDIENCE_ID>":1.0, "default":0.5}}}' \ 
  -F 'access_token='$access_token \ 
  https://graph.facebook.com/<API_VERSION>/<ad_set_id>

device_platform

Les valeurs de répartition possibles sont les suivantes :

  • mobile
  • desktop

Exemple

{
  "user_groups": {
    "device_platform": {
      "mobile": 0.7,
      "desktop": 0.9
    }
  }
}

gender

Groupez les utilisateur·ices par genre :

  • male
  • female
  • default

Exemple

{
  "user_groups": {
    "gender": {
      "male": 0.5,
      "female": 0.7,
      "default": 1.0
    }
  }
}

home_location

Les valeurs de répartition possibles sont les suivantes :

  • city id
  • region id
  • Code du pays à 2 chiffres

Pour obtenir city id et region id, utilisez l’API Search. Vous pouvez lancer une requête à partir de l’Explorateur de l’API Graph ou de votre terminal.

Remarque : la valeur default peut être définie uniquement pour home_location, pas pour cities, regions ou countries.

Exemple

{
  "user_groups": {
    "home_location": {
      "cities": {
         "2420605": 0.2
      },
      "regions": {
         "3847": 0.5
      },
      "countries": {
         "US": 0.2
      },
      "default": 0.8
     }
  }
}

length_of_stay

Les valeurs de répartition possibles comprennent toute plage de nombres entiers supérieurs ou égaux à 1. Par exemple, “1-3”, “4-9”, etc.

Exemple

curl -X POST \ 
  -F 'bid_adjustments=
  {"user_groups":{"length_of_stay":{"event_sources":["123456789"],"1-2":0.1,"3-     5":0.2,"default":0.5}}}' \ 
  -F 'access_token='$access_token \ 
  https://graph.facebook.com/<API_VERSION>/<ad_set_id>

Voir aussi Exemple de multiplicateur applicable aux voyages.

locale

Vous pouvez utiliser les ID de langue ou de groupes de langues, comme 6 pour l’anglais américain ou 5 pour l’allemand.

Vous pouvez trouver les ID de langue à l’aide de la Recherche de ciblage, Langue avec type=adlocale. Par exemple :

{
  "user_groups": {
    "locale": {
      6: 0.8,
      5: 0.3
    }
  }
}

position_type

Cette catégorie est similaire aux options de position dans l’API Targeting. Les valeurs de répartition possibles sont les suivantes :

PlacementValeur

Fil Facebook

facebook_feed

Facebook Marketplace

facebook_marketplace

Fils vidéo Facebook

facebook_suggested_video

Colonne de droite sur Facebook

facebook_right_hand_column

Facebook Business Explore

facebook_biz_disco_feed

Fil Instagram

instagram_stream

Fil du profil Instagram

instagram_profile_feed

Explorer Instagram

instagram_explore

Accueil Explorer Instagram

instagram_explore_home

Boîte de réception Messenger

messenger_messenger_home

Stories Instagram

instagram_story

Stories Facebook

facebook_story

Stories Messenger

messenger_story

Instagram Reels

instagram_reels

Facebook Reels

facebook_facebook_reels

Vidéos in-stream Facebook

facebook_instream_video

Publicités dans Facebook Reels

facebook_facebook_reels_overlay

Résultats de recherche Facebook

facebook_search

Résultats de recherche Instagram

instagram_ig_search

Messages sponsorisés Messenger

Pas pris en charge

Formats natif, bandeau et interstitiel Audience Network

audience_network_classic

Vidéos avec récompense Audience Network

audience_network_rewarded_video

Vidéos in-stream Audience Network

Non compatible

Exemple

{
  "user_groups": {
    "position_type":{
        "facebook_feed":0.9,
        "messenger_messenger_home":0.7,
        "instagram_stream":0.8,
        "audience_network_classic":0.5,
        "default":0.4
    }
  }
}

publisher_platform

Les valeurs de répartition possibles sont les suivantes :

  • facebook
  • instagram
  • audience_network
  • messenger

Exemple

{
  "user_groups": {
    "publisher_platform": {
      "facebook": 0.7,
      "instagram": 0.9,
      "default": 1.0 // We'll apply bid multiplier 1.0 if no default is specified anyway
    }
  }
}

travel_start_date

Les valeurs de répartition possibles comprennent toute plage de dates au format _yyyymmdd_-_yyyymmdd_.

Exemple

curl -X POST \ 
  -F 'bid_adjustments=
     {"user_groups":{"travel_start_date":{"event_sources":["123456789"],"20180901-20181001":0.2,"default":0.9}}}' \ 
  -F 'access_token='$access_token \ 
  https://graph.facebook.com/<API_VERSION>/<ad_set_id>

Voir aussi Exemple de multiplicateur applicable aux voyages.

travel_start_day_of_week

Les valeurs de répartition possibles comprennent tout entier entre 0 et 6 inclus. 0 correspond à lundi et 6 à dimanche.

Exemple

curl -X POST \ 
  -F 'bid_adjustments=
  {"user_groups":{"travel_start_day_of_week":{"event_sources":        ["123456789"],"0":0.1,"2":0.2,"6":0.3,"default":0.9}}}' \ 
  -F 'access_token='$access_token \ 
  https://graph.facebook.com/<API_VERSION>/<ad_set_id>

Voir aussi Exemples de multiplicateur applicable aux voyages.

user_bucket

Vous pouvez nous transmettre les résultats issus de votre propre classificateur d’utilisateur·ices. Envoyez-nous ensuite un paramètre user_bucket supplémentaire dans les déclenchements du pixel ou les évènements d’application. Les tranches d’utilisateur·ices correspondent à des nombres entiers compris entre 0 et 100.

Spécifiez la définition du groupe d’utilisateur·ices au format suivant :

  • event_sources : source du déclenchement du pixel ou de l’évènement d’application à suivre.
  • event_retention : facultatif. Durée, en secondes, pendant laquelle ignorer les anciennes valeurs user_bucket.
  • events_dedup_mode : facultatif. Marquez pour indiquer la valeur user_bucket à utiliser quand une source d’évènement unique envoie différentes valeurs user_bucket à la même personne. La valeur par défaut est latest.
  • event_source_preference : facultatif. Marquez pour indiquer la valeur user_bucket à utiliser quand plusieurs sources d’évènement envoient différentes valeurs user_bucket à la même personne. La valeur par défaut est latest.

Exemple

{
  "user_groups": {
   "user_bucket": {
      "event_sources": [<pixel_id>,<app_id>,...],
      "event_retention": 604800, // optional, exclude old events
      
      //optional, useful when multiple event sources have user_bucket
      "events_dedup_mode": "max"|"min"|"latest",
      
      //optional, dedup user_bucket values sent from one single event source
      "event_source_preference": "max"|"min"|"latest",
      
      "1":0.7, // these are the bid multipliers
      "2":1.0,
     }
  }
}

user_device

Les valeurs de répartition possibles sont les suivantes :

  • iPad
  • iPhone

Pour voir les valeurs possibles, consultez l’API Targeting Search avec type=adTargetingCategory et class=user_device.

Exemple

{
  "user_groups": {
    "user_device": {
      "iPad": 0.7,
      "iPhone": 0.9,
      "default": 1.0
    }
  }
}

Exemple

curl
  -F 'name=Test BM Adset '$(date +%s) \
  -F 'bid_amount=3000' \
  -F 'billing_event=IMPRESSIONS' \
  -F 'optimization_goal=OFFSITE_CONVERSIONS' \
  -F 'daily_budget=15000' \
  -F 'campaign_id=23843038336220329' \
  -F 'promoted_object={"product_set_id":"267888283975766"}' \
  -F 'targeting={
     "geo_locations": {"countries":["AQ"]},
     "dynamic_audience_ids": ["23842885952670329"],
     "publisher_platforms": ["facebook"]
    }' \
  -F 'bid_adjustments={"user_groups":{"user_device": {"iPad": 0.7, "iPhone": 0.9, "default": 1.0}}}' \
  -F 'status=PAUSED' \
  -F 'access_token='$access_token \
  https://graph.facebook.com/<API_VERSION>/act_1653439931385336/adsets

Exemple

curl
  -F 'name=Test BM Adset '$(date +%s) \
  -F 'bid_amount=3000' \
  -F 'billing_event=IMPRESSIONS' \
  -F 'optimization_goal=OFFSITE_CONVERSIONS' \
  -F 'daily_budget=15000' \
  -F 'campaign_id=23843038336220329' \
  -F 'promoted_object={"product_set_id":"267888283975766"}' \
  -F 'targeting={
     "geo_locations": {"countries":["AQ"]},
     "dynamic_audience_ids": ["23842885952670329"],
     "publisher_platforms": ["facebook"]
     }' \
  -F 'bid_adjustments={"user_groups":{"user_device": {"iPad": 0.7, "iPhone": 0.9, "default": 1.0}}}' \
  -F 'status=PAUSED' \
  -F 'access_token='$access_token \
   https://graph.facebook.com/<API_VERSION>/act_1653439931385336/adsets
   {"id":"23843038339320329"}

Exemple

curl
  -F 'access_token='$access_token \
  https://graph.facebook.com/VERSION/ID?fields=bid_adjustments
  {"bid_adjustments":{"user_groups":"{\"user_device\":    {\"default\":1,\"iPad\":0.7,\"iPhone\":0.9}}"},"id":"ID"}

Voir aussi Exemple avancé.

user_group_weight_spec

Les valeurs de répartition possibles sont les suivantes :

  • age
  • gender
  • device_platform
  • publisher_platform
  • user_device
  • user_os

Voir aussi Exemple avancé.

Exemple : user_group_weight_spec est une structure JSON similaire à ce qui suit :

{
  <BREAKDOWN_NAME>: {
    <BREAKDOWN_VALUE_1>: <WEIGHT_VALUE> OR <NESTED_USER_GROUP_WEIGHT_SPEC>,
    <BREAKDOWN_VALUE_2>: <WEIGHT_VALUE> OR <NESTED_USER_GROUP_WEIGHT_SPEC>,
    <BREAKDOWN_VALUE_3>: <WEIGHT_VALUE> OR <NESTED_USER_GROUP_WEIGHT_SPEC>,
    ...
    "default": <WEIGHT_VALUE> OR <NESTED_USER_GROUP_WEIGHT_SPEC>, // optional, if not specified, we'll use 1.0
  }
}
{
  "age": {
    "18-25": 0.7,
    "26-35": {
      "gender": {
        "male": 0.9,
        "female": 1.0
      }
    },
    "default": 0.85
  }
}

* For users between the ages of 18 and 25, we apply bid multiplier 0.7.
* For male users between the ages of 26 and 35, we apply bid multiplier 0.9.
* For female users between the ages of 26 and 35, we apply bid multiplier 1.0.
* For all other users, we apply bid multiplier 0.85.

Les valeurs de répartition sont des tranches d’âge (nombres entiers). Par exemple, dans 18-25, l’âge minimum est 18 ans. Les plages ne doivent pas se chevaucher.

Exemple

{
  "user_groups": {
    "age": {
      "18-25": 0.7,
      "30-40": 1.0,
      "default": 0.3
    }
  }
}

Exemple avancé

> curl 
    -F 'bid_adjustments={"user_groups":{"user_device":{"iPad":0.3,"iPhone":{"user_os":{"Android":0.3,"iOS":{"age":{"18-35":0.3,"35-45":0.4}}}}}}}' -F access_token=$token https://graph.intern.facebook.com/v2.12/6089875504114
{"success":true}%
> curl -G 
   -d access_token=$token https://graph.intern.facebook.com/v2.12/6089875504114\?  fields\=bid_adjustments
{"bid_adjustments":{"user_groups":"{\"user_device\":{\"iPad\":0.3,\"iPhone\":{\"user_os\":{\"Android\":0.3,\"iOS\":{\"age\":{\"18-35\":0.3,\"35-45\":0.4}}}}}}"},"id":"6089875504114"}%

Exemples de multiplicateur applicable aux voyages

curl -X POST \
  -F 'bid_adjustments={"user_groups":{"travel_start_day_of_week":{"event_sources":["1862565504034757"],"1":0.1,"3":0.1,"default":0.9}}}' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/<API_VERSION>/<ADSET_ID>

  Length of Stay 'bid_adjustments={"user_groups":{"length_of_stay":{"event_sources":["1862565504034757"],"1-2":0.1,"3-7":0.2,"default":0.5}}}'
  Booking window 'bid_adjustments={"user_groups":{"booking_window":{"event_sources":["1862565504034757"],"1-2":0.1,"3-7":0.2,"default":0.5}}}'
  Travel start date: 'bid_adjustments={"user_groups":{"travel_start_date":{"event_sources":["1862565504034757"],"20180918-20190101":0.1,"default":0.5}}}'
  Day of week: 'bid_adjustments={"user_groups":{"travel_start_day_of_week":{"event_sources":["1862565504034757"],"1":0.1,"2":0.1,"0":0.2,"default":0.5}}}'

user_os

Les valeurs de répartition possibles sont les suivantes :

  • iOS
  • Windows

Les valeurs possibles sont disponibles dans l’API Targeting Search avec type=adTargetingCategory et class=user_os.

Les valeurs actuellement prises en charge sont les suivantes :

  • Android
  • Windows
  • Windows Phone
  • iOS

Exemple

{
  "user_groups": {
    "user_os": {
      "Android": 0.7,
      "iOS": 0.9,
      "default": 1.0
    }
  }
}

Impact d’iOS 14

Le multiplicateur d’enchères pour les campagnes de conversion sur un site Web sera-t-il affecté par les nouvelles règles d’iOS 14 ?

Oui. Nous estimons que ces changements introduits dans iOS 14 entraîneront une perte de signaux et des attributions moins identifiables, et donc une baisse du nombre de signaux par ensemble de publicités. Pour la plupart, les catégories sur lesquelles vous pouvez enchérir devraient continuer de fonctionner comme auparavant, mais les multiplicateurs associés à la récence, aux audiences personnalisées et à user_bucket seront impactés s’ils ciblent les utilisateur·ices d’iOS 14.5, car ces multiplicateurs dépendent d’évènements mesurés par le pixel Meta ou par l’API Conversions. Tous les autres multiplicateurs proviennent de données sur site et ne reposent pas sur le pixel Meta ni sur l’API Conversions.

user_recency

Regroupez les utilisateur·ices selon des considérations de période de temps en raison des déclenchements du pixel ou des évènements d’application. Vous devez indiquer les sources d’évènement à suivre et les fenêtres temporelles.

Exemple

Cet exemple montre comment appliquer le multiplicateur d’enchères 1.0 pour les utilisateur·ices avec un déclenchement de pixel ou des évènements d’application en 86400 secondes, etc.

{
  "user_groups": {
    "user_recency": {
      "event_sources": [<pixel_id>,<app_id>,...],
      "0-86400": 1.0,
      "86401-172800": 0.7,
      "default": 0.5
    }
  }
}

Répartitions en cascade

Vous pouvez également définir des groupes d’utilisateur·ices avec plusieurs répartitions en remplaçant un multiplicateur d’enchères flottantes par une spécification de répartition supplémentaire. Par exemple, un ensemble de publicités avec une configuration d’enchère de 5 USD maximum ressemblerait à ce qui suit :

  • enchère de 4,5 USD pour les hommes
  • enchère de 3,5 USD pour les femmes âgées de 18 à 25 ans
  • enchère de 4 USD pour les femmes âgées de 26 à 35 ans
  • enchère de 5 USD pour toutes les autres personnes
{
  "user_groups": {
    "gender": {
      "male": 0.9,
      "female": {
        "age": {
          "18-25": 0.7,
          "26-35": 0.8
        }
      }
    }
  }
}

Conditions d’utilisation

  • La valeur du multiplicateur d’enchères peut être comprise entre 0.09 et 1.0.

Appels d’API

Obtenir

curl -G \
  -d 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/<API_VERSION>/<ADSET_ID>?fields=bid_adjustments

Mettre à jour

curl \
  -F 'bid_adjustments={"user_groups":<USER_GROUP_WEIGHT_SPEC>}' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/<API_VERSION>/<PRODUCT_CATALOG_ID>/<ADSET_ID>

Créer ou mettre à jour un multiplicateur d’enchères pour un ensemble de publicités

Voici un exemple d’appel d’API pour la mise à jour d’un ensemble de publicités existant. (Vous devez remplacer ces valeurs par l’ID d’ensemble de publicités, le token d’accès, les sources d’évènement et les multiplicateurs d’enchères souhaités.)

curl -X POST \
  -F 'bid_adjustments={
       "user_groups": {
         "user_bucket": {
           "event_sources": [
             "<PIXEL_ID>",
             "<APP_ID>"
           ],
           "1": 0.1,
           "2": 0.2,
           "3": 0.3,
           "default": {
             "gender": {
               "male": 0.99,
               "female": 0.12
             }
           }
         }
       }
     }' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v21.0/<AD_SET_ID>/

Configurer la campagne de test

Créez vos campagnes de test à l’aide d’un conversion lift ou d’un test par répartition en collaboration avec votre équipe de compte Meta et votre responsable des mesures. Pour évaluer les performances, nous suggérons d’utiliser les cellules suivantes dans le cadre d’un test par répartition à 3 composantes :

  • Cellule 1 (Contrôle A), Campagne 1 : 1 ensemble de publicités avec 1 enchère pour toutes les personnes ciblées
  • Cellule 2 (Contrôle B), Campagne 2 : Plusieurs ensembles de publicités ; cela consiste à créer un ensemble de publicités pour chaque groupe d’utilisateur·ices. (Vous pouvez utiliser les règles d’audience personnalisées pour les sites Web ou les applications mobiles afin de segmenter votre audience en fonction d’autres paramètres de pixel ou d’application).
  • Cellule 3 (Test), Campagne 3 : 1 ensemble de publicités, avec différents multiplicateurs d’enchères pour différents groupes d’utilisateur·ices. Assurez-vous que l’enchère ajustée pour chaque groupe d’utilisateur·ices est identique à l’enchère au niveau de l’ensemble de publicités correspondant à celui de la Cellule 2.

Configurer les tests par répartition

À ce stade, vous devez configurer les tests par répartition et les groupes de contrôle pour vérifier les performances à l’aide du multiplicateur d’enchères. Nous exécutons les tests pendant 1 à 2 semaines et n’exigeons pas de budget minimal. Configurez les tests par répartition comme suit :

  • Cellule 1, Contrôle A doit contenir un seul ensemble de publicités avec un seul montant d’enchère, et le ciblage doit être basé sur tous les user_bucket.
  • Cellule 2, Contrôle B doit contenir plusieurs ensembles de publicités, avec un ensemble par user_bucket. Chaque ensemble de publicités doit cibler un user_bucket distinct et l’enchère correspondante. Vous pouvez utiliser les règles d’audience personnalisées pour les sites Web ou les applications mobiles afin de segmenter davantage votre audience en fonction d’autres paramètres Pixel Meta ou App Events. Voir Audiences personnalisées de site Web et Audiences personnalisées pour application mobile.
  • Cellule 3, Test contient un ensemble de publicités avec votre propriété bid_adjustment qui détermine des enchères différentes pour chaque user_bucket. Vos multiplicateurs doivent correspondre aux enchères d’ensemble de publicités spécifiques de la Cellule 2 (Contrôle B).

Pour plus d’informations, voir Test par répartition.

Configurer la campagne de test

Configurez les campagnes publicitaires de la même manière que les campagnes normales. Contactez votre représentant·e Meta pour obtenir de l’aide lors de la configuration de l’ajustement de vos enchères.

Configurez user_groups et différents multiplicateurs d’enchères pour chaque groupe. Vos groupes sont basés sur des caractéristiques démographiques, telles que l’âge, le genre et certaines informations spécifiques, telles que le score de l’utilisateur·ice ou le programme de fidélité. Par exemple :

{
   "user_bucket":{
      "business_id":253286871795863,
      "1":0.7,
      "2":1.0,
      "3":{
         "gender":{
            "male":1.0,
            "female":0.8
         }
      },
      "default": 0.9
   }
}

Dans cet exemple :

  • Appliquez un multiplicateur d’enchères de 0.7 aux personnes pour lesquelles loyalty_program est défini sur 1.
  • Appliquez un multiplicateur d’enchères de 1.0 aux personnes pour lesquelles loyalty_program est défini sur 2.
  • Appliquez un multiplicateur d’enchères de 1.0 aux hommes pour lesquels loyalty_program est défini sur 3.
  • Appliquez un multiplicateur d’enchères de 0.8 aux femmes pour lesquelles loyalty_program est défini sur 3.
  • Appliquez un multiplicateur d’enchères de 0.9 aux personnes pour lesquelles loyalty_program est défini sur une valeur autre que 1, 2 ou 3.
  • Pour tous les autres, appliquez le multiplicateur d’enchères 1.

Vous pouvez maintenant créer la campagne publicitaire :

curl -X POST \
  -F 'name="My Adset with bid multiplier"' \
  -F 'campaign_id="<AD_CAMPAIGN_ID>"' \
  -F 'daily_budget=3000' \
  -F 'billing_event="IMPRESSIONS"' \
  -F 'optimization_goal="OFFSITE_CONVERSIONS"' \
  -F 'bid_amount=500' \
  -F 'bid_adjustments={
       "user_groups": {
         "gender": {
           "male": 0.8,
           "female": 1
         }
       }
     }' \
  -F 'promoted_object={
       "product_set_id": "<PRODUCT_SET_ID>",
       "custom_event_type": "ADD_TO_CART"
     }' \
  -F 'targeting={
       "facebook_positions": [
         "feed"
       ],
       "geo_locations": {
         "countries": [
           "US"
         ]
       }
     }' \
  -F 'status="PAUSED"' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adsets

Une fois que vous avez créé vos ensembles de publicités, définissez bid_adjustments sur l’ensemble de publicités via l’API. Le paramètre devrait ressembler à ceci :

{
  "user_groups": {
    "user_bucket": {
      "event_sources": [<pixel_id>,<app_id>,...],
      "event_source_preference": "max"|"min"|"latest", //optional, useful when multiple event sources have user_bucket
      "events_dedup_mode": "max"|"min"|"latest", //optional, dedup user_bucket values sent from one single event source
      "event_retention": 604800, // optional, exclude old events
      "1":0.7, // these are the bid multipliers
      "2":1.0,
      "default": { // used in the case that we don't have user_bucket for that user
         gender:{ // this is a nested example, but you could just do "default": 1.0,
            "male": {
              home_location: {
                  cities: { // city id, can be found in search API, eg: search?type=adgeolocation&q=Menlo Park&limit=10
                    "2420605": 0.2,
                  },
                  regions: {
                    "3847": 0.5
                  },
                  countries: {
                    "US": 0.2
                  }
                }
              }
            },
            "female": {
              "user_recency": {
                "event_sources": [<pixel_id>,<app_id>,...],
                "0-86400": 0.5,
                "86400-172800": 0.7,
                "default": 0.2
              }
            }
         },
      },
   },
}

Nous ne validons pas ce paramètre pour le moment. Envoyez l’ID de votre ensemble de publicités à votre représentant·e Meta afin que nous procédions à une vérification manuelle.

Pour chaque source d’évènement, nous utilisons la dernière valeur user_bucket reçue pour cet·te utilisateur·ice. Toutefois, si plusieurs sources d’évènement sont spécifiées (par exemple, pixel et application), et qu’au moins 2 d’entre elles aient enregistré leur propre user_bucket, nous prenons le maximum pour toutes.

Voici un exemple d’appel permettant de mettre à jour un ensemble de publicités existant. Vous devez fournir vos propres ID d’ensemble de publicités, token d’accès, sources d’évènement et multiplicateurs d’enchères :

curl -X POST 
  -F access_token=<access_token> \
  -F 'bid_adjustments={"user_groups": {"user_bucket": {"event_sources": [<pixel_id>,  <app_id>,...], "1": 0.1, "2": 0.2, "3": 0.3, "default": {"gender": {"male": 0.99, "female": 0.1}} }} }' \ 
  https://graph.facebook.com/<VERSION>/<ad-set-id>