Objectifs de cycle de vie

Utilisez les ressources CustomerLifecycleGoal et CampaignLifecycleGoal de l'API Google Ads pour configurer les objectifs liés au cycle de vie client. L'API Google Ads est compatible avec les objectifs d'acquisition de nouveaux clients. Vous pouvez ainsi acquérir efficacement de nouveaux clients grâce à vos campagnes Google Ads sur le Réseau de Recherche et Performance Max.

Si votre compte Google Ads utilise le suivi des conversions multicomptes, vous devez configurer les objectifs de cycle de vie client dans le compte de conversion Google Ads au lieu de le faire directement dans votre compte Google Ads. Toutefois, vous devez toujours définir des objectifs de cycle de vie de campagne dans votre compte. Cela revient à gérer d'autres objectifs lorsque vous utilisez le suivi des conversions multicomptes.

Configurer les objectifs de cycle de vie client

Au niveau client, configurez un objectif de cycle de vie en créant ou en modifiant un CustomerLifecycleGoal. Il ne peut y avoir qu'un seul CustomerLifecycleGoal par compte Google Ads. Le champ customer_acquisition_goal_value_settings.value définit l'ajustement de valeur supplémentaire à ajouter à la première conversion d'achat d'un nouveau client. customer_acquisition_goal_value_settings.high_lifetime_value définit la valeur de conversion incrémentale pour les nouveaux clients à fort potentiel. Si une valeur est définie, la valeur à vie élevée doit être supérieure à cette valeur.

Segmenter vos audiences

Vous devez utiliser la ressource UserListCustomerType pour segmenter vos audiences pour les objectifs de cycle de vie client. Vous devez associer chaque liste d'utilisateurs à une ou plusieurs catégories en créant un UserListCustomerType pour chaque combinaison de liste d'utilisateurs et de catégorie.

Utilisez UserListCustomerTypeService pour créer des instances UserListCustomerType. Si vous avez déjà renseigné le champ CustomerLifecycleGoal.lifecycle_goal_customer_definition_settings.existing_user_lists, votre compte contiendra déjà des instances UserListCustomerType associées.

UserListCustomerTypeService n'accepte que les opérations create et remove. Par conséquent, si vous souhaitez mettre à jour un UserListCustomerType existant, vous devez le supprimer, puis en créer un avec les modifications nécessaires.

Un UserListCustomerType ne peut être attribué qu'à une seule liste d'utilisateurs, mais une liste d'utilisateurs peut comporter plusieurs instances UserListCustomerType associées à condition qu'il n'y ait pas de conflit entre les instances UserListCustomerType. Si vous essayez d'attribuer des instances UserListCustomerType avec les combinaisons suivantes de customer_type_category à la même liste d'utilisateurs, une erreur UserListCustomerTypeError.CONFLICTING_CUSTOMER_TYPES se produira :

customer_type_category depuis la mise en ligne Deuxième customer_type_category
ACHETEURS CONVERTED_LEADS
ACHETEURS QUALIFIED_LEADS
ACHETEURS CART_ABANDONERS
CONVERTED_LEADS QUALIFIED_LEADS
DISENGAGED_CUSTOMERS CONVERTED_LEADS
DISENGAGED_CUSTOMERS QUALIFIED_LEADS
DISENGAGED_CUSTOMERS CART_ABANDONERS

Configurer les objectifs de cycle de vie des campagnes

Au niveau de la campagne, configurez un objectif de cycle de vie en créant ou en modifiant un CampaignLifecycleGoal. Il ne peut y avoir qu'un seul CampaignLifecycleGoal par campagne.

Le champ customer_acquisition_goal_settings d'un objectif au niveau de la campagne vous permet de définir le mode d'optimisation de la campagne et de remplacer les paramètres de valeur de l'objectif client parent.

optimization_mode peut avoir l'une des valeurs suivantes :

TARGET_ALL_EQUALLY
 La campagne cible les nouveaux clients et ceux existants de la même manière. Il s'agit du mode d'optimisation par défaut.
BID_HIGHER_FOR_NEW_CUSTOMERS
La campagne cible à la fois les nouveaux clients et ceux existants, mais définit des enchères plus élevées pour les clients qui sont susceptibles d'être nouveaux et qui ne figurent pas dans l'une des existing_user_lists.
TARGET_NEW_CUSTOMERS
 La campagne ne cible que les nouveaux clients.

