Experimento A/B de mediación

La API de AdMob puede crear experimentos A/B de mediación para maximizar el rendimiento de tus anuncios probando varias configuraciones. Una prueba A/B te permite evaluar dos variaciones de un grupo de mediación para comparar los resultados uno al lado del otro y seleccionar una configuración preferida.

Estos son algunos ejemplos de experimentos que puedes configurar:

  • Agregar o quitar fuentes de anuncios para ver su impacto en tu grupo de mediación
  • Cómo usar un orden de cascada diferente cambiando el valor del eCPM manual de las fuentes de anuncios
  • Cómo habilitar o inhabilitar la optimización en las fuentes de anuncios de cascada
  • Cómo cambiar la cantidad de veces que se llama a una fuente de anuncios

Ejemplos

Comienza con un grupo de mediación existente y crea una variación de este para ver qué variante, A o B, tiene un mejor rendimiento. La prueba divide a los usuarios de tu app entre la configuración existente de tu grupo de mediación y la variación, según el porcentaje (1%, 10% o 50%) que proporciones.

curl (línea de comandos)

Solicitudes con curl

  1. Carga el archivo de secretos del cliente y genera credenciales de autorización.

    La primera vez que realices este paso, se te pedirá que aceptes un mensaje de autorización en tu navegador. Antes de aceptar, asegúrate de haber accedido con una Cuenta de Google que tenga acceso a la API de AdMob. Tu app estará autorizada para acceder a los datos en nombre de la cuenta que esté conectada en ese momento.

    Para la autenticación y la autorización, te recomendamos que uses oauth2l, una herramienta de línea de comandos simple para trabajar con Google OAuth 2.0. Instala oauth2l y ejecuta el siguiente comando, reemplazando path_to_credentials_json por una ruta de acceso a un archivo credentials.json que descargas cuando registras tu app para la nube. En la primera ejecución, el comando te guía por el flujo de autorización de OAuth 2.0. Las ejecuciones posteriores actualizan el token automáticamente.

    oauth2l header --json path_to_credentials_json --scope admob.monetization,admob.readonly
    
  2. Crea un experimento A/B de mediación.

    Reemplaza pub-XXXXXXXXXXXXXXXX por tu ID de publicador y ZZZZZZZZZZ por tu ID de grupo de mediación. El ID del grupo de mediación se puede encontrar en la IU de AdMob o con el método accounts.mediationGroups:list.

    Debes especificar treatmentMediationLines y treatmentTrafficPercentage. Sin embargo, los valores de controlMediationLines se heredan del grupo de mediación principal y no es necesario especificarlos.

    La siguiente solicitud crea un experimento A/B de mediación en el que la variante de tratamiento, también conocida como variante B, contiene una sola línea de mediación para la red de AdMob con el modo LIVE.

    curl --http1.0 \
    -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ/mediationAbExperiments \
    -H "Content-Type:application/json" \
    -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" \
    --data @- << EOF
    {
      "displayName":"Mediation A/B Experiment Test Name",
      "treatmentTrafficPercentage": "50",
      "treatmentMediationLines": [{
        "mediationGroupLine": {
          "displayName": "Test mediation group line",
          "adSourceId": "5450213213286189855",
          "cpm_mode": "LIVE"
        }
      }]
    }
    EOF

    Consulta la respuesta de ejemplo a continuación, en la que SSSSSSSSSSSSSSSSSSSSSS representa el ID del experimento A/B de mediación creado y YYYYYYYYYY representa los últimos 10 dígitos de tu ID de unidad de anuncios, de conformidad con el siguiente formato: ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY.

    {
      "name": "accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ/mediationAbExperiments/SSSSSSSSSSSSSSSSSSSSSS",
      "displayName": "Mediation A/B Experiment Test Name",
      "experimentId": "SSSSSSSSSSSSSSSSSSSSSS",
      "treatmentTrafficPercentage": "50",
      "treatmentMediationLines": [
        {
          "mediationGroupLine": {
            "id": "11111111111111111",
            "displayName": "Test mediation group line",
            "adSourceId": "5450213213286189855",
            "cpmMode": "LIVE",
            "cpmMicros": "10000",
            "adUnitMappings": {
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
            },
            "state": "ENABLED"
          }
        }
      ],
      "controlMediationLines": [
        {
          "mediationGroupLine": {
            "id": "22222222222222222",
            "displayName": "AdMob Network (control)",
            "adSourceId": "5450213213286189855",
            "cpmMode": "LIVE",
            "cpmMicros": "10000",
            "adUnitMappings": {
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
              "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/
            },
            "state": "ENABLED"
          }
        }
      ],
      "state": "RUNNING"
    }
  3. Verifica que el experimento de prueba A/B de mediación se esté ejecutando.

    Llama a accounts.mediationGroups:list para obtener el estado del experimento de prueba A/B de mediación para ese grupo de mediación. Consulta la guía de grupos de mediación para obtener más detalles.

    El valor de mediationAbExperimentState se establece en RUNNING para los experimentos A/B de mediación activos y en NOT_RUNNING si no se está ejecutando ningún experimento en el grupo de mediación.

    Solicitud de muestra:

     curl --http1.0 \
    -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups \
    -H "$(oauth2l header --json path_to_credentials_json --scope admob.readonly)"
    
  4. Detén el experimento de prueba A/B de mediación y selecciona una variante.

    Reemplaza pub-XXXXXXXXXXXXXXXX por tu ID de publicador y ZZZZZZZZZZ por tu ID de grupo de mediación. El ID del grupo de mediación se puede encontrar en la IU de AdMob o con el método accounts.mediationGroups:list.

    Para completar el experimento, especifica la variante ganadora en la solicitud:

    • VARIANT_CHOICE_A: Usa las líneas de mediación de la variante A y completa el experimento. La variante A contiene las líneas de publicación originales antes de la creación del experimento.
    • VARIANT_CHOICE_B: Usa las líneas de mediación del formulario de la variante B y completa el experimento. La variante B contiene las líneas de publicación agregadas recientemente.

    Solicitud de muestra:

     curl --http1.0 \
    -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ/mediationAbExperiments:stop \
    -H "Content-Type:application/json" \
    -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" \
    --data @- << EOF
    {
    "variantChoice": "VARIANT_CHOICE_A"
    }
    

    Respuesta de muestra:

    {
    "experimentId": "SSSSSSSSSSSSSSSSSSSSSS",
    "state": "EXPIRED",
    }