Meta Pixel ayuda a seguir lo que hacen los usuarios en su sitio, a crear audiencias de remarketing y a generar lookalikes. Si Meta Pixel está bien implementado, enviará información relevante a los algoritmos de aprendizaje automático de Meta. Estos algoritmos usan los datos del píxel para mostrar sus anuncios a personas con más probabilidad de convertir.

Durante años, podíamos seguir eventos en el sitio con código JavaScript, el SDK de Facebook en apps o subiendo eventos offline. Pero, ¿cómo seguir a usuarios con bloqueadores o eventos fuera del sitio, y cómo alargar la vida de las cookies? Esto se puede hacer con Facebook Conversions API o con Facebook Conversions API Gateway.
Este artículo se centra en el seguimiento de conversiones de Facebook y muestra cómo configurar Facebook Conversions API con el contenedor de servidor de Google Tag Manager. De paso, mire las plantillas preconfiguradas de Stape para Meta CAPI. Es más fácil que nunca preparar su configuración; todo está listo para usted.
| Enlace: Facebook CAPI tag. |
Relacionado: Guía de seguimiento de Facebook.
Veamos qué es la Facebook Conversions API y cómo usarla para mejorar el seguimiento de eventos, la atribución y la recolección de datos en Facebook. La Facebook Conversions API permite enviar cualquier evento desde su servidor al servidor de Facebook.
Facebook CAPI tiene el mismo objetivo que Meta Pixel, pero la tecnología es distinta. Las políticas y restricciones actuales hacen que CAPI sea más adecuada hoy. Con Facebook Conversions API, el navegador del usuario no se usa para enviar la información de seguimiento. Todo pasa por el servidor en la nube. Los datos de usuario se vuelven más seguros y más precisos.
Si mira de cerca los enlaces de anuncios de Facebook, al final de casi todas las URL verá el parámetro fbclid. El código del píxel en la página de destino guarda ese valor en una cookie y lo envía con cada evento de Facebook. Además del identificador de clic fbclid, Facebook usa el identificador de navegador fbp. Las cookies _fbp y _fbc ayudan a Facebook a entender qué usuario llegó a su sitio y quién convirtió.
Facebook también puede hacer coincidir usuarios usando otros parámetros como email, teléfono, nombre y apellido, etc. Cuantos más datos de usuario envíe a la Facebook Conversions API, mayor será el match rate.
El seguimiento del lado del servidor de Facebook, o Facebook Conversions API, existe desde hace algunos años. Desde 2021, Facebook impulsó su adopción. Si tiene un representante de Meta para su cuenta publicitaria, es muy probable que le recomiende configurar la Facebook Conversions API.
Estas son las razones para considerar la Facebook Conversions API. Los detalles están bajo la infografía.

Al combinar Conversions API con Meta Pixel, Ray-Ban mejoró sus resultados de anuncios. El conjunto dio 36% más de alcance en Facebook e Instagram frente a usar solo Meta Pixel.

La marca también vio una caída del 19% en el coste por mil vistas y una caída del 7% en el coste por conversión. Esto muestra que Conversions API ayuda a optimizar campañas y obtener mejores resultados.
Meta Conversions API Gateway es la forma más rápida de poner en marcha el seguimiento del lado del servidor con Meta sin necesidad de habilidades técnicas específicas.
La función esencial de Conversions API Gateway es su entorno. Cada instancia de Conversions API Gateway necesita un servidor en la nube para manejar todas las comunicaciones entre Meta Pixel y Conversions API. Consulte la documentación oficial de Meta para conocer los detalles técnicos.
Una vez que conecta Meta Pixel al entorno de Conversions API Gateway, usará eventos web para enviar datos desde el servidor. Por eso, antes de implementar Conversions API Gateway, es clave asegurarse de que los eventos web estén correctos al 100% y reciban toda la información requerida del usuario y del producto.
Con Stape, configurar y alojar Conversions API Gateway es más simple que nunca. Cree una cuenta en Stape y configure Conversions API Gateway en Stape. Luego conecte los Meta Pixels necesarios al entorno de Conversions API Gateway.
Stape ofrece hosting para Conversions API Gateway a 10 USD al mes por píxel o 100 USD al mes por 100 píxeles. Todos los usuarios tienen una prueba gratuita de 7 días.

