blog banner

Seguimiento de los clics en un link hacia WhatsApp

El seguimiento de los clicks sobre un enlace tiene una problemática asociada en la que muchas veces no caemos. Aquí explico cómo resolverla.

(Este artículo viene del previo Crear un link hacia Whatsapp y trackear los clics)

Empiezo indicando que no soy partidario de medir clics para métrica de conversión ya que un clic a un WhatsApp o número de teléfono llevan al usuario a la aplicación WhatsApp o Marcador pero no significa que este acabe escribiendo o llamando. Pero ahí no podemos hacer nada al respecto y alguna métrica debemos tomar, así que… ¡A medir clicks!

Tracking de un click en enlaces

Lo primero sería saber qué código debemos enviar a qué sistema. El seguimiento puede realizarse en muchísimos sistemas diferentes como Analytics, Google Ads, Bing, Twitter… Partiré del ejemplo de Analytics como base para la explicación.

La idea es que cuando el usuario haga un click sobre el link a WhatsApp, enviemos un código generate_lead a Analytics para que este lo tenga en cuenta y usaremos el siguiente fragmento:

gtag('event', 'generate_lead', {'event_category': 'engagement','event_label':'whatsapp'});

Bien, una vez sabemos qué debemos ejecutar la primera idea que nos viene a la cabeza es poner un onclick al enlace y ejecutar este código ¿no?

 <a class="mobile desktop-hidden" href="https://api.whatsapp.com/send?phone=34999999999&text=Hola!%20Quiero%20información" onclick=" gtag('event', 'generate_lead', {'event_category': 'engagement','event_label':'whatsapp'});">999 999 999</a> 

Pues algo tan sencillo, como no, ¡es incorrecto! Bueno, incorrecto no… Siendo estrictos es correcto pero no funcionaría. El problema es que se ejecuta el onclick y redirige pero lo hace tan rápido que no da tiempo a que se ejecute la llamada a gtag() cuando ya ha cargado la página siguiente, por lo que no tendríamos ningún seguimiento de la acción registrada en Analytics.

¿Cómo resolvemos el problema de seguimiento de click en el link?

La solución, tal como he indicado, no es trivial pero es efectiva. Debemos hacer la redirección también en el onclick, mediante javascript y tras la llamada gtag() a Analytics.

<a href="https://api.whatsapp.com/send?phone=34999999999&text=Hola!%20Quiero%20información" onclick="gtag('event', 'generate_lead', {'event_category': 'engagement','event_label':'whatsapp'});window.open(' https://api.whatsapp.com/send?phone=34999999999&text=Hola!%20Quiero%20información');return false;">999 999 999</a>

De este modo, al hacer click sobre el enlace se ejecuta la llamada a gtag() y se abre el enlace hacia api.whatsapp.com, una cosa tras la otra.

Además veréis que he agregado «return false;» al final… Esto es para que no ejecute la redirección del href directamente y se comporte como al principio.

