Experimentos de otimização de recursos

Os experimentos de otimização de recursos são usados para testar diferentes combinações de recursos em campanhas Performance Max, permitindo comparar a performance de diferentes conjuntos de recursos com um conjunto de base.

Esse fluxo de trabalho é compatível com ExperimentType.OPTIMIZE_ASSETS.

Configuração

Para configurar um experimento de otimização de recursos:

  • Crie um novo recurso, um experimento com grupos de controle e de tratamento.
  • Vincule o novo recurso ao grupo de recursos do grupo de tratamento, tudo em uma única solicitação de mutação.

Como essas entidades são interdependentes, você precisa usar nomes de recursos temporários para se referir aos recursos criados em operações anteriores na mesma solicitação.

As operações na solicitação precisam estar na seguinte ordem:

  1. Crie um Asset com um nome de recurso temporário (como customers/CUSTOMER_ID/assets/-1). Esse será seu recurso de teste.
  2. Crie um Experiment com um nome de recurso temporário (por exemplo, customers/CUSTOMER_ID/experiments/-2).
  3. Crie um AssetGroupAsset vinculando o recurso da etapa 1 ao grupo de recursos usado nos grupos de experimento.

  4. Crie dois ExperimentArm recursos:

    • Um grupo de controle vinculado a um AssetGroup de base.
    • Um grupo de tratamento vinculado ao mesmo AssetGroup de base. Nesse grupo, defina o campo asset_groups usando o nome de recurso temporário do recurso criado na etapa 1.

Java

This example is not yet available in Java; you can take a look at the other languages.
    

C#

This example is not yet available in C#; you can take a look at the other languages.
    

PHP

This example is not yet available in PHP; you can take a look at the other languages.
    

Python

# 1. Create Assets with temporary resource names.
# We create a text asset and an image asset to showcase different types.
asset_operation_1 = create_text_asset_operation(
    client,
    customer_id,
    ASSET_1_TEMP_ID,
    "Fly to Mars!",
)
asset_operation_2 = create_image_asset_operation(
    client,
    customer_id,
    ASSET_2_TEMP_ID,
    "https://gaagl.page.link/Eit5",
    "Mars Landscape View",
)

# 2. Create an Experiment with a temporary resource name.
experiment_operation = client.get_type("MutateOperation")
experiment = experiment_operation.experiment_operation.create
experiment.resource_name = googleads_service.experiment_path(
    customer_id, EXPERIMENT_TEMP_ID
)
experiment.name = f"Interstellar Asset Experiment #{uuid4()}"
experiment.type_ = client.enums.ExperimentTypeEnum.OPTIMIZE_ASSETS
# Set the optimize assets experiment subtype to COMPARE_ASSETS.
experiment.optimize_assets_experiment.optimize_assets_experiment_subtype = (
    client.enums.OptimizeAssetsExperimentSubtypeEnum.COMPARE_ASSETS
)

# 3. Create two ExperimentArm resources.
treatment_assets = [
    (ASSET_1_TEMP_ID, client.enums.AssetFieldTypeEnum.HEADLINE),
    (ASSET_2_TEMP_ID, client.enums.AssetFieldTypeEnum.MARKETING_IMAGE),
]
arm_operations = create_arms_operations(
    client,
    customer_id,
    EXPERIMENT_TEMP_ID,
    campaign_resource_name,
    asset_group_id,
    treatment_assets,
)

# 4. Create AssetGroupAssets linking the assets to the asset group.
asset_group_asset_operation_1 = create_asset_group_asset_operation(
    client,
    customer_id,
    asset_group_id,
    ASSET_1_TEMP_ID,
    client.enums.AssetFieldTypeEnum.HEADLINE,
)
asset_group_asset_operation_2 = create_asset_group_asset_operation(
    client,
    customer_id,
    asset_group_id,
    ASSET_2_TEMP_ID,
    client.enums.AssetFieldTypeEnum.MARKETING_IMAGE,
)

# Send all operations in a single Mutate request.
# The operations must be in this specific order.
mutate_operations = [
    asset_operation_1,
    asset_operation_2,
    experiment_operation,
    *arm_operations,
    asset_group_asset_operation_1,
    asset_group_asset_operation_2,
]

response = googleads_service.mutate(
    customer_id=customer_id,
    mutate_operations=mutate_operations,
)
      

Ruby

This example is not yet available in Ruby; you can take a look at the other languages.
    

Perl

This example is not yet available in Perl; you can take a look at the other languages.
    

curl

Gerar relatórios sobre o experimento

É possível gerar relatórios sobre experimentos de otimização de recursos usando o experiment recurso para comparar métricas entre os grupos de recursos de controle e de tratamento.

Concluir ou finalizar

Depois de avaliar os resultados, você pode concluir ou fazer upgrade do experimento usando ExperimentService.

  • Finalizar: se você não estiver satisfeito com os resultados do grupo de tratamento, use EndExperiment. Essa é uma operação síncrona.
  • Fazer upgrade: se você preferir o desempenho do grupo de recursos do grupo de tratamento, use GraduateExperiment. Como parte desse processo, a campanha de base original associada ao grupo de controle é pausada, e o grupo de tratamento é convertido em uma nova campanha independente. Essa é uma operação síncrona.