Les value_settings sont identiques aux customer_acquisition_goal_value_settings de l'objectif au niveau du client. Utilisez ces paramètres au niveau de la campagne pour remplacer les valeurs d'une campagne spécifique.

Objectifs de rétention

Les objectifs de rétention sont conçus pour accroître la fidélité de vos clients et générer une valeur vie (LTV) élevée pour votre activité. Elles proposent plusieurs modes dans les campagnes Performance Max. Vous pouvez ainsi cibler des segments spécifiques de clients existants.

Avant de créer un objectif de fidélisation, vous devez remplir les conditions préalables décrites dans À propos de l'objectif de fidélisation. Cela inclut d'avoir une campagne Performance Max et une liste d'utilisateurs pour le ciblage par liste de clients.

Pour créer un objectif de fidélisation, vous devez d'abord initialiser GoalService et envoyer une requête à l'aide de la méthode mutate_goals pour créer un objectif.

def create_goal(client: GoogleAdsClient, customer_id: str) -> None:
    """Sends an API request to add a new Goal.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
    """
    goal_operation: GoalOperation = client.get_type("GoalOperation")
    goal = goal_operation.create
    goal.retention_goal_settings.value_settings.additional_value = 50.0
    goal.retention_goal_settings.value_settings.additional_high_lifetime_value = 100.0

    goal_service = client.get_service("GoalService")
    goal_service.mutate_goals(
      customer_id=customer_id, operations=[goal_operation]
    )

Un objectif de fidélisation au niveau du compte sera alors créé pour le compte client spécifié. Il sera appliqué à toutes ses campagnes. Par défaut, cet objectif ciblera tous les utilisateurs de vos listes d'utilisateurs pour le ciblage par liste de clients.

Vous pouvez remplacer cet objectif par des paramètres au niveau de la campagne à l'aide d'un CampaignGoalConfig. Une fois que vous avez un objectif au niveau du compte, utilisez son resource_name pour créer un CampaignGoalConfig à l'aide de la méthode mutate_campaign_goal_configs sur CampaignGoalConfigService.

def create_campaign_goal_config(
  client: GoogleAdsClient,
  customer_id: str,
  goal_resource_name: str,
  campaign_resource_name: str
) -> None:
    """Sends an API request to add a new CampaignGoalConfig.

    Args:
        client: an initialized GoogleAdsClient instance.
        customer_id: a client customer ID.
        goal_resource_name: the resource name of an existing Goal.
        campaign_resource_name: the resource name of an existing Campaign.
    """
    operation: CampaignGoalConfigOperation = client.get_type("CampaignGoalConfigOperation")
    goal_config = operation.create
    goal_config.campaign = campaign_resource_name
    goal_config.goal = goal_resource_name

    # Note that the target_option will be set to TARGET_ALL by default. In order
    # to set it to TARGET_SPECIFIC your account must be allowlisted.
    #
    # goal_config.campaign_retention_settings.target_option = (
    #   client.enums.CustomerLifecycleOptimizationModeEnum.TARGET_SPECIFIC
    # )

    campaign_goal_config_service = client.get_service("CampaignGoalConfigService")
    campaign_goal_config_service.mutate_campaign_goal_configs(
      customer_id=customer_id, operations=[operation]
    )

Si campaign_retention_settings.target_option n'est pas défini, la valeur par défaut est TARGET_ALL. L'option permettant de définir la valeur sur TARGET_SPECIFIC n'est disponible que pour les utilisateurs figurant sur la liste d'autorisation.

Récupérer les objectifs de cycle de vie

Comme pour les autres ressources de l'API Google Ads, utilisez les méthodes search ou searchStream de GoogleAdsService pour récupérer les objectifs de cycle de vie.

La requête suivante récupère les détails de chaque CustomerLifecycleGoal dans un compte Google Ads :

SELECT
  customer_lifecycle_goal.owner_customer,
  customer_lifecycle_goal.customer_acquisition_goal_value_settings.value,
  customer_lifecycle_goal.customer_acquisition_goal_value_settings.high_lifetime_value
FROM customer_lifecycle_goal

De même, la requête suivante récupère les détails de chaque CampaignLifecycleGoal :

SELECT
  campaign_lifecycle_goal.campaign,
  campaign_lifecycle_goal.customer_acquisition_goal_settings.optimization_mode,
  campaign_lifecycle_goal.customer_acquisition_goal_settings.value_settings.value,
  campaign_lifecycle_goal.customer_acquisition_goal_settings.value_settings.high_lifetime_value
FROM campaign_lifecycle_goal