Con esto temos ya resuelto el seguimiento de los clicks en un enlace y la problemática asociada. Espero que haya sido de utilidad y cualquier comentario al respecto es bienvenido.

    • Hola Santiago!
      Para realizar el tracking de Google Ads, la página debe tener el código de seguimiento genérico con las llamadas a gtag(‘config’, ‘AW-XXXXXXXX’); dentro del , junto con el UA. Luego, el enlace se trackea igual que lo descrito en el post pero en lugar (o además si queremos seguir contando mediante Analytics) de gtag(‘event’, ‘generate_lead’, ….. lo que se pondrá será él código de conversión gtag(‘event’, ‘conversion’, {‘send_to’: ‘AW-XXXXXXXX/XXXXXXXXXXXXXXX’});

      De todas formas, se puede usar el mismo ejemplo del post e importar los objetivos de Analytics como conversiones de Google Ads.

      Espero haber ayudado…

      Un saludo!

  • Estuve muchos meses para poder configurarlo y finalmente lo hice gracias a tu explicación. Aunque me quedó una duda, es necesario pegar el código debajo del código genérico o debo hacerlo donde tengo el link del whatsapp?

    Por otro lado te quería consultar es si sabes cómo hacer cuando una web varias whatsapp (un portal inmobiliario que tiene el Whatsapp de cada inmobiliaria), cómo medir todos los click a whatsapp?… Desde ya mil Gracias!!!

    • Hola Maria José! Me alegro de que te haya servido. Lo importante es que el código genérico se ejecute antes que la llamada y como esta es asíncrona, con el clic del botón, lo más probable es que se ejecute después. Si la carga de la página es rápida y, por tanto, la instancia a gtag() se ejecuta antes que dé tiempo a hacer clic, no habrá problema.

      Respecto tu segunda pregunta puedes poner este código con los diferentes números sin problema. Como extra, yo tal vez cambiaría el label en cada llamada para poderlos diferenciar desde Analytics.

      Espero que te haya servido también mi respuesta 🙂

      Un saludo!

  • Hola gracias por tu post
    quisiera saber como puedo medir si un usuario envio un mensaje, como dices: puede abrir tu numero de whatsapp pero no significa que vaya a escribir
    Gracias

    • Hola Jhael,
      Lamentablemente por ahora no hay ninguna manera que nos permita saber que la persona ha escrito un mensaje en WhatsApp y debemos trabajar con estimaciones. Por ello también se estila agregar sistemas de chats que sí permiten el tracking, aunque sea mediante Google Analytics únicamente pero el usuario no está tan habituado a ello.

      Un saludo!

  • Hola;
    Muchas Gracias!
    Creo que es lo que estoy buscando… pero no sé donde va algo que conecte con mi Analytics, ya que el link no está relacionado con ningun sitio en donde yo ya tenga el UA de Analytics.
    Es decir el link que busco trackear es independiente de una web.
    Es posible?

    • Hola!
      Disculpa… No entiendo mucho la estructura web + analytics a la que te refieres pero intento aclarar según interpreto: El enlace hacia Whatsapp sobre el que quieres realizar el seguimiento del clic debe estar en una página web que sí tenga el código de seguimiento de Google Analytics en su . Por tanto, al hacer clic, se enviará un evento de clic a esa cuenta de Analytics enlazada.

      Por lo que indicas, das a entender que el enlace no está en una página web… Entonces deduzco que está en un email, un qr, o algo similar. En estos casos, si el destino no va a una página en la que tengamos control con Analytics, como puede ser la de Whatsapp, no hay manera de trackear directamente. Se debe buscar una manera alternativa de realizar el tracking como la creación de una página intermedia y que sea esta la que redirija. O sea, el enlace de email/qr debería llevar a una página en la que sí podamos instalar código de analytics y realizar el seguimiento de la visita. Esta página, que sí tendrá código de Analytics, a su vez realizar una redirección manual mediante otro clic o automática (con un tiempo de espera prudencial para asegurar que se ejecuten los scripts de seguimiento de UA y de evento) hacia Whatsapp. Además (bonus) es bastante aconsejable que los enlaces iniciales lleven parámetros utm que la página intermedia pueda usar para hacer una analítica más adecuada del orígen de la visita.

      Espero haberme explicado bien y que haya sido de ayuda.

  • Hola Sergi. Antes que nada agradecerte por la información. Tengo semanas buscando esto en específico y solamente tú has podido ofrecer una solución concreta.

    Tengo una duda, hay manera de trackearlo desde una publicación en facebook? O sería necesario utilizar una landing intermedia (ya sea manual o automática)?
    Saludos y de antemano gracias

    Daniel

    • ¡Hola Daniel! Muchas gracias por tu feedback, es de agradecer.

      Respecto tu pregunta, solo se podría trackear si se tratara de una campaña paid a través del Business Manager de Facebook. Sino sí que necesitas una página intermedia que envíe la señal hacia Analytics (o la plataforma que uses). Si es una landing, perfecto aunque supondrá un clic más al usuario. Si es una redirección automática solamente deberás tener en cuenta que en la redirección debe dar tiempo a ejecutarse el correspondiente javascript por lo que el proceso debe durar un par de segundos como mínimo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *