¿Te han dicho que alojar el script de Analytics localmente te dará +100 en PageSpeed y que Google te va a aplaudir? Pues te han engañado. Aquí va la verdad, sin censura, para SEOs técnicos y webmasters de verdad.

 

¿Por qué querrías alojar Google Analytics localmente?

  • Evitar bloqueadores: Sirviendo el script desde tu dominio, algunos adblockers lo dejan pasar (spoiler: los buenos, no).
  • Quitarte el famoso “recurso de terceros” de PageSpeed Insights: Pero solo en parte.
  • Controlar la caché: Puedes ponerle el caché que te dé la gana y reducir peticiones externas.

Pero el remedio puede ser peor que la enfermedad.

 

El problema: Peso, ejecución y penalizaciones

  • El script es pesado (40-70KB según versión y capa de tracking).
  • Aunque lo sirvas local, sigue bloqueando el renderizado y bajando la nota en PageSpeed.
  • En webs optimizadas, Google Analytics puede hacerte pasar de 100 a 70-80 en PageSpeed.
  • ¿Alojarlo localmente ayuda? Poquísimo. El navegador tiene que cargarlo igual, analizarlo igual y ejecutar el tracking igual.

Peligro: Plugins de caché y minificación

Si usas WordPress o cualquier CMS con plugins tipo Autoptimize, WP Rocket, LiteSpeed, etc., te la estás jugando:

  • Algunos plugins minifican, concatenan, o incluso reescriben cualquier JS que pillan.
  • Si el script de Analytics pasa por ahí, puede dejar de funcionar sin que te enteres.
  • Resultado: No se envían datos, pierdes métricas, y encima piensas que todo va bien.
  • Si encima automatizas la descarga y el plugin le mete mano cada vez… desastre.

¿Solución?

  • Excluye SIEMPRE el script de Analytics de cualquier plugin de caché/minificación.
  • Revisa el tracking después de cada cambio.

Tutorial: Aloja Google Analytics localmente (Sin romperlo)

1. Descarga el Script

Para GA4:

curl https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX -o /ruta-a-tu-web/js/gtag.js

Universal Analytics:

curl https://www.google-analytics.com/analytics.js -o /ruta-a-tu-web/js/analytics.js

Truco: Automatiza esto con cron para que no se te quede obsoleto.

 

2. Sube el Script y Cambia el HTML

<!-- Antes -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>

<!-- Después -->
<script async src="/js/gtag.js"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'G-XXXXXXXXXX');
</script>

3. ¡IMPORTANTE! Excluye el script de plugins y compresión

  • En NGINX:
    location /js/gtag.js {
        gzip off;
        add_header Cache-Control "public, max-age=604800, immutable";
    }
  • En Apache:
    <Files "gtag.js">
        SetEnv no-gzip 1
        Header set Cache-Control "public, max-age=604800, immutable"
    </Files>
  • En WordPress:
    Añade /js/gtag.js a la lista de exclusión de Autoptimize, WP Rocket, LiteSpeed, etc.
    ¡O lo rompes seguro!

4. Automatiza la actualización

Haz un script en bash:

curl https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX -o /ruta-a-tu-web/js/gtag.js

Y ponlo en el crontab:

0 3 * * * bash /ruta/al/script.sh

Así tendrás el script siempre actualizado (¡pero recuerda que si el plugin lo toca, igual lo corrompe!).

 

Métricas Reales: ¿Qué ganas y qué pierdes?

  • Reducción de la latencia DNS: Ganas unos milisegundos.
  • ¿Sube PageSpeed?
    • Si tienes una web estática, el impacto de Analytics puede ser BRUTAL.
    • Alojarlo local solo quita la petición externa, pero el script sigue pesando y bloqueando.
    • En muchos casos, la puntuación apenas mejora, y si Analytics es tu único JS, puede seguir machacando tu nota.
  • ¿Pierdes datos?
    • Si se rompe el script, sí.
    • Si Google actualiza el script y no lo descargas, también.

Paradoja SEO: ¿Vale la pena?

  • Hacerlo por “mejorar el SEO” es absurdo si luego Analytics te machaca la velocidad.
  • Google recomienda Analytics, pero te penaliza por usarlo.
  • Si eres un obseso de la perfección, prueba, pero asume el riesgo.
  • Si no sabes lo que haces, vas a romper el tracking o a perder datos sí o sí.

TL;DR

  • ¿Alojar Analytics localmente? Solo si sabes bien lo que haces.
  • Exclúyelo de plugins de caché/minificación.
  • Automatiza la actualización.
  • No esperes milagros en PageSpeed ni en SEO.
  • Si Analytics es imprescindible para ti, acepta el precio: velocidad o datos, pero nunca ambos al 100%.

Recursos útiles

¿Conclusión?
Aquí nadie te va a regalar puntos extra. Si quieres datos, paga el precio en velocidad. Si quieres velocidad brutal, olvida Analytics o usa una alternativa ligera.