Multiplicadores de lances

OBSERVAÇÃO: esta API está disponível de forma limitada aos parceiros e anunciantes que estão na lista de permissão. Caso queira usá-la, entre em contato com um representante da Meta.

Com os multiplicadores de lances, os anunciantes podem reduzir a quantidade de segmentação de público necessária porque o recurso permite manter uma estratégia de lances diferenciada em um único conjunto de anúncios com um público direcionado. Por exemplo, os anunciantes normalmente criam conjuntos de anúncios para que possam fazer lances diferentes para vários segmentos de público. Por exemplo, um anunciante pode criar 3 conjuntos de anúncios correspondentes a 3 faixas etárias diferentes: 18 a 25; 26 a 35; 36 a 65. Com o multiplicador de lances, um anunciante pode criar um único conjunto de anúncios e, depois, usar os multiplicadores de maneira diferente para cada um desses grupos.

Os anunciantes que veiculam anúncios de crédito, emprego ou moradia que são sediados nos Estados Unidos ou direcionam anúncios para o país têm restrições diferentes e um subconjunto de categorias de público para ajustar os lances. Não é possível ajustar lances em campanhas de anúncios de crédito, emprego ou moradia nas categorias de público age, gender, locale, home_location, user_bucket e custom_audience de público semelhante (um público personalizado com origem em um público semelhante). Consulte Categorias de anúncio especial.

Desde 30 de janeiro de 2023, anúncios que usam um multiplicador de lances com categorias de dados de terceiros, como booking_window, custom_audience (incluindo públicos personalizados semelhantes), lengthofstay, travelstartdate, travelstartdayofweek, user_recency e user_bucket, não serão mais veiculados aos usuários que recusaram o recurso.

Boas práticas de multiplicadores de lances

  • Use estratégias de lances personalizadas sem precisar criar muitos segmentos de público ou conjuntos de anúncios. Isso ajuda você a melhorar a veiculação de anúncios, ao mesmo tempo que evita segmentar demais as campanhas em um número maior de conjuntos de anúncios com públicos relativamente pequenos.
  • No passado, era possível criar três conjuntos de anúncios correspondentes a três faixas etárias diferentes. Depois, você podia dar lances separadamente para cada um desses conjuntos de anúncios. Agora, você pode criar um único conjunto de anúncios e usar multiplicadores de lances de maneira diferente para cada uma dessas faixas etárias. O intervalo de multiplicadores de lances é de 0,09 a 1,0.
  • Os multiplicadores de lances devem ser especificados com uma única chave user_groups.
  • Os multiplicadores de lances estão disponíveis em campanhas de leilão.
  • Todas as estratégias são compatíveis com multiplicadores de lances. Em específico: limite de lance, limite de custo e menor custo.

Configurar categorias de público

Com o multiplicador de lances, você pode definir categorias de público e atribuir um multiplicador de lances para cada uma delas. As categorias de público são definidas com base nas informações demográficas e no dispositivo do usuário, bem como nos dados personalizados do anunciante. Não é possível atribuir lances em campanhas de anúncios de crédito, emprego ou moradia nas categorias de público age, gender, locale, home_location, user_bucket e custom_audience de público semelhante (um público personalizado com origem em um público semelhante).

PrioridadeDescrição

age

Faça lances de maneira diferente com base na idade ou na faixa etária. Indisponível para campanhas de anúncios de crédito, emprego ou moradia.

booking_window

Faça lances de maneira diferente com base no número de dias até o início da viagem.

custom_audience

Faça lances com base no custom_audience do qual o usuário faz parte. Públicos semelhantes são compatíveis com essa opção, exceto em campanhas de anúncios de crédito, emprego ou moradia.

device_platform

Faça lances de maneira diferente com base na plataforma de dispositivos do usuário, como móvel ou desktop.

gender

Faça lances de maneira diferente com base no gênero. Indisponível para campanhas de anúncios de crédito, emprego ou moradia.

home_location

Faça lances com base na home_location do usuário. Isso representa a localização atual dele. O multiplicador home_location pode ser dividido em cidades, regiões e países. Indisponível para campanhas de anúncios de crédito, emprego ou moradia.

lengthofstay

Faça lances com base no número de dias entre o início e o fim da viagem.

locale

Faça lances de maneira diferente com base no idioma da localidade, como inglês ou espanhol. Indisponível para campanhas de anúncios de crédito, emprego ou moradia.

position_type

Faça lances com base no posicionamento de exibição de um anúncio. Por exemplo, facebook_feed, facebook_marketplace ou instagram_story.