Para configurar Conversions API Gateway con Stape, debe:
Cuando Stape crea el contenedor de Conversions API Gateway, levantamos una pila de AWS CloudFormation según los requisitos de Meta y gestionamos todas las actualizaciones.
Para seguir los pasos, use la guía: Cómo configurar Meta Conversions API Gateway.
| Lea también la comparativa: Meta Conversions API Gateway vs. Conversion API. |
Una de las formas más accesibles es usar Google Tag Manager del lado del servidor. Con sGTM, las empresas pueden enviar datos de clientes directamente a los servidores de Facebook.
Ventajas de configurar Facebook CAPI vía sGTM:
Inconvenientes de configurar Facebook CAPI vía sGTM:
En este artículo, nos centramos en configurar el seguimiento del lado del servidor de Facebook con el contenedor de servidor de GTM.
Usaremos el contenedor de servidor de Google Tag Manager para configurar Facebook Conversions API. Necesitará:
También tenemos un artículo en nuestro blog sobre el contenedor de servidor de Tag Manager y los beneficios que ofrece.
Este vídeo muestra cómo configurar Facebook Conversions API con Google Analytics 4.
2. Envíe datos al contenedor del servidor de GTM. Las formas más usadas son Google Analytics 4 y Data Client de Stape.
3. Abra su contenedor de servidor de Google Tag Manager. Añada la etiqueta de Facebook Conversions API desde la Template Gallery.

4. Cree una etiqueta de Facebook Conversions API en sGTM. Elija Etiqueta, luego Nueva y seleccione la etiqueta de Facebook añadida en el paso anterior.
Añada su Facebook Pixel ID y su Facebook API Access Token. Recomendamos añadir estos valores como variables,porque los necesitará para cada evento de Facebook que quiera seguir. Si no conoce su Facebook API Access Token, la documentación oficial explica cómo obtenerlo.

5. Tiene dos opciones para configurar nuestra etiqueta de Facebook Conversions API:
6. Si eligió override, use los eventos de GA4 o Data Tag y Data Client para activar los eventos del servidor de Facebook. El evento Facebook PageView debe activarse con un evento personalizado page_view reclamado por un cliente específico. Por ejemplo, si elige GA4 como fuente de datos para el contenedor de servidor de GTM, use el evento page_view cuando el nombre del cliente sea GA4.
Para otros eventos, abra Google Tag Manager's preview and debug mode del contenedor de servidor, haga la acción en su sitio, y compruebe el nombre del evento que GA4 o Data Tag envían a su contenedor de servidor.
En el ejemplo, queremos configurar el evento Facebook ViewContent cuando alguien abre una página de producto en el sitio. Asegúrese de enviar con su evento de GA4 o de Data desde el contenedor web los datos extra que usará el evento de servidor. El ejemplo usa parámetros estándar de eCommerce de Facebook y datos de usuario.
Para hacerlo, creamos una etiqueta nueva en el contenedor de servidor, elegimos override, seleccionamos el evento estándar ViewContent, añadimos el API Access Token y el Facebook Pixel ID. También añadimos los User Data. Luego creamos un disparador nuevo con event name igual a view_item y Client Name igual a GA4.


7. Puede pasar parámetros personalizados con Server Event Data Override, User Data y Custom Data. Puede enviar datos de usuario para aumentar el match score de Facebook con User Data. Tenga en cuenta que los datos de usuario enviados a la Facebook Conversions API deben ir con hash. Nuestra etiqueta de Facebook aplica el hash automáticamente cuando es necesario.
También puede activar Event Enhancement para usar una cookie segura HTTP-only gtmeec para enriquecer datos de eventos. Cuando esta opción está activada, la etiqueta guarda datos de usuario en cookies y enriquece eventos cuando estos datos no están disponibles. Esto mejora la calidad de coincidencia y, por lo tanto, la atribución de conversiones a sus campañas.

8. Cuando termine de configurar todos sus eventos de Facebook, abra Google Tag Manager's preview and debug mode y pruebe que todo funciona bien. También puede abrir su etiqueta de Facebook en el contenedor de servidor y añadir un Facebook test ID. Este test ID se encuentra en Meta Events Manager en la pestaña Test events.

9. Cuando haya configurado y verificado que la Facebook Conversions API funciona bien, debe eliminar el tracking del navegador de Facebook o configurar la deduplicación de eventos. De lo contrario, sus eventos se duplicarán.
El primer paso de prueba del seguimiento del lado del servidor de Facebook es el mismo que para Google Analytics. Debe verificar que los eventos se disparan con los disparadores correctos. Abra la herramienta de depuración de GTM, navegue por las páginas de su sitio y realice los eventos que desea probar. Luego vaya a la pestaña del depurador de Tag Manager y revise los resultados.
Primero, asegúrese de que el píxel base de Facebook se dispare en un page_view. Si el estado de la etiqueta es Fail, revise las solicitudes salientes para ver la causa.

Si usa nuestra etiqueta de seguimiento de Facebook del lado del servidor, tiene dos opciones para enviar eventos de Facebook:
Abra Events Manager en su Business Manager de Facebook y haga clic en Test Events. Verá un test event code que debe añadir a nuestra etiqueta de Facebook en Google Tag Manager. Con este código, usted puede probar los eventos del servidor de Facebook en tiempo real.
Una vez añadido el test ID, abra su sitio y realice las acciones que disparan sus eventos de Facebook. Vuelva a la herramienta de pruebas de Facebook y revise los eventos que aparecen. En la columna Received From debe ver Server. Puede hacer clic en el evento y ver los parámetros recibidos.

Tenga en cuenta que la extensión de Chrome Facebook Pixel Helper, utilizada para verificar eventos del navegador, no funciona para Conversions API. Debe comprobar todo en la herramienta de pruebas.
| Nota: las cookies se extienden solo si usa un subdominio personalizado en la URL de etiquetado. Por ejemplo, si la URL de su sitio es example.com, el dominio personalizado del servidor de etiquetado debe ser parecido a anything.yoursite.com. |
El tercer paso es similar, con algunas diferencias. Para verificar la fecha de expiración de las cookies de Facebook, primero debe generarlas. Abra su sitio y añada fbclid.
Luego abra las herramientas de desarrollador, vaya a Storage y después a Cookies. Verifique que _fbc y _fbp se hayan extendido.

Con Stape, usted puede mejorar la precisión del tracking y los resultados de las campañas gracias al seguimiento del lado del servidor.
Según su plataforma, puede implementar el seguimiento rápido y eficazmente con nuestras plantillas personalizadas. Siga las guías paso a paso para configurar Meta CAPI con el contenedor de servidor de GTM para:
Pronto habrá plantillas y guías para Wix, Shopware, Prestashop y otras. Díganos si necesita una plantilla para otro CMS.
Facebook recomienda usar el Pixel y la Conversions API para medir eventos, pero sin deduplicación, los datos duplicados del navegador y del servidor pueden cambiar los resultados. La deduplicación mantiene solo un evento usando IDs únicos que se comparten entre ambas fuentes. Una configuración correcta pide generar y sincronizar estos IDs entre los eventos del navegador y del servidor, y se puede probar todo en Events Manager de Facebook.
Además, enviar datos del usuario por la Conversions API mejora la match quality y las event match scores, lo que ayuda al rendimiento de los anuncios. Los datos del usuario deben venir del data layer y seguir las reglas de privacidad. Herramientas como los plugins de Stape ayudan a integrar estos datos para optimizar mejor las campañas de Facebook.
Para hacer coincidir a los visitantes de su sitio con su base, Facebook usa User Data para Conversions API.
Facebook exige aplicar hash a algunos parámetros antes de enviarlos. No debe preocuparse. La etiqueta de Facebook aplica el hash cuando hace falta. Cuantos más parámetros de usuario envíe a Facebook, mayor será la probabilidad de coincidencia y mejor será su event match score.
Enviar parámetros de usuario desde su sitio a Facebook es un tema sensible porque comparte datos con un tercero. Antes de enviar estos datos a Facebook, asegúrese de que respeta su política de privacidad.
Lo ideal es añadir los datos de usuario a la data layer. Si no es posible, recójalos desde la página con JavaScript y envíelos con las conversiones o eventos que necesite. Por ejemplo, los plugins de Stape para CMS, como Facebook CAPI for Shopify, WordPress server-side tracking, Magento 2 Google Tag Manager y la app de GTM para BigCommerce, añaden una data layer que incluye datos de usuario.
Así podrá recuperarlos fácilmente desde la data layer y añadirlos a los eventos de Facebook en el contenedor web:

Luego, páselos al contenedor de servidor, dentro de la carga de GA4 o Data Tag, según use:

Y, por último, añádalos a su evento de Facebook del lado del servidor:

Con esto, obtendrá una mejor calidad de coincidencia para sus eventos de Facebook y, potencialmente, mejores resultados de sus campañas, porque Facebook entenderá mejor a su audiencia y optimizará sus campañas con más precisión.
El Events Testing Tool de Facebook es muy útil para depurar y resolver problemas con sus píxeles de Facebook o eventos del servidor. Si hay errores, aparecerán en la pestaña Diagnostics para su análisis.
Los errores en rojo requieren una acción rápida y se deben corregir de inmediato. Los errores en amarillo son advertencias no críticas. Debe vigilarlas y tratarlas después.
Facebook permite marcar los problemas como resueltos o ignorados. Si marca un error como resuelto y reaparece, Facebook lo mostrará otra vez en 3 días. Los problemas ignorados van a la sección Ignored y se quedan allí.
Cuando corrige un problema de tracking de Facebook, le recomiendo marcarlo como resuelto. Así le indica a Facebook que el problema se arregló y recibirá una alerta si vuelve.

Puede ver todos los dominios que envían datos a su píxel de Facebook. Si Facebook detecta tráfico desde un dominio o subdominio nuevo, la plataforma envía una advertencia. Puede poner dominios en una lista de permitidos o bloqueados. Esta función ayuda a bloquear tráfico de sitios de prueba o de URL técnica.
Es muy probable que también vea tráfico desde gtm-msr.appspot.com. Esto puede pasar cuando ejecuta un contenedor en modo de depuración o de publicación, o cuando llegan usuarios con JavaScript desactivado, por ejemplo, bots.
Para crear listas de autorización o bloqueo, abra Events Manager, haga clic en Settings y baje hasta Traffic Permissions.


Según nuestra experiencia, este es el segundo error más frecuente. Significa que no está enviando algunas claves de deduplicación para sus eventos del servidor. Facebook usa estas claves de deduplicación: event name, event ID, _fbp y external_id.

En nuestra experiencia, el Event ID causa este error en el 80% de los casos. Verifique que envía un Event ID para Meta Pixel y para Facebook Conversions API. Este ID debe ser el mismo para el evento del navegador y el del servidor. Facebook verá el mismo nombre e ID de evento y hará la deduplicación.
Por ejemplo, para PageView, envíe el mismo Event ID y el mismo nombre desde Meta Pixel y desde Facebook CAPI.
Para probar el Event ID, abra la herramienta de test de eventos de Facebook. Si todo está bien, debería ver algo como la captura. Facebook muestra los PageView que recibió del navegador y del servidor. Como tenían el mismo Event ID, deduplicó los del servidor.

También puede haber otro caso en el que vea eventos de navegador y de servidor activados de forma aleatoria. En este caso, verifique el Event ID de Facebook. Probablemente esos IDs no son idénticos. Puede usar nuestra variable personalizada para el contenedor web y así definir el Event ID de Facebook. Revise también la sección de deduplicación.
A veces este error ocurre por olvidar quitar el Facebook test ID antes de publicar las etiquetas de Facebook CAPI en producción. Recomiendo configurar el Test ID como una variable de tabla de búsqueda que solo funcione cuando el modo de depuración sea verdadero.


Aquí, Facebook indica que los valores enviados desde el servidor no son únicos o están mal formateados. Por ejemplo, quizá envía una IP de usuario con símbolos en lugar de solo números, o seleccionó la variable equivocada, como un teléfono en el campo email.
Para revisar el problema, abra Google Tag Manager's preview and debug mode del contenedor de servidor y del contenedor web si usó GTM para configurar Facebook Conversions API. Debe ver qué parámetros de usuario se enviaron a Facebook y si están bien formateados. Pruebe el evento, haga clic en la etiqueta en el modo de depuración y luego en values.

