UTM: Seguimiento de parámetros para mejor ROI

utm

Laravel – Seguimiento de los parámetros utm_* de Google Analytics para un mejor ROI de marketing – Truco simple

UTM…

 

“Demasiado tiempo; no he leído”

 

  1. Agregue un middleware para almacenar todos los parámetros utm en la sesión.
  2. Muestre estos detalles, junto con otros, como entradas ocultas en los CTA.

No es broma, no hay nada lujoso aquí, pero es súper efectivo y práctico.

Salte al título “La parte divertida” a continuación o sea mi invitado y lea lo siguiente aburrido…


Introducción tonta y aburrida

No vine para contarles todo sobre la importancia de los parámetros de consulta UTM, estoy aquí para compartir una experiencia sobre cómo aprovechar estos parámetros extremadamente beneficiosos y cómo hacer feliz a su departamento de marketing ahora.

Entonces, si desea realizar un seguimiento de las referencias de las plataformas de redes sociales, o tal vez una publicación de blog en algún lugar, o tal vez un enlace en un correo electrónico o en el sitio web de pie de página de su cliente, necesitará lo siguiente:

  • Fuente (utm_source: Where)
  • Medio (utm_medium: How)
  • Campaña (utm_campaign: Why)
  • Contenido (utm_content: detalles, lea la siguiente cita de las respuestas de Google)

 

Se utiliza para diferenciar contenido similar o enlaces dentro del mismo anuncio. Por ejemplo, si tiene dos enlaces de llamado a la acción dentro del mismo mensaje de correo electrónico, puede usar utm_content y establecer diferentes valores para cada uno para que pueda saber qué versión es más efectiva.

 

  • Término (utm_term: palabra clave usada, palabras clave pagadas o no pagadas)

Entonces, ¿por qué como desarrollador estoy escribiendo sobre esto?

Porque implementaremos esto en Laravel para realizar un seguimiento de estos parámetros y porque será una forma en la que podamos incorporarlos en nuestros CTA y formularios de clientes potenciales. Además, estaremos dando una razón más para que la gente de marketing no sienta más que respeto por nosotros.

La Parte Divertida: Codificación

En 2 sencillos pasos:

  1. Agregue un middleware para almacenar todos los parámetros utm en la sesión.
  2. Muestre estos detalles, junto con otros, como entradas ocultas en los CTA.

Paso 1:

Middleware `StoreMarketingQueryParamsMiddleware` utilizado en Kernel.php

// Usage
class Kernel extends HttpKernel
{
   // .....
   // .....
   // .....


  protected $routeMiddleware = [
       // .....
       'store-marketing-query-params' => \App\Http\Middleware\StoreMarketingQueryParamsMiddleware::class,
  ];
}
<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Http\Request;

class StoreMarketingQueryParamsMiddleware
{
    /**
     * Handle an incoming request.
     *
     * @param  Request  $request
     * @param  Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $utmQueryParams = [
            'utm_source',
            'utm_medium',
            'utm_campaign',
            'utm_term',
            'utm_content',
        ];
        foreach ($utmQueryParams as $utmQueryParam) {
            if ($request->has($utmQueryParam)) {
                session()->put($utmQueryParam, $request->input($utmQueryParam));
            }
        }

        return $next($request);
    }
}

Paso 2:

Uso dentro de un archivo blade:

<!-- .... -->
<!-- UTM params -->
<input type="hidden" name="utm_source" value="{{ session('utm_source') }}">
<input type="hidden" name="utm_medium" value="{{ session('utm_medium') }}">
<input type="hidden" name="utm_campaign" value="{{ session('utm_campaign') }}">
<input type="hidden" name="utm_term" value="{{ session('utm_term') }}">
<input type="hidden" name="utm_content" value="{{ session('utm_content') }}">

<!-- Other handy inputs for marketing ROIs -->
<input type="hidden" name="url" value="{{request()->url()}}">
<input type="hidden" name="ip_address" class="ip" value="{{request()->ip()}}">
<input type="hidden" name="locale" value="{{ app()->getLocale() }}">
<!-- And you might want to add other inputs like: country, currency ..etc -->

<!-- .... -->

Conclusión

Aunque pueda pensar que este simple truco es realmente trivial, solo quiero recordarle que su usuario final generalmente visita su sitio web y navega por un par de páginas antes de completar un formulario de cliente potencial, por lo que almacena dichos detalles y sobrescribirlo con otros nuevos cada vez que llegan a su sitio web es realmente útil para el ROI de marketing, especialmente con Google Analytics.

Gracias por leer, querido geek.

Recent Post