publisher_platform

Faça lances com base na publisher_platform (como facebook, instagram, audience_network, messenger).

travelstartdate

Faça lances de maneira diferente com base na data em que a viagem inicia. Por exemplo, 20181231 é 31 de dezembro de 2018.

travelstartdayofweek

Faça lances com base no dia da semana em que a viagem inicia. 0 é segunda-feira e 6 é domingo.

user_bucket

Faça lances com base no valor de user_bucket definido no disparo do pixel ou no evento do app do anunciante. O campo user_bucket é um parâmetro opcional expresso em um número inteiro entre 0 e 100. Observações: 1. Indisponível para campanhas de anúncios de crédito, emprego ou moradia. 2. Disponível apenas para hotéis (ou seja, quando content_type="hotel").

user_device

Faça lances com base no user_device, como iPhone. Consulte user_device.

user_os

Faça lances com base no user_os, como iOS ou Android.

user_recency

Faça lances com base em quando o usuário visitou o site ou app pela última vez.

age

Agrupe os usuários por faixas etárias (como 18-25, 26-35). Por exemplo, para um conjunto de anúncios com limite de lance de USD 5, faça um lance de USD 2,5 para usuários com idade entre 18 e 25 anos, um lance de USD 3,5 para usuários com idade entre 26 e 40 anos e um lance de USD 5 para todos os usuários. Observação: o padrão é opcional. Você pode aplicar o multiplicador 1.0.

Exemplo

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

booking_window

Os possíveis valores de detalhamento incluem qualquer intervalo de números inteiros maior ou igual a 1. Por exemplo, 1-3, 4-9 e assim por diante.

Exemplo

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>

Veja também Exemplo de multiplicador de viagem.

custom_audience

Desde 30 de janeiro de 2023, anúncios que usam um multiplicador de lances com categorias de dados de terceiros, como booking_window, custom_audience (incluindo públicos personalizados semelhantes), lengthofstay, travelstartdate, travelstartdayofweek, user_recency e user_bucket, não serão mais veiculados aos usuários que recusaram o recurso.

Você pode ajustar os lances com base nos seus públicos personalizados.

Exemplo

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

Possíveis valores de detalhamento:

  • mobile
  • desktop

Exemplo

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

gender

Agrupe os usuários por gênero:

  • male
  • female
  • default

Exemplo

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

home_location

Possíveis valores de detalhamento:

  • city id
  • region id
  • Código do país com dois dígitos

Você pode encontrar city id e region id na API de Pesquisa. Para fazer consultas, use o Explorador da Graph API ou seu terminal.

Observação: o default só pode ser definido em home_location, e não em cities, regions nem countries.

Exemplo

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

length_of_stay

Os possíveis valores de detalhamento incluem qualquer intervalo de números inteiros maior ou igual a 1. Por exemplo, “1-3”, “4-9” e assim por diante.

Exemplo

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>

Veja também Exemplo de multiplicador de viagem.

locale

Você pode usar IDs de localidade ou de grupo de localidades, como 6 para inglês dos EUA ou 5 para alemão.

Encontre os IDs de localidade com a Pesquisa de direcionamento: Locais usando type=adlocale. Por exemplo:

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

position_type

Essa categoria é semelhante às opções de posicionamento na API de Direcionamento. Possíveis valores de detalhamento:

PosicionamentoValor

Feed do Facebook

facebook_feed

Facebook Marketplace

facebook_marketplace

Feeds de vídeo do Facebook

facebook_suggested_video

Coluna da direita do Facebook

facebook_right_hand_column

Facebook Business Explore

facebook_biz_disco_feed

Feed do Instagram

instagram_stream

Feed do perfil do Instagram

instagram_profile_feed

Explorar do Instagram

instagram_explore

Página inicial do Explorar do Instagram

instagram_explore_home

Caixa de Entrada do Messenger

messenger_messenger_home

Instagram Stories

instagram_story

Facebook Stories

facebook_story

Messenger Stories

messenger_story

Instagram Reels

instagram_reels

Facebook Reels

facebook_facebook_reels

Vídeos in-stream do Facebook

facebook_instream_video

Anúncios no Facebook Reels

facebook_facebook_reels_overlay

Resultados da pesquisa do Facebook

facebook_search

Resultados da pesquisa do Instagram

instagram_ig_search

Mensagens patrocinadas no Messenger

Não compatível

Nativo, banner e intersticial do Audience Network

audience_network_classic

Vídeos com incentivo do Audience Network

