Mejora las campañas publicitarias con PPS
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Puedes enviar datos de público y contextuales como indicadores proporcionados por el publicador (PPS) en las solicitudes de anuncios. Con los PPS, puedes usar tus datos de usuario para mejorar la monetización programática. Para ello, comunica las características de tu público a los ofertantes en todos los tipos de transacciones, mediante taxonomías estándar, sin la necesidad de compartir identificadores de usuario. Las características de tu público pueden incluir datos basados en intereses y comportamientos (Taxonomía de público de IAB 1.1) y datos contextuales (Taxonomía de contenido de IAB 2.2).
También puedes enviar indicadores estructurados proporcionados por el publicador, que define Google, y permitir que se envíen indicadores adicionales.
Crea el JSON de los indicadores del usuario
En el nivel superior, crea un objeto JSON con un solo par clave-valor. La clave debe ser PublisherProvidedTaxonomySignals
y su valor debe ser un array de objetos. Cada objeto del array debe tener 2 pares clave-valor:
La clave taxonomy
, que acepta los siguientes valores asignados a las siguientes especificaciones públicas de IAB:
IAB_AUDIENCE_1_1
para la taxonomía de público 1.1
IAB_CONTENT_2_2
para la taxonomía de contenido 2.2
La clave values
con un array correspondiente de valores de taxonomía de cadena
Crea el array de indicadores estructurados
Para los indicadores estructurados, agrega la clave PublisherProvidedStructuredSignals
con un valor de un array de objetos. Construye el objeto según la siguiente lista de pares clave-valor de indicadores:
Activa o desactiva la vista de la tabla de indicadores estructurados
Indicador |
<code" dir="ltr" translate="no">"type" Valor</code"> |
Valores "single_value" posibles |
Valores "values" posibles |
Tipo de feed de audio |
"audio_feed" |
"af_1" : Música
"af_2" : Publicación
"af_3" : Podcast
|
N/A |
Calificación del contenido: |
"content_rating" |
"cr_1" : G
"cr_2" : PG
"cr_3" : B
"cr_4" : MA
|
N/A |
Publicación de contenido |
"delivery" |
N/A |
"cd_1" : Transmisión
"cd_2" : Progresivo
"cd_3" : Descargar
|
Calidad de producción |
"prodq" |
"pq_1" : Producción profesional
"pq_2" : Prosumidor
"pq_3" : Generado por el usuario (CGU)
|
N/A |
Consulta el siguiente ejemplo, en el que se usan IAB_AUDIENCE_1_1
y IAB_CONTENT_2_2
para los indicadores taxonómicos y, además, incluye indicadores estructurados.
const userSignals = {
"PublisherProvidedTaxonomySignals": [{
"taxonomy": "IAB_AUDIENCE_1_1",
"values": ["6", "284"]
// '6' = 'Demographic | Age Range | 30-34'
// '284' = 'Interest | Business and Finance | Mergers and Acquisitions'
},
{
"taxonomy": "IAB_CONTENT_2_2",
"values": ["49", "138"]
// '49' = 'Books and Literature | Poetry'
// '138' = 'Education | College Education | College Planning'
}],
"PublisherProvidedStructuredSignals": [{
"type": "audio_feed",
"single_value": "af_1",
},
{
"type": "delivery",
"values": ["cd_1", "cd_3"],
},
],
};
Sigue estos pasos para enviar PPS con tu IMAStreamRequest
:
- Crea una cadena JSON con el interés, el comportamiento o los datos contextuales del usuario.
- Crea una cadena ASCII codificada en Base64 a partir de la cadena JSON anterior.
- Agrega la cadena codificada con
IMAStreamRequest.adTagParameters
.
let userSignals = """
{
"PublisherProvidedTaxonomySignals": [
{
"taxonomy": "IAB_AUDIENCE_1_1",
"values": [
"1",
"284"
]
}
],
}
"""
let base64Signals = Data(userSignals.utf8).base64EncodedString()
var encodedSignals = base64Signals.replacingOccurrences(of: "+", with: "%2B")
encodedSignals = encodedSignals.replacingOccurrences(of: "/", with: "%2F")
encodedSignals = encodedSignals.replacingOccurrences(of: "=", with: "%3D")
streamRequest.adTagParameters = { "ppsj" : encodedSignals}
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-08-21 (UTC)
[null,null,["Última actualización: 2025-08-21 (UTC)"],[[["\u003cp\u003ePublisher-provided signals (PPS) let you share audience and contextual data in ad requests to boost programmatic monetization, using standard taxonomies without exposing user identifiers.\u003c/p\u003e\n"],["\u003cp\u003ePPS uses IAB taxonomies like Audience Taxonomy 1.1 and Content Taxonomy 2.2 to categorize audience characteristics like behavior, interests, and content context.\u003c/p\u003e\n"],["\u003cp\u003eStructured signals, defined by Google, offer a way to send extra data points, such as content rating, audio feed type, and delivery method, alongside taxonomy signals.\u003c/p\u003e\n"],["\u003cp\u003eTo implement PPS, construct a JSON object containing your signals, encode it in Base64, and include it in your ad requests using \u003ccode\u003eIMAStreamRequest.adTagParameters\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Improve ad campaigns with PPS\n\nYou can send audience and contextual data as\n[publisher provided signals](//support.google.com/admanager/answer/12451124)\n(PPS) in ad requests. With PPS, you can use your user data to improve\nprogrammatic monetization by communicating your audience characteristics to\nbidders in all\n[transaction types](//support.google.com/admanager/answer/2805834), using\nstandard taxonomies, without the need to share user identifiers. Your audience\ncharacteristics can include behavioral and interest-based data (\n[IAB Audience Taxonomy 1.1](//iabtechlab.com/standards/audience-taxonomy/)), and\ncontextual data (\n[IAB Content Taxonomy 2.2](https://iabtechlab.com/standards/content-taxonomy/)).\nYou can also send publisher provided structured signals, which are defined by\nGoogle, and allow for additional signals to be sent.\n\nConstruct the user signals JSON\n-------------------------------\n\nAt the top level, create a JSON object with a single key-value pair. The key\nshould be `PublisherProvidedTaxonomySignals`, and its value should be an array\nof objects. Each object in the array should have 2 key-value pairs:\n\n- The `taxonomy` key, which accepts the following values that are mapped to\n following IAB public specifications:\n\n - `IAB_AUDIENCE_1_1` for Audience Taxonomy 1.1\n - `IAB_CONTENT_2_2` for Content Taxonomy 2.2\n- The `values` key with a corresponding array of string taxonomy values.\n\n### Construct the structured signals array\n\nFor structured signals, add the `PublisherProvidedStructuredSignals` key with a\nvalue of an array of objects. Construct the object based on the following list\nof signal key-values: \n\n#### Toggle view of structured signals table\n\n| Signal | \"type\" Value | Possible `\"single_value\"` Values | Possible `\"values\"` Values |\n|--------------------|--------------------|-------------------------------------------------------------------------------------------|--------------------------------------------------------------------|\n| Audio Feed Type | `\"audio_feed\"` | - `\"af_1\"`: Music - `\"af_2\"`: Broadcast - `\"af_3\"`: Podcast | n/a |\n| Content Rating | `\"content_rating\"` | - `\"cr_1\"`: G - `\"cr_2\"`: PG - `\"cr_3\"`: T - `\"cr_4\"`: MA | n/a |\n| Content Delivery | `\"delivery\"` | n/a | - `\"cd_1\"`: Streaming - `\"cd_2\"`: Progressive - `\"cd_3\"`: Download |\n| Production Quality | `\"prodq\"` | - `\"pq_1\"`: Professionally Produced - `\"pq_2\"`: Prosumer - `\"pq_3\"`: User Generated (UGC) | n/a |\n\nSee the following example that uses the `IAB_AUDIENCE_1_1` and `IAB_CONTENT_2_2`\nfor taxonomy signals and includes structured signals. \n\n const userSignals = {\n \"PublisherProvidedTaxonomySignals\": [{\n \"taxonomy\": \"IAB_AUDIENCE_1_1\",\n \"values\": [\"6\", \"284\"]\n // '6' = 'Demographic | Age Range | 30-34'\n // '284' = 'Interest | Business and Finance | Mergers and Acquisitions'\n },\n {\n \"taxonomy\": \"IAB_CONTENT_2_2\",\n \"values\": [\"49\", \"138\"]\n // '49' = 'Books and Literature | Poetry'\n // '138' = 'Education | College Education | College Planning'\n }],\n \"PublisherProvidedStructuredSignals\": [{\n \"type\": \"audio_feed\",\n \"single_value\": \"af_1\",\n },\n {\n \"type\": \"delivery\",\n \"values\": [\"cd_1\", \"cd_3\"],\n },\n ],\n };\n\nConfigure your stream request\n-----------------------------\n\nFollow these steps to send PPS with your\n[`IMAStreamRequest`](/interactive-media-ads/docs/sdks/ios/dai/reference/Classes/IMAStreamRequest):\n\n- Create a JSON string with the user's interest, behavior, or contextual data.\n- Create a Base64-encoded ASCII string from the JSON string above.\n- Add your encoded string using [`IMAStreamRequest.adTagParameters`](/interactive-media-ads/docs/sdks/ios/dai/reference/Classes/IMAStreamRequest#adtagparameters).\n\n let userSignals = \"\"\"\n {\n \"PublisherProvidedTaxonomySignals\": [\n {\n \"taxonomy\": \"IAB_AUDIENCE_1_1\",\n \"values\": [\n \"1\",\n \"284\"\n ]\n }\n ],\n }\n \"\"\"\n let base64Signals = Data(userSignals.utf8).base64EncodedString()\n var encodedSignals = base64Signals.replacingOccurrences(of: \"+\", with: \"%2B\")\n encodedSignals = encodedSignals.replacingOccurrences(of: \"/\", with: \"%2F\")\n encodedSignals = encodedSignals.replacingOccurrences(of: \"=\", with: \"%3D\")\n\n streamRequest.adTagParameters = { \"ppsj\" : encodedSignals}"]]