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
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.jsonque 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
Crea un experimento A/B de mediación.
Reemplaza
pub-XXXXXXXXXXXXXXXXpor tu ID de publicador yZZZZZZZZZZpor 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étodoaccounts.mediationGroups:list.Debes especificar
treatmentMediationLinesytreatmentTrafficPercentage. Sin embargo, los valores decontrolMediationLinesse 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" } }] } EOFConsulta la respuesta de ejemplo a continuación, en la que
SSSSSSSSSSSSSSSSSSSSSSrepresenta el ID del experimento A/B de mediación creado yYYYYYYYYYYrepresenta 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" }Verifica que el experimento de prueba A/B de mediación se esté ejecutando.
Llama a
accounts.mediationGroups:listpara 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
mediationAbExperimentStatese establece enRUNNINGpara los experimentos A/B de mediación activos y enNOT_RUNNINGsi 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)"
Detén el experimento de prueba A/B de mediación y selecciona una variante.
Reemplaza
pub-XXXXXXXXXXXXXXXXpor tu ID de publicador yZZZZZZZZZZpor 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étodoaccounts.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", }