Este error también puede indicar que falta un parámetro o que está mal formateado.
Por ejemplo, un cliente quería enviar el país y la ciudad del usuario a partir de la IP. Facebook espera ver los datos reales introducidos por el usuario en el sitio y no los deducidos automáticamente de la IP. Esto también generó un error de parámetros inválidos.

Este error suele venir de los eventos del navegador y significa que Facebook detectó datos del usuario en la URL. Algunos CMS y otras herramientas como Calendly o PayPal envían datos del usuario en la URL después de que se registran o hacen una compra.
Este error es difícil de corregir y es una tarea para tus desarrolladores. Ellos deben mejorar los parámetros de la URL y quitar toda la información del usuario. También puedes seguir las instrucciones de esta publicación de GitHub y probar a corregir el problema dentro de GTM. Otra opción es pasar a un tracking de Facebook solo por servidor. Con este método puedes cambiar la URL antes de enviarla a Facebook.

Por cada evento de servidor que envíes a FB, habrá un puntaje de event match quality. Este puntaje depende de la cantidad de datos del usuario que envíes a FB.
Si usas un subdominio personalizado para tu servidor de etiquetado, solo se envían a FB CAPI la IP del usuario, el browser ID, _fbp y _fbc. Si envías solo estos parámetros del usuario, la match quality será cerca de 4 de 10.
Para tener un puntaje alto, es importante enviar tantos parámetros como sea posible. FB usa estos datos para unir a los usuarios de tu sitio con los que están en su base. Antes de hacerlo, debes revisar si enviar datos del usuario cumple con la política de privacidad de tu sitio y con otras reglas. Pero en lo técnico es bueno enviar más parámetros. Esto hace que los datos de audiencia y conversiones sean más exactos; los algoritmos de Facebook tendrán datos más claros sobre tus usuarios y las campañas tendrán mejores resultados.
¿Cómo puedes subir el puntaje de event match quality? La respuesta es simple: necesitas enviar más datos del usuario. Pero la implementación es compleja. Aquí tienes cómo funciona, primero reviso si el data layer está implementado en tu sitio y si tiene todos los datos del usuario. Por ejemplo, si el usuario puede iniciar sesión en tu sitio, debes revisar si los datos del usuario se envían al data layer cuando inicia sesión.
Si el data layer no está implementado, entonces pide a tus desarrolladores que lo configuren.
Después de eso, asegúrate de pasar todos los parámetros del usuario del web al servidor.
Otra cosa que ayuda a aumentar la match quality es una función nueva del Data Tag. Añadimos la opción de guardar datos del usuario. Por ejemplo, si el usuario envía un formulario de contacto en el sitio, puedes usar el Data Tag para guardar estos datos en el almacenamiento local y usarlos luego en otras páginas.
Si siguen eventos de Facebook desde el navegador y desde el servidor, Facebook exige enviar un Event ID único para cada evento. Para los eventos coincidentes, el event name del Meta Pixel debe ser igual al event name del servidor. Lo mismo para el Event ID. Los mismos eventos del píxel deben coincidir con los del servidor. Así se activa la deduplicación.
Este error ocurre cuando envía el mismo Event ID para varios eventos. Por ejemplo, un usuario llega a una página de producto. Deben dispararse dos eventos, PageView y ViewContent. Debe enviar un Event ID único para cada evento. Sus eventos e IDs deberían verse así:
FB browser: PageView, eventID: ‘69’
FB server: PageView, eventID: '69'FB browser: ViewContent, eventID: '79'
FB server: ViewContent, eventID: '79'Aunque estos eventos se disparen en la misma página y puedan usar el mismo disparador en los contenedores web y de servidor, debe enviar un Event ID único para cada uno.
Same Event ID Received for Many Event Instances ocurre si tiene este caso:
FB browser: PageView, eventID: ‘69’
FB server: PageView, eventID: '69'FB browser: ViewContent, eventID: '69'
FB server: ViewContent, eventID: '69'En este ejemplo, enviamos eventID 69 para PageView y para ViewContent. Facebook espera ver un Event ID único para ambos eventos.
Solución: añada un Facebook test ID, abra Google Tag Manager's preview and debug mode en los contenedores web y de servidor y pruebe la configuración. Después de encontrar cuándo ocurre el error, corríjalo.
Hemos creado una variable personalizada que genera un Event ID único. Recomiendo usarla para configurar la deduplicación de eventos de Facebook. Puede añadir el nombre del evento dentro de la variable para garantizar la unicidad. Aunque sus eventos usen el mismo disparador, el Event ID será único porque contendrá event_name_eventID.
Por defecto, la etiqueta intenta mapear los eventos estándar de GA a los eventos estándar de Facebook. Si no puede hacer la coincidencia, usa el nombre crudo del evento recibido del cliente de GA. Por ejemplo, si envía un evento llamado gtag('event','UserLikedProduct'), verá el evento UserLikedProduct en Facebook Events Manager.
A continuación, el esquema de mapeo de eventos de GA a Facebook que usa esta etiqueta por defecto:
| page_view | PageView |
| add_payment_info | AddPaymentInfo |
| add_to_cart | AddToCart |
| add_to_wishlist | AddToWishlist |
| sign_up | CompleteRegistration |
| begin_checkout | InitiateCheckout |
| generate_lead | Lead |
| purchase | Purchase |
| search | Search |
| view_item | ViewContent |
| contact | Contact |
| customize_product | CustomizeProduct |
| donate | Donate |
| find_location | FindLocation |
| schedule | Schedule |
| start_trial | StartTrial |
| submit_application | SubmitApplication |
| subscribe | Subscribe |
Para facilitar la migración desde su etiqueta de Facebook en el contenedor web al contenedor de servidor, intentamos mapear todos los datos que el cliente de GA recibe hacia el evento de Facebook sin ajustes por su parte. La etiqueta también soporta el mapeo de eventos de Enhanced Ecommerce de GA y, por supuesto, puede sobrescribir cualquier parámetro de evento enviado a Facebook.
Por ejemplo, si la etiqueta detecta que el tipo de evento es Purchase, determinamos la lista de productos, su divisa y el valor.
En las secciones de abajo describimos cómo se mapean los datos en cada grupo de parámetros.

