Parámetros de URL en ChatGPT Ads: UTM, macros dinámicas y oppref
Cómo etiquetar el tráfico de los anuncios en ChatGPT: las cuatro macros dinámicas, dónde poner los parámetros UTM, qué nivel gana y por qué cuidar oppref.
Publicado el 28 sept 2026 · 13 min de lectura
¿Qué son los parámetros de URL en ChatGPT Ads?
Los parámetros de URL son los pares de clave y valor que van tras el signo de interrogación en la dirección de una página de destino. En ChatGPT Ads llevan dos cosas distintas, y conviene separarlas desde el primer día.
El primer tipo es tuyo: las etiquetas UTM y cualquier otro parámetro de consulta que definas. OpenAI indica que los parámetros de seguimiento estáticos, como los UTM, se conservan en los clics de los anuncios y pueden usarse en las herramientas de analítica existentes para entender el tráfico de ChatGPT Ads.
El segundo tipo es de OpenAI: una referencia de clic llamada oppref, añadida al final de la URL de la página de destino. Existe para que OpenAI pueda conectar una conversión posterior con el clic en el anuncio.
| Tus parámetros | oppref | |
|---|---|---|
| Quién lo define | Tú, en Ads Manager o en la URL | OpenAI, automáticamente |
| Qué describe | Campaña, grupo de anuncios, anuncio, cuenta | Un clic en un anuncio |
| Quién lo lee | Tu analítica y tu CRM | La medición de conversiones de OpenAI |
Necesitas ambos. Los UTM y los ID alimentan tus propios informes. La referencia de clic alimenta la columna Conversions de Ads Manager y da a las campañas de conversiones la señal con la que optimizan.
¿Qué macros dinámicas admite ChatGPT Ads?
Cuatro. Una macro es un marcador que Ads Manager sustituye por un valor real cuando se entrega el anuncio. OpenAI enumera estas macros admitidas para los parámetros de consulta de la página de destino:
| Macro | Se sustituye por | Útil para |
|---|---|---|
{campaign_id} | El ID de la campaña | Informes de presupuesto y de campaña |
{ad_group_id} | El ID del grupo de anuncios | Separar resultados por tema de segmentación |
{ad_id} | El ID del anuncio | Comparar creatividades |
{ad_account_id} | El ID de la cuenta publicitaria | Agencias y anunciantes con varias marcas |
OpenAI indica que Ads Manager rellena automáticamente las macros admitidas en el momento de la entrega. Es decir, el valor se resuelve cuando se sirve el anuncio, no cuando guardas el ajuste.
A nuestro juicio, {ad_group_id} es la que más anunciantes desaprovechan. En este canal el grupo de anuncios contiene los context hints, la puja y los ajustes de audiencia, así que un ID de grupo de anuncios en un lead te dice qué tema de intención lo generó.
Hay un marcador más en la documentación para desarrolladores de OpenAI. La página Campaign Management muestra una plantilla que termina en click_id={oppref}, que copia la referencia de clic en un parámetro con el nombre que elijas. La lista de macros del centro de ayuda no lo incluye, así que trátalo como una opción documentada en la API y pruébalo antes de depender de él.
¿Cómo añado parámetros UTM a ChatGPT Ads?
Hay tres formas documentadas. Elige una como estándar y usa las otras solo para excepciones.
En Ads Manager. Los pasos de OpenAI son:
- Abre la página Campaigns, Ad groups o Ads.
- Abre el menú de tres puntos de una fila y elige Edit campaign, Edit ad group o Edit ad.
- En la ventana de edición, busca Landing page query parameters.
- Añade los parámetros que quieras anexar a las URL de la página de destino y guarda.
Directamente en la URL de destino. Las pautas creativas de OpenAI dicen que puedes añadir parámetros de seguimiento directamente a las URL de destino e incluir tus propios parámetros UTM en cada creatividad. Encaja con quienes etiquetan cada anuncio a mano.
Con la Ads API. El campo es landing_page_configuration.query_string_template, y OpenAI indica que se puede añadir a nivel de campaña, de grupo de anuncios o de anuncio. El ejemplo de campaña de la documentación para desarrolladores usa esta plantilla:
utm_source=openai&utm_medium=paid&utm_campaign={campaign_id}&utm_content={ad_id}
Fíjate en que la plantilla es solo una cadena de consulta. No lleva signo de interrogación inicial ni dominio, porque se anexa a la página de destino a la que ya apunta cada anuncio.
¿Cómo debe ser una plantilla de seguimiento?
Una buena plantilla tiene una mitad fija que las personas pueden leer y una mitad dinámica con la que las máquinas pueden cruzar datos. Es nuestra recomendación, no un requisito de OpenAI.
| Parámetro | Valor | Por qué |
|---|---|---|
utm_source | Un nombre fijo para el canal | Una fuente estable en todos los informes |
utm_medium | Un medio de pago fijo | Se agrupa con tu otro tráfico de pago |
utm_campaign | {campaign_id} o tu propia etiqueta | Desglose por campaña |
utm_content | {ad_id} | Desglose por creatividad |
La orientación de Google para Analytics es que, al añadir parámetros a una URL, uses siempre utm_source, utm_medium y utm_campaign. Describe utm_content como el parámetro que sirve para diferenciar creatividades, y recomienda un utm_source único para cada plataforma distinta. Sea cual sea el nombre de fuente que elijas, elígelo una sola vez. El ejemplo de OpenAI usa openai. Muchos anunciantes prefieren chatgpt. Cualquiera sirve, siempre que todas las campañas usen el mismo.
Si además quieres el grupo de anuncios, añade un parámetro propio, por ejemplo oai_adgroup={ad_group_id}. Un prefijo como oai_ evita que tus claves choquen con los parámetros de otra plataforma en una página de destino compartida. De nuevo, es nuestra convención, no una regla documentada.
Unos pocos hábitos mantienen la plantilla en buen estado:
- Escribe las macros exactamente como están documentadas, en minúsculas, con guiones bajos y llaves simples.
- Pon las macros en los valores. Todos los ejemplos documentados llevan la macro a la derecha del signo igual.
- Deja fuera los datos personales. Las URL acaban en registros, herramientas de analítica y el historial del navegador.
- Cambia la plantilla a conciencia. Una clave cambiada parte tu historial en dos filas.
¿Qué nivel gana cuando los parámetros entran en conflicto?
Gana el ajuste más específico. El centro de ayuda de OpenAI da esta jerarquía:
- URL del anuncio
- Anuncio
- Grupo de anuncios
- Campaña
Si un parámetro ya está en la URL del anuncio, los ajustes a nivel de campaña, grupo de anuncios o anuncio no lo sobrescriben.
La documentación para desarrolladores añade dos detalles. Primero, los parámetros de distintos niveles se combinan, así que una plantilla de campaña y un añadido a nivel de anuncio llegan ambos a la página de destino. La prioridad solo importa cuando un parámetro está duplicado. Segundo, el orden de la API llega un paso más lejos: URL de destino existente, anuncio, grupo de anuncios, campaña y, después, cuenta publicitaria.
En la práctica, define una plantilla a nivel de campaña con macros. Cada grupo de anuncios y cada anuncio por debajo la hereda, y los anuncios nuevos quedan etiquetados sin que nadie tenga que acordarse. Sobrescribe más abajo solo si un anuncio necesita de verdad otro valor.
La regla tiene un efecto secundario que conviene conocer. Si hace meses alguien pegó un utm_campaign escrito a mano en la URL de destino de un anuncio, tu nueva plantilla de campaña no lo sustituirá. Cuando un informe muestre un anuncio con un valor de campaña extraño, revisa primero la URL del anuncio.
¿Qué es oppref y en qué se diferencia de un UTM?
oppref es la referencia de clic de OpenAI. OpenAI indica que se añade al final de la URL de la página de destino, y da el formato www.openai.com?oppref=gAAAAAb123. La documentación para desarrolladores lo llama un identificador que protege la privacidad, y la referencia de la Conversions API lo llama un identificador de atribución opaco, proporcionado por OpenAI, que pasas como la cadena original sin modificar.
Lo que ocurre con él depende de cómo envíes las conversiones:
| Integración | ¿Captura oppref por ti? |
|---|---|
| OpenAI Pixel | Sí. Lee la URL y guarda el valor en una cookie propia __oppref |
| Conversions API | No. Tú capturas el valor y lo envías con el evento de servidor |
| Image tag | No. Pásalo solo cuando tu página ya tenga el valor |
El pixel pide una duración de cookie de 30 días desde que la escribe. Cada vez que el pixel captura de una URL un oppref no vacío, reinicia la caducidad a 30 días. Leer la cookie guardada en una visita sin el parámetro no la prolonga. OpenAI señala que las restricciones del navegador o el borrado de cookies pueden acortar esa duración, y que llamar a oaiq("consent", false) elimina la cookie.
OpenAI dice también que la caducidad de la cookie es independiente de las ventanas de atribución de conversiones. La duración de la cookie solo describe el almacenamiento en el navegador. Las ventanas de informes se eligen en Ads Manager, donde la ventana post-clic puede ser de 7, 14 o 30 días. Consulta informes de anuncios y privacidad para esa parte.
La configuración completa del pixel y del servidor está en seguimiento de conversiones.
¿Por qué se pierden parámetros entre el clic y la página?
Casi siempre porque algo entre el anuncio y la página final reescribe la URL. OpenAI pide a los anunciantes conservar oppref en las redirecciones y en la navegación dentro de la página de destino, y su orientación sobre calidad de eventos dice que hay que probar el recorrido completo, incluidos los enlaces de seguimiento, las redirecciones, el checkout y cualquier traspaso entre navegador y servidor.
Por nuestra experiencia, estas son las causas habituales:
- Una redirección de un dominio o una ruta a otra que descarta la cadena de consulta.
- Un acortador de enlaces o una redirección de seguimiento colocados delante de la página de destino.
- Un banner de cookies o un script que recarga la página con una URL limpia.
- Una herramienta de páginas de destino o una aplicación de página única que reescribe la URL en la primera navegación.
- Un formulario en una segunda página que nunca vio los parámetros originales.
Esos mismos fallos eliminan tus UTM y tus ID, no solo la referencia de clic. Así que una prueba cubre las dos cosas: haz clic en un anuncio activo, sigue cada salto y lee la barra de direcciones en la página final.
La página de calidad de eventos de OpenAI añade un aviso para las configuraciones de servidor: no reutilices la información de clic de otra persona ni la sustituyas por un valor predeterminado. Una referencia que falta debe seguir faltando.
Cuando la referencia se pierde, el advanced matching automático puede ayudar. OpenAI lo describe como una forma de conectar las conversiones de la web con tus anuncios cuando no hay un identificador de clic disponible. Es un plan alternativo, no un sustituto.
No juzgues las macros por una vista previa. OpenAI indica que las macros se rellenan en el momento de la entrega y que la vista previa de un anuncio muestra su aspecto. En nuestra opinión, la única comprobación fiable es un clic real en un anuncio que se esté sirviendo. Si el anuncio aún no se entrega, consulta por qué no se sirven los anuncios en ChatGPT.
¿Cómo leo los parámetros en Google Analytics?
Los parámetros UTM no necesitan configuración. Google indica que, cuando un usuario hace clic en un enlace, los parámetros de la URL se envían a Analytics y sus valores se ven en el informe Traffic acquisition.
Las claves personalizadas, como un parámetro de grupo de anuncios, dan más trabajo. Google describe la secuencia para cualquier dato personalizado:
- Añade un parámetro de evento o una propiedad de usuario al código de tu web.
- Un usuario visita la web y el dato personalizado se envía a Google Analytics.
- Crea una dimensión personalizada para poder analizar el dato.
- Tras 24-48 horas, puedes empezar a hacer informes con la dimensión personalizada.
El límite documentado por Google para una propiedad estándar es de 50 dimensiones personalizadas de ámbito de evento y 25 de ámbito de usuario. Tres o cuatro dimensiones de ID caben sin problema, pero no son gratis, así que registra solo las que vayas a usar en informes.
Un paso es nuestro, no de Google: guarda los valores al llegar. Un parámetro que solo existe en la página de destino ya no está cuando el visitante convierte tres páginas después. Guárdalo en almacenamiento propio cuando el visitante aterriza, de acuerdo con tus reglas de consentimiento, y recupéralo cuando se dispare la conversión.
¿Por qué los clics de Ads Manager no coinciden con las sesiones de la analítica?
Porque miden cosas distintas. OpenAI explica que los clics miden interacciones con el anuncio, mientras que las sesiones de analítica dependen de la carga de la página, las redirecciones, los ajustes de consentimiento, el bloqueo del navegador, el tratamiento de los UTM, las ventanas de atribución y la zona horaria.
Para comparar con justicia, el consejo de OpenAI es usar el mismo intervalo de fechas y la misma zona horaria, y después revisar la actividad por campaña y por anuncio con exportaciones CSV.
El momento también importa. OpenAI indica que las impresiones, los clics y el CTR se actualizan normalmente cada 15 minutos aproximadamente, que los datos de gasto llevan un retraso aproximado de 7-8 horas y que las conversiones atribuidas pueden tardar 24-48 horas en aparecer. Las cifras de hoy rara vez coincidirán entre dos herramientas.
Una diferencia no indica necesariamente un error. Esa frase es de OpenAI, de su página de medición de conversiones.
¿Cómo paso los ID de campaña y de anuncio a un CRM?
Captúralos en el formulario. En generación de leads, el valor del etiquetado aparece después de enviar el formulario, porque los ingresos viven en el CRM y no en Ads Manager.
- Lee los parámetros cuando llega el visitante y guárdalos.
- Añade a cada formulario campos ocultos para los valores de campaña, grupo de anuncios y anuncio.
- Asigna esos campos a propiedades del registro del lead.
- Comprueba que los valores sobreviven cuando un lead pasa a ser un negocio o una oportunidad.
Con {campaign_id}, {ad_group_id} y {ad_id} en cada lead, ves qué grupo de anuncios generó los leads que se hicieron clientes, no solo qué anuncio generó clics.
Las macros devuelven ID, no nombres. Todas las macros documentadas son ID, y OpenAI no incluye ninguna macro para el nombre de una campaña o de un grupo de anuncios. Mantén una tabla de correspondencia de ID a nombre y añade una fila cada vez que crees una campaña o un grupo de anuncios. Los endpoints de informes de la Ads API aceptan campaign_id como campo, así que quien use la API puede reconstruir la tabla a partir de un informe.
Los ID tienen una ventaja real sobre las etiquetas. Un nombre se puede editar en cualquier momento, mientras que el ID no cambia, así que las filas antiguas y las nuevas siguen cruzándose.
También es la base para devolver leads cualificados a OpenAI como eventos de conversión, como explicamos en campañas de conversiones.
¿Funcionan los parámetros de URL con el feed de productos y los partners de medición?
Sí, con algunos detalles documentados.
Campañas de feed de productos. En una campaña de feed, el producto seleccionado aporta la URL de destino. OpenAI indica que, para añadir parámetros de seguimiento a las URL de producto, se usa landing_page_configuration en la campaña, el grupo de anuncios o el anuncio. Aparte, las buenas prácticas de comercio de OpenAI sugieren añadir parámetros de atribución del feed al campo url del producto, con utm_medium=feed como ejemplo, y mantener coherentes los parámetros de seguimiento internos entre snapshots. Más información en nuestra guía del feed de productos.
Partners de medición. Las instrucciones de OpenAI para partners mencionan el etiquetado de URL en tres sitios:
| Partner | Qué dicen los pasos de configuración de OpenAI |
|---|---|
| Triple Whale | Sigue aplicando los UTM de Triple Whale a tus campañas de ChatGPT Ads |
| Fospha | Comparte tu configuración de UTM junto con la clave de API |
| Branch | Usa un Branch Ad Link como URL de destino y mantén las macros de Branch en el campo Landing page query parameters |
Si usas una de estas herramientas, sus parámetros van primero y tu plantilla no debe sobrescribir sus claves. Consulta partners de medición.
Preguntas frecuentes sobre los parámetros de URL en ChatGPT Ads
¿Qué parámetros de URL dinámicos admite ChatGPT Ads?
El centro de ayuda de OpenAI enumera cuatro macros admitidas: {campaign_id}, {ad_group_id}, {ad_id} y {ad_account_id}. Ads Manager las rellena automáticamente en el momento de la entrega. Puedes mezclarlas con tu propio texto fijo.
¿Dónde está el ajuste en Ads Manager?
Abre el menú de tres puntos en la página Campaigns, Ad groups o Ads, elige la opción Edit correspondiente y usa el campo llamado Landing page query parameters.
¿Una plantilla a nivel de campaña sobrescribe los UTM que ya están en la URL de mi anuncio?
No. OpenAI indica que, si un parámetro ya está definido a nivel de URL del anuncio, los ajustes de campaña, grupo de anuncios o anuncio no lo sobrescriben.
¿Puedo ver el nombre de la campaña en lugar del ID?
No mediante una macro. Las cuatro macros documentadas devuelven ID. Escribe una etiqueta legible como texto fijo en la plantilla, o mantén una tabla de correspondencia de ID a nombre.
¿Es oppref un parámetro UTM?
No. Es la referencia de clic de OpenAI, que se añade automáticamente e identifica el clic para la medición de conversiones. Los UTM son etiquetas que eliges para tu propia analítica. OpenAI te pide conservar oppref en las redirecciones y en la navegación dentro de la página de destino.
¿Cuánto tiempo recuerda el pixel oppref?
La documentación para desarrolladores de OpenAI da a la cookie __oppref una caducidad de 30 días desde que el pixel la escribe, y señala que las restricciones del navegador o el borrado de cookies pueden acortarla.
¿Tengo que enviar oppref con los eventos de servidor?
Sí, cuando esté disponible. OpenAI indica que la Conversions API no captura oppref por ti, así que capturas el valor tú mismo y lo pasas sin cambios con el evento de servidor.
¿Puedo poner datos de clientes en un parámetro de URL?
No lo hagas. La documentación del image tag de OpenAI dice que no se deben poner datos personales, secretos, ID de sesión, identificadores de cliente ni identificadores de pedido en ningún parámetro de consulta. Aplicamos la misma regla a las URL de las páginas de destino.
¿Por qué mi informe muestra el texto de la macro en lugar de un número?
OpenAI no documenta este caso. Por nuestra experiencia, las causas son una macro mal escrita, una macro que no es una de las cuatro admitidas o una URL copiada de una vista previa y no de un anuncio entregado. Verifícalo con un clic real antes de cambiar nada.
¿Sigo necesitando el seguimiento de conversiones si uso UTM?
Sí. Los UTM solo informan a tus propias herramientas. La columna Conversions de Ads Manager y la entrega optimizada para conversiones dependen de los eventos enviados con el pixel o la Conversions API. Empieza por el seguimiento de conversiones, y consulta el glosario para cualquier término usado aquí.
¿Prefieres que lo hagamos por ti? Leads de los anuncios en ChatGPT: todos en una bandeja, marcados como reales o no