audience_network_rewarded_video

Vídeos in-stream do Audience Network

Não compatível

Exemplo

{
  "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

Os valores de detalhamento possíveis são:

  • facebook
  • instagram
  • audience_network
  • messenger

Exemplo

{
  "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

Os possíveis valores de detalhamento incluem qualquer intervalo de datas no formato _yyyymmdd_-_yyyymmdd_.

Exemplo

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>

Veja também Exemplo de multiplicador de viagem.

travel_start_day_of_week

Os possíveis valores de detalhamento incluem qualquer número inteiro de 0 a 6. 0 é segunda-feira e 6 é domingo.

Exemplo

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>

Veja também Exemplo de multiplicador de viagem.

user_bucket

Você pode enviar os resultados do seu próprio classificador de usuários. Depois, envie um parâmetro user_bucket adicional em disparos de pixel ou eventos do app. Os grupos de usuários são números inteiros entre 0 e 100.

Especifique a definição do grupo de usuários com o seguinte formato:

  • event_sources – Origem do disparo do pixel ou evento do app para rastrear.
  • event_retention – Opcional. Tempo, em segundos, para ignorar os valores user_bucket antigos.
  • events_dedup_mode – Opcional. Sinalize para indicar qual valor user_bucket será usado quando uma única origem de evento envia valores user_bucket diferentes para o mesmo usuário. O valor-padrão é latest.
  • event_source_preference – Opcional. Sinalize para indicar qual user_bucket será usado quando várias origens de evento enviam valores user_bucket diferentes para o mesmo usuário. O valor-padrão é latest.

Exemplo

{
  "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

Possíveis valores de detalhamento:

  • iPad
  • iPhone

Confira outros valores possíveis na API de Pesquisa de Direcionamento com type=adTargetingCategory e class=user_device.

Exemplo

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

Exemplo

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

Exemplo

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"}

Exemplo

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"}

Veja também Exemplo avançado.

user_group_weight_spec

Possíveis valores de detalhamento:

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

Veja também Exemplo avançado.

Exemplo – O user_group_weight_spec é uma estrutura JSON e tem esta aparência:

{
  <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.

Os valores de detalhamento são faixas etárias de números inteiros. Por exemplo, 18-25, em que a idade mínima é 18 e os intervalos não devem se sobrepor.

Exemplo

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

Exemplo avançado

> 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"}%

Exemplos de multiplicadores de viagem

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

Possíveis valores de detalhamento:

  • iOS
  • Windows

Confira outros valores possíveis na API de Pesquisa de Direcionamento com type=adTargetingCategory e class=user_os.

Veja os valores compatíveis atualmente:

  • Android
  • Windows
  • Windows Phone
  • iOS

Exemplo

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

Impacto do iOS14

O multiplicador de lances para campanhas de conversão no site será afetado pelas alterações na política do iOS 14?

Sim. Prevemos perda de sinal e redução da capacidade de identificação da atribuição devido a alterações no iOS 14, resultando em um número menor de sinais por conjunto de anúncios. Embora a maioria das categorias de lances deva continuar funcionando normalmente, os multiplicadores de recentidade, público personalizado e user_bucket serão afetados se você fizer o direcionamento para usuários do iOS 14.5. Isso acontece porque os multiplicadores em questão dependem de eventos mensurados pelo pixel do Facebook ou pela API de Conversões. Todos os outros multiplicadores vêm de dados no site e não dependem do pixel do Facebook nem da API de Conversões.

user_recency

Agrupe usuários por tempo porque eles têm inicialização por pixel ou eventos do app. Você deve especificar quais origens de evento rastrear e as janelas de tempo.

Exemplo

Este exemplo mostra como aplicar o multiplicador de lances 1.0 para usuários que têm um disparo de pixel ou eventos do app em 86400 segundos e assim por diante.

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

Vários detalhamentos em cascata

Você também pode definir grupos de usuários com vários detalhamentos, substituindo um número float de multiplicador de lances com uma especificação a mais de detalhamento. Por exemplo, um conjunto de anúncios com lance máximo de USD 5 e esta configuração:

  • lance de USD 4,5 para usuários homens
  • lance de USD 3,5 para usuárias entre 18 e 25 anos
  • lance de USD 4,0 para usuárias entre 26 e 35 anos
  • lance de USD 5,0 para todos os outros usuários
{
  "user_groups": {
    "gender": {
      "male": 0.9,
      "female": {
        "age": {
          "18-25": 0.7,
          "26-35": 0.8
        }
      }
    }
  }
}

Requisitos de uso

  • O valor do multiplicador de lances pode variar de 0.09 a 1.0.

Chamadas de API

Obter

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

Atualizar

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>

Criar ou atualizar um multiplicador de lances para um conjunto de anúncios

Veja abaixo uma chamada de API de amostra para atualizar um conjunto de anúncios existente. Será necessário substituir a identificação do conjunto de anúncios, o token de acesso, as origens de evento e os multiplicadores de lances desejados.

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>/

Configurar campanha de teste

Crie campanhas de teste usando um conversion lift ou um teste A/B. Para isso, trabalhe com a liderança de mensuração e a equipe de contas da Meta. Para avaliar o desempenho, sugerimos as seguintes células em um teste A/B de três partes:

  • Célula 1 (Controle A), Campanha 1 – 1 conjunto de anúncios com 1 lance para todos os usuários direcionados.
  • Célula 2 (Controle B), Campanha 2 – Vários conjuntos de anúncios nos quais criamos um conjunto para cada grupo de usuários. Use regras de públicos personalizados de site/celular para fazer o direcionamento com base nos parâmetros de pixel/app.
  • Célula 3 (Teste), Campanha 3 – 1 conjunto de anúncios com diferentes multiplicadores de lances para diferentes grupos de usuários. Verifique se o lance ajustado para cada grupo de usuário aqui é o mesmo do lance no nível do conjunto de anúncios para o conjunto correspondente na Célula 2.

Configurar testes A/B

Nesse momento, você deve configurar os testes A/B. e os grupos de controle para verificar o desempenho usando o multiplicador de lances. Executamos os testes por uma ou duas semanas e não exigimos um orçamento mínimo. Configure os testes A/B da seguinte maneira:

  • Célula 1, Controle A – Deve conter um conjunto de anúncios com um valor de lance, e o direcionamento deve ser baseado em todos os user_buckets.
  • Célula 2, Controle B – Deve conter vários conjuntos de anúncios com um conjunto por user_bucket. Cada conjunto de anúncios deve fazer o direcionamento de um user_bucket específico e o lance correspondente. Você pode usar as regras de públicos personalizados de site ou dispositivos móveis para segmentar mais o público com base em outros parâmetros do Pixel da Meta ou dos eventos do app. Consulte Públicos Personalizados do site e Públicos Personalizados do aplicativo para celular.
  • Célula 3, Teste – Contém um conjunto de anúncios com a propriedade bid_adjustment para determinar diferentes lances para cada user_bucket. O multiplicador deve corresponder a lances individuais de conjunto de anúncios na Célula 2, Controle B.

Para saber mais, consulte Teste A/B.

Configurar campanha de teste

Configure uma campanha de anúncio como faz com as campanhas normais. Fale com seu representante da Meta para ajudar a configurar o ajuste de lance.

Configure user_groups e diferentes multiplicadores de lances para cada grupo. Os grupos são baseados em propriedades demográficas, como idade, gênero e propriedades específicas, como pontuação do usuário ou programa de fidelidade. Por exemplo:

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

Neste exemplo:

  • Para pessoas com valor loyalty_program de 1, aplicar o multiplicador de lances 0,7
  • Para pessoas com valor loyalty_program de 2, aplicar o multiplicador de lances 1,0
  • Para homens com valor loyalty_program de 3, aplicar o multiplicador de lances 1,0
  • Para mulheres com valor loyalty_program de 3, aplicar o multiplicador de lances 0,8
  • Para pessoas com valor loyalty_program diferente de 1, 2 ou 3, aplicar o multiplicador de lances 0,9
  • Para todos os outros, aplicar o multiplicador de lances 1,0

Agora, você pode criar a campanha de anúncios:

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

Depois de criar os conjuntos de anúncios, defina bid_adjustments usando a API. O parâmetro deve ficar assim:

{
  "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
              }
            }
         },
      },
   },
}

No momento, não validamos esse parâmetro. Envie a identificação do conjunto de anúncios ao representante da Meta para que possamos fazer a verificação manualmente.

Para cada origem de evento, é usado o user_bucket recebido mais recentemente para o usuário. Porém, se forem especificadas várias origens de evento (por exemplo, pixel e app), e duas ou mais delas tiverem o próprio user_bucket registrado, usaremos o máximo de todas elas.

Veja abaixo uma chamada de exemplo para atualizar um conjunto de anúncios existente. Você precisará fornecer a identificação do conjunto de anúncios, o token de acesso, as origens de evento e os multiplicadores de lances:

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>