En la categoría Server Event Data hay pocos parámetros. Consulte la documentación para ver la lista actual.
Parámetros por defecto:
| event_name | Nombre del evento |
| event_source_url | Ubicación de la página |
| action_source | Dónde ocurrieron sus conversiones. Por ejemplo, sitio web, email o app |
| event_time | Hora actual |
Con la opción User Data del tag, puede sobrescribir o añadir cualquier dato de usuario enviado a Facebook. Revise la documentación de Facebook para ver la lista de parámetros de User Data que puede añadir. Si la documentación dice que el parámetro debe ir con hash, debe aplicarlo con SHA256; si no, Facebook lo rechazará.
| fbc | Cookie value ‘_fbc’ or ‘fbclid’ url parameter if exist |
| fbp | Cookie value ‘_fbp’ |
| external_id | external_id or user_id or userId |
| subscription_id | subscription_id or subscriptionId |
| lead_id | lead_id or leadId |
| ln | lastName or LastName or nameLast |
| fn | firstName or FirstName or nameFirst |
| em | |
| ph | phone |
| ge | gender |
| ct | city |
| st | state |
| zp | zip |
| country | countryCode |
También puede sobrescribir otros parámetros o añadir nuevos en la sección Custom Data de la configuración del tag. Revise la documentación para ver la lista de parámetros Custom Data posibles.
Si existe Enhanced Ecommerce items, el tag define content_type como product. Los parámetros de producto de GA, item_name e item_category, se mapean a Facebook content_name y content_category.
El tag también intenta determinar otros parámetros de producto, incluyendo:
| value | x-ga-mp1-ev or value |
| currency | currency |
| transaction_id | order_id |
Si el tipo de evento es Purchase, pero no se puede determinar la currency, se usa USD por defecto. Facebook no acepta eventos Purchase sin el parámetro currency.
Esperamos que haya movido con éxito el seguimiento de Facebook al lado del servidor. Facebook Conversions API es una buena herramienta para entender mejor quién es su cliente, ver el recorrido hasta la conversión y enviar más datos sobre sus usuarios a los algoritmos de Meta.
Podemos ayudarle. Averigüe cuánto le costará. Obtenga un presupuesto en 24 horas. Sí, lo decimos en serio.
Comentarios