La mayoría de los anunciantes trabajan con varias redes de publicidad diferentes para publicar anuncios entre varias apps de publicadores. Si las redes de publicidad registran sus propias fuentes de atribución y activadores con la API, recibirán informes de eventos y resumen de atribución automática.
Sin embargo, los anunciantes que deseen utilizar un tercero para realizar la atribución entre varias redes (XNA) para determinar un único anuncio ganador para una conversión determinada pueden seguir haciéndolo con las siguientes técnicas:
- Configurar un servidor interno para registrar eventos de activación y recibir informes de atribución de la API
- Continuar usando un socio de medición para dispositivos móviles existente
Sin importar la técnica que elija usar un anunciante, la API de Attribution Reporting admite una serie de funciones diferentes que permiten que un tercero personalice la lógica de XNA en nombre de un anunciante:
- Un tercero puede realizar la atribución con la API con redireccionamientos de redes de publicidad o sin estas.
- Las claves de prioridad, filtros y anulación de duplicación pueden proporcionar una personalización adicional de la atribución basada en las dimensiones de la fuente y el activador.
- Las ventanas de atribución posteriores a la instalación permiten que las fuentes que generaron una instalación sigan ganando crédito para futuros eventos de conversión en la aplicación.
El modelo de atribución que usan las tecnologías publicitarias para anular la duplicación entre varias redes y elegir fuentes ganadoras puede tener diferentes niveles de complejidad, según cómo se aprovechen estas funciones de la API.
En los siguientes ejemplos, se ilustran situaciones sobre cómo se pueden usar estas funciones y cómo las diferentes configuraciones afectan ciertas fuente de atribución, en última instancia, gana crédito por un evento activador determinado.
Proceso
En la siguiente lista, se describen los pasos del proceso XNA. Para simplificar, los pasos que se enumeran aquí suponen un modelo en el que el anunciante usa una tecnología publicitaria para publicar anuncios y un MMP para la medición de conversiones. Sin embargo, el diseño de la API es flexible: la funcionalidad no difiere entre los diferentes tipos de tecnologías publicitarias ni requiere el uso de una tecnología publicitaria.
- Registro de fuentes: El usuario ve un anuncio o hace clic en este, y la tecnología publicitaria de publicación registra estas fuentes con la API. La tecnología publicitaria de publicación también puede redireccionar a otras tecnologías publicitarias que pueden registrar fuentes directamente con la API o habilitar la atribución entre varias redes sin redireccionamientos.
- Registro de activadores: El usuario realiza una acción de conversión asociada, por ejemplo, abrir una app por primera vez, comprar o agregar artículos al carrito; después de esta acción, un MMP registra un activador con la API. El MMP también puede redireccionar a otras tecnologías publicitarias que pueden registrar activadores directamente con la API. Si un MMP necesita habilitar la atribución entre varias redes sin redireccionamientos, se debe especificar la configuración de la atribución durante el registro del activador.
- Atribución: Si se especifica la configuración de la atribución durante el registro del activador, las fuentes derivadas se generan en nombre del MMP. Se intenta que cada activador coincida con una fuente apta que haya registrado directamente el MMP o una fuente derivada apta que se haya generado en nombre del MMP con las fuentes de tecnología publicitaria de publicación. Las fuentes restantes, que no ganaron la atribución, se descartan y ya no son aptas para ganar la atribución para conversiones en el futuro. Además, es posible que notes que también nos referimos a esto como "si pierdes una vez, pierdes siempre" en otras secciones de la documentación.
- Cuando una fuente derivada pierde la atribución, la API no generará, en el futuro, fuentes derivadas que se basen en la fuente original cuando el MMP registre eventos de conversión futuros. Es posible que la tecnología publicitaria de publicación y otros MMP sigan usando la fuente original para una atribución futura. Esto se describe en detalle en la Situación 6.
- Generación de informes: La atribución genera informes agregados o de eventos. Ten en cuenta que solo se generan informes agregados para las fuentes derivadas.
- Publicación de informes: Los informes generados están programados para publicarse.
Situación 1: Atribución entre varias redes con redireccionamientos
Un anunciante está trabajando con 2 tecnologías publicitarias de publicación y 1 MMP. Cuando se hace clic en los anuncios publicados por las tecnologías publicitarias de publicación, estas redireccionan al MMP en el registro de la fuente. Cuando un usuario realiza una conversión en la app, el MMP redirecciona a las plataformas de tecnología publicitaria en el registro del activador.
El MMP recibirá un informe de varias redes sin duplicados, y cada tecnología publicitaria de publicación recibirá informes de autoatribución.
Cronograma de registros
En el paso 0, el usuario hace clic en un anuncio publicado por ad-tech1 que registra Source1 de la fuente junto con su Source2 de redireccionamiento registrado por mmp-ad-tech:
"Attribution-Reporting-Register-Source": {
"source_event_id": "34532",
"web_destination": "https://destination.example.com",
"priority": "10",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x1"
}
},
"Attribution-Reporting-Redirect": [
"https://www.mmp-ad-tech.com/source2"
]
// Registered by mmp-ad-tech via redirects
"Attribution-Reporting-Register-Source": {
"source_event_id": "788324",
"web_destination": "https://destination.example.com",
"priority": "30",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x2",
"geoValue": "0x102"
}
}
En el paso 1, el usuario hace clic en un anuncio publicado por ad-tech2 para registrar Source3 junto con su redireccionamiento a mmp-ad-tech, es decir, Source4:
"Attribution-Reporting-Register-Source": {
"source_event_id": "6574435",
"web_destination": "https://destination.example.com",
"priority": "10",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x3"
}
},
"Attribution-Reporting-Redirect": [
"https://www.mmp-ad-tech.com/source"
]
// Registered by mmp-ad-tech via redirects
"Attribution-Reporting-Register-Source": {
"source_event_id": "4532343",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x4"
}
}
En el paso 2, la acción o conversión del usuario en la app del anunciante causa que mmp-ad-tech registre el activador (Trigger1) que también redirecciona a ad-tech1 (Trigger2) y ad-tech2 (Trigger3):
Indefinido
Resultado
Source2 y Source4 de las fuentes registradas por mmp-ad-tech compiten en la atribución para Trigger1 del activador registrado por mmp-ad-tech. Source2 prevalece sobre Source4, ya que tiene una prioridad más alta. Trigger2 registrado por ad-tech1 se atribuye a Source1 registrado por ad-tech1, y Trigger3 registrado por ad-tech2 se atribuye a Source3 registrado por ad-tech2.
Fuentes rivales de los siguientes campos
Campos |
Source1 |
Source2 |
Source3 |
Source4 |
Fuente que registra la tecnología publicitaria |
ad-tech1 |
mmp-ad-tech |
ad-tech2 |
mmp-ad-tech |
source_event_id |
34532 |
788324 |
6574435 |
4532343 |
destination |
https://destination.example.com |
https://destination.example.com |
https://destination.example.com |
https://destination.example.com |
priority |
10 |
30 |
10 |
20 |
Activadores registrados
Resultado de la atribución
Trigger1 se atribuye a Source2, Trigger2 se atribuye a Source1, y Trigger3 se atribuye a Source3.
Fuentes ignoradas después de la atribución
Source4: No competirá por la atribución en el futuro.
Informes de eventos
URL del informe: https://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "788324",
"trigger_data": "1",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
URL del informe: https://www.ad-tech1.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "34532",
"trigger_data": "2",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
URL del informe: https://www.ad-tech2.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "6574435",
"trigger_data": "3",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
Informes agregados
URL del informe: https://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x104",
"value": 11
}
]
}
URL del informe: https://www.ad-tech1.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x201",
"value": 21
}
]
}
URL del informe: https://www.ad-tech2.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x303",
"value": 31
}
]
}
Situación 2: Atribución entre varias redes sin redireccionamientos
Un anunciante está trabajando con 2 tecnologías publicitarias de publicación y 1 MMP. Un usuario hace clic en un anuncio de la primera tecnología publicitaria de publicación, que redirecciona al MMP en el registro de la fuente. Cuando el usuario hace clic en un anuncio de la segunda tecnología publicitaria de publicación, esta no redirecciona y, en su lugar, decide compartir, por adelantado, un subconjunto de sus claves de agregación con el MMP.
Luego, el usuario realiza una conversión en la app en la que el MMP registra el activador, pero no redirecciona a ninguna de las tecnologías publicitarias. La tecnología publicitaria sin redireccionamiento gana la atribución del último contacto. Solo el MMP recibirá un informe de resumen de varias redes sin duplicados que incluya esta conversión.
Cronograma de registros
En el paso 0, el usuario hace clic en un anuncio; y, como resultado, ad-tech1 y mmp-ad-tech registran Source1 y Source2, respectivamente, a través del redireccionamiento de ad-tech1:
"Attribution-Reporting-Register-Source": {
"source_event_id": "234543",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159"
}
},
"Attribution-Reporting-Redirect": [
"http://www.mmp-ad-tech.com"
]
// Registered by mmp-ad-tech via redirect
"Attribution-Reporting-Register-Source": {
"source_event_id": "45453",
"web_destination": "https://destination.example.com",
"priority": "100",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5",
}
}
En el paso 1, el usuario hace clic en otro anuncio; y, como resultado, Source3 es registrado por ad-tech2 que comparte claves de agregación:
// Registered by ad-tech2
"Attribution-Reporting-Register-Source": {
"source_event_id": "978",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts"
]
}
En el paso 2, la acción o conversión del usuario promueve que el activador sea registrado por mmp-ad-tech, que incluye la configuración de atribución para ad-tech2:
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "101"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
],
"x_network_data": {
"key_offset": 10
}
}
],
"aggregatable_values": {
"campaignCounts": 32768
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-2",
"source_priority_range": {
"start": 1,
"end": 1000
},
"priority": "200",
"expiry": "172800"
}
],
"x_network_key_mapping": {
"enrollment-id-ad-tech-2": "0x4"
}
}
Resultado
Source2 hace coincidir la inscripción y el destino con el activador, por lo que se convierte en una fuente rival para la atribución. Además, durante el registro del activador, se especificó una configuración de atribución para ad-tech2 y Source3 a través de las claves de agregación del uso compartido de ad-tech2. Esto permite que se genere una fuente derivada, Source3', como fuente rival para la atribución.
Fuentes rivales
Campos |
Source2 |
Source3' |
Fuente original que registra ad-tech |
mmp-ad-tech |
ad-tech2 |
source_event_id |
45453 |
978 |
priority |
100 |
200 |
Activadores registrados
Trigger1 por mmp-ad-tech.
Resultado de la atribución
Trigger1 se atribuye a Source3' porque Source3' tiene mayor prioridad que Source2.
Fuentes ignoradas después de la atribución
Source2
Informes de eventos
Ninguno: Los informes de eventos no se generan para las fuentes derivadas.
Informes agregados
La fuente superior de Source3', es decir, Source3, solo comparte campaignCounts
. La pieza clave del activador se calcula de la siguiente manera:
(key_piece value) | ((x_network_key_mapping entry) << offset)
0x400 | (0x4 << 10) = 0x1400
Por último, la clave resultante es generada por la clave del activador OR-ing (0x1400) con clave de la fuente (0x159), es decir, 0x1559.
URL del informe: http://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x1559",
"value": 32768
}
]
}
Situación 3: Fuente registrada por el MMP y candidato principal de la fuente derivada en la misma cadena de registro
Un anunciante está trabajando con 2 tecnologías publicitarias de publicación y 1 MMP. Un usuario hace clic en un anuncio de la primera tecnología publicitaria de publicación, que no redirecciona en el registro de la fuente, pero comparte claves de agregación con el MMP. El usuario hace clic en un anuncio de la segunda tecnología publicitaria de publicación, que redirecciona al MMP en el registro de la fuente y comparte claves de agregación con este.
Cronograma de registros
En el paso 0, el usuario hace clic en un anuncio publicado por ad-tech1, que inicia el registro de Source1:
"Attribution-Reporting-Register-Source": {
"source_event_id": "52343",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 1, la segunda cadena de registro, ad-tech2 registra Source2 y redirecciona para registrar una fuente del MMP, Source3:
"source_event_id": "234456",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"aggregation_keys": {
"campaignCounts": "0x159"
},
"shared_aggregation_keys": [
"campaignCounts"
]
},
"Attribution-Reporting-Redirect": [
"http://www.mmp-ad-tech.com"
]
"Attribution-Reporting-Register-Source": {
"source_event_id": "4234",
"web_destination": "https://destination.example.com",
"priority": "100",
"expiry": "172800",
"aggregation_keys": {
"campaignCounts": "0x159"
}
}
En el paso 2, el registro del activador tiene la atribución configurada para generar fuentes derivadas desde ad-tech1 y ad-tech2:
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "101"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
],
"x_network_data" : {
"key_offset" : 10
}
}
],
"aggregatable_values": {
"campaignCounts": 32768,
"geoValue": 1664
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-1",
"source_priority_range": {
"start": 1,
"end": 1000
},
"priority": "20",
"expiry": "172800"
},
{
"source_network": "enrollment-id-ad-tech-2",
"source_priority_range": {
"start": 1,
"end": 1000
},
"priority": "20",
"expiry": "172800"
}
],
"x_network_key_mapping" : {
"enrollment-id-ad-tech-1" : "0x2",
"enrollment-id-ad-tech-2" : "0x4"
}
}
Como resultado, la fuente registrada por el MMP en la segunda cadena de registro gana la atribución. El informe agregado resultante se parece al siguiente:
Resultado
La fuente derivada desde Source2 (con "source_event_id": "234456
") no participa en la atribución porque la misma cadena de registro también tiene una fuente registrada por mmp-ad-tech.
Fuentes rivales
Campos |
Source1' |
Source3 |
Fuente original que registra la tecnología publicitaria |
ad-tech1 |
mmp-ad-tech |
source_event_id |
52343 |
4234 |
priority |
20 |
100 |
Activadores registrados
Trigger1 por mmp-ad-tech.
Resultado de la atribución
Trigger1 se atribuye a Source3 porque Source3 tiene mayor prioridad que Source1'.
Fuentes ignoradas después de la atribución
Source1': Ya no se considerará que Source1 crea una fuente derivada para mmp-ad-tech.
Informes de eventos
URL del informe: https://www.ad-tech1.com/.well-known/attribution-reporting/report-event-attribution
{
"attribution_destination": "https://destination.example.com",
"scheduled_report_time": "800176400",
"source_event_id": "4234",
"trigger_data": "2",
"source_type": "navigation",
"randomized_trigger_rate": 0.0024263
}
Informes agregados
URL del informe: http://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"report_url": "http://www.mmp-example.com",
"payload": {
"attribution_destination": "https://destination.example.com",
"histograms": [
{
"key": "0x559"
"value": 32768
}
]
}
}
Situación 4: Atribución entre varias redes sin redireccionamientos con criterios en la selección de la fuente
Un anunciante está trabajando con 4 tecnologías publicitarias de publicación y 1 MMP. Un usuario hace clic en un anuncio de 1 tecnología publicitaria de publicación y ve los anuncios de las otras 3. Cuando un usuario realiza una conversión en la app del anunciante, el MMP registra un activador y especifica de qué fuentes registradas de la tecnología publicitaria de publicación se deben crear fuentes derivadas, según los siguientes filtros:
- priority_range: Elige las fuentes que tienen prioridad dentro del rango especificado.
- expiry: Elige fuentes con un vencimiento posterior a la duración especificada.
- source_filters: Elige fuentes cuyos objetos filter_data coincidan con el elemento source_filters especificado.
- source_not_filters: Elige fuentes cuyos objetos not_filters coincidan con el elemento source_not_filters especificado.
Una vez que se generan las fuentes derivadas en función de los criterios, estas pueden participar en la atribución.
Cronograma de registro
En el paso 0, un clic del usuario causa que ad-tech1 registre Source1 de la fuente, que asocia source_type como navegación a esta fuente registrada:
"Attribution-Reporting-Register-Source": {
"source_event_id": "87456",
"web_destination": "https://destination.example.com",
"priority": "20",
"expiry": "172801",
"filter_data": {
"filter1": [
"does_not_matter"
],
"filter2": [
"non-match"
]
},
"aggregation_keys": {
"campaignCounts": "0x119",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 1, un usuario ve el anuncio, lo que causa que ad-tech2 registre Source2 de la fuente, que asocia source_type como evento a esta fuente registrada:
"Attribution-Reporting-Register-Source": {
"source_event_id": "9078",
"web_destination": "https://destination.example.com",
"priority": "2000",
"expiry": "172801",
"filter_data": {
"filter1": [
"does_not_matter"
],
"filter2": [
"match"
]
},
"aggregation_keys": {
"campaignCounts": "0x129",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 2, una vista del usuario causa que ad-tech3 registre Source3 de la fuente, que asocia source_type como evento a esta fuente registrada:
"Attribution-Reporting-Register-Source": {
"source_event_id": "2413",
"web_destination": "https://destination.example.com",
"priority": "20",
"filter_data": {
"filter1": [
"non-match"
],
"filter2": [
"non-match"
]
},
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 3, una vista del usuario causa que ad-tech4 registre Source4 de la fuente, que asocia source_type como evento a esta fuente registrada:
"Attribution-Reporting-Register-Source": {
"source_event_id": "7567",
"web_destination": "https://destination.example.com",
"priority": "20",
"filter_data": {
"filter1": [
"match"
],
"filter2": [
"match"
]
},
"aggregation_keys": {
"campaignCounts": "0x169",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 4, la conversión del usuario hace que mmp-ad-tech registre un activador con la configuración de atribución para todas las demás fuentes registradas de ad-techs que se mencionaron anteriormente:
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "100"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
]
}
],
"aggregatable_values": {
"campaignCounts": 32768,
"geoValue": 1664
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-1",
"source_priority_range": {
"start": 1,
"end": 100
},
"source_filters": {
"source_type": [
"event"
]
},
"priority": "100",
"expiry": "172801"
},
{
"source_network": "enrollment-id-ad-tech-2",
"source_priority_range": {
"start": 1,
"end": 1000
},
"source_filters": {
"source_type": [
"navigation"
]
},
"priority": "100",
"expiry": "172801"
},
{
"source_network": "enrollment-id-ad-tech-3",
"source_priority_range": {
"start": 1,
"end": 1000
},
"source_filters": {
"source_type": [
"navigation"
],
"filter1": [
"match"
],
"filter2": [
"match"
]
},
"priority": "50",
"expiry": "172801"
},
{
"source_network": "enrollment-id-ad-tech-4",
"source_priority_range": {
"start": 1,
"end": 1000
},
"source_filters": {
"source_type": [
"navigation"
],
"filter1": [
"match"
],
"filter2": [
"match"
]
},
"priority": "30",
"expiry": "172801"
}
],
"x_network_key_mapping": {
"enrollment-id-ad-tech-1": "0x1",
"enrollment-id-ad-tech-2": "0x2",
"enrollment-id-ad-tech-3": "0x3",
"enrollment-id-ad-tech-4": "0x4"
}
}
Resultado
Las siguientes fuentes no se consideran aptas para generar fuentes derivadas debido a la falta de coincidencia de criterios:
- Source1 no cumple con el filtro "
source_type":"event
" en la configuración de atribución de ad-tech1. - Source2 tiene la prioridad establecida en 2,000, fuera del filtro de rango de prioridad de ad-tech2 (1,1000).
- Source3 no coincide con el valor para "
filter2
".
Fuentes rivales
Campos |
Source4' |
Fuente original que registra la tecnología publicitaria |
ad-tech4 |
source_event_id |
7567 |
destination |
https://destination.example.com |
priority |
30 |
expiry |
Tiempo de registro + 2 días |
Activadores registrados
Trigger1 por mmp-ad-tech.
Resultado de la atribución
Trigger1 se atribuye a Source4' porque es la única fuente apta para la atribución.
Fuentes ignoradas después de la atribución
Ninguna
Informes de eventos
Ninguno: Los informes de eventos no se generan para una fuente derivada ganadora
Informes agregados
URL del informe: http://www.mmp-ad-tech.com
{
"attribution_destination": "https://example.com",
"histograms": [
{
"key": "0x56d",
"value": 32768
},
{
"key": "0x5",
"value": 1664
}
]
}
Situación 5: Atribución posterior a la instalación
Un anunciante está trabajando con 2 tecnologías publicitarias de publicación y 1 MMP. Un usuario hace clic en un anuncio de la primera tecnología publicitaria e instala la app del anunciante. Durante la atribución de las conversiones posteriores a la instalación, la fuente derivada con la atribución de instalación prevalece sobre otras fuentes, incluso si otras tienen prioridades más altas.
Cronograma de registro
En el paso 0, la interacción del usuario causa que ad-tech1 registre Source1:
"Attribution-Reporting-Register-Source": {
"source_event_id": "3645",
"destination": "android-app://com.example.app",
"priority": "20",
"expiry": "172801",
"install_attribution_window": "86400",
"post_install_exclusivity_window": "864000",
"aggregation_keys": {
"campaignCounts": "0x119",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 1, el usuario instala com.example.app
de la app en su dispositivo.
En el paso 2, la interacción del usuario causa que ad-tech2 registre Source2:
"Attribution-Reporting-Register-Source": {
"source_event_id": "345789",
"destination": "android-app://com.example.app",
"priority": "100",
"aggregation_keys": {
"campaignCounts": "0x159",
"geoValue": "0x5"
},
"shared_aggregation_keys": [
"campaignCounts",
"geoValue"
]
}
En el paso 3, mmp-ad-tech registra un activador con la configuración de atribución para ad-tech1 y ad-tech2:
"Attribution-Reporting-Register-Trigger": {
"event_trigger_data": [
{
"trigger_data": "2",
"priority": "100"
}
],
"aggregatable_trigger_data": [
{
"key_piece": "0x400",
"source_keys": [
"campaignCounts"
]
}
],
"aggregatable_values": {
"campaignCounts": 32768,
"geoValue": 1664
},
"attribution_config": [
{
"source_network": "enrollment-id-ad-tech-1",
"priority": "10",
"expiry": "172801",
"post_install_exclusivity_window": "172800"
},
{
"source_network": "enrollment-id-ad-tech-2",
"priority": "20",
"expiry": "172801"
}
],
"x_network_key_mapping": {
"enrollment-id-ad-tech-1": "0x1",
"enrollment-id-ad-tech-2": "0x3"
}
}
Resultado
Fuentes derivadas generadas de Source1 y Source2, es decir, Source1' and Source2', respectivamente, que compiten por la atribución.
Fuentes rivales
Campos |
Source1' |
Source2' |
Fuente original que registra la tecnología publicitaria |
ad-tech1 |
ad-tech2 |
source_event_id |
3645 |
345789 |
destination |
android-app://com.example.app |
android-app://com.example.app |
priority |
10 |
20 |
Se impulsó la instalación de la app |
sí |
no |
Activadores registrados
Trigger1 por mmp-ad-tech.
Resultado de la atribución
Trigger1 se atribuye a Source1' porque impulsó la instalación de la app de destino. Ten en cuenta que Source2' tenía una prioridad más alta.
Fuentes ignoradas después de la atribución
Source2: Las fuentes derivadas de Source2 no se tendrán en cuenta en la atribución para los activadores registrados por mmp-ad-tech.
Informes de eventos
Ninguno: Los informes de eventos no se generan para una fuente derivada ganadora
Informes agregados
URL del informe: http://www.mmp-ad-tech.com/.well-known/attribution-reporting/report-aggregate-attribution
{
"attribution_destination": "android-app://com.example.app",
"histograms": [
{
"key": "0x519",
"value": 32768
},
{
"key": "0x5",
"value": 1664
}
]
}
Situación 6: Si pierdes una vez, pierdes siempre
Si ad-tech1 tiene una fuente cuya fuente derivada participó en la atribución para el activador de mmp-ad-tech y la perdió, no se usará la fuente de ad-tech1 para crear una fuente derivada de los activadores de mmp-ad-tech a partir de ese momento. A continuación, se muestra un cronograma de ejemplo:
- En el paso 0, Source1 de ad-tech1 se registra con
"priority": "10"
. - En el paso 1, Source2 de ad-tech2 se registra con
"priority": "20"
. - En el paso 2, Trigger1 de mmp-ad-tech se registra con la configuración de atribución para ad-tech1 y ad-tech2.
- En el paso 3, la atribución para Trigger1 se produce cuando la fuente derivada desde ad-tech2 gana la atribución y se ignora la fuente de ad-tech1.
- En el paso 4, Source3 de ad-tech3 se registra con
"priority": "5"
. - En el paso 5, Trigger2 de mmp-ad-tech se registra con la configuración para ad-tech1 y ad-tech3.
- En el paso 6, se produce la atribución para Trigger2, en la que la fuente derivada desde Source3 (Source3') gana la atribución.
Explicación del resultado
La fuente derivada desde la fuente de ad-tech1 perdió la atribución para Trigger1, por lo que no se usó Source1 para crear una fuente derivada para la atribución de Trigger2. Si no hubiera perdido antes en el paso 3, habría prevalecido sobre la fuente de ad-tech3, ya que tenía una prioridad más alta.