Astro Matomo
Para añadir analítica web con Matomo a un sitio Astro configurándola desde astro.config.
Integración de Matomo para Astro: analítica web respetuosa con la privacidad sin tocar el HTML.
Notas y contexto
Qué es
Astro Matomo es una integración oficial de la comunidad para Astro creada por Felix Berlin que añade el script de seguimiento de Matomo a tu sitio. Matomo es una alternativa a Google Analytics centrada en la privacidad y el cumplimiento del RGPD. La librería está escrita en TypeScript, se publica en npm como astro-matomo y se distribuye bajo licencia GPL-3.0.
Para qué sirve
- Cargar el seguimiento de Matomo en un proyecto Astro sin insertar el snippet a mano en el layout.
- Activar la analítica solo en producción mediante una condición de entorno.
- Seguir navegaciones en sitios con View Transitions (modo SPA), incluyendo nuevo contenido, formularios y medios.
- Optimizar la carga del script con
preconnecto ejecutándolo fuera del hilo principal con Partytown.
Cuándo usarlo
Úsala cuando tengas un sitio Astro y quieras analítica autoalojada y respetuosa con la privacidad en lugar de Google Analytics. Encaja especialmente si ya tienes una instancia de Matomo (propia o en Matomo Cloud). Existe una alternativa similar, @jop-software/astro-matomo, por si buscas otra implementación.
Ejemplo
Instalación con tu gestor de paquetes preferido:
npm install astro-matomo
Configuración en astro.config.mjs:
import { defineConfig } from 'astro/config';
import matomo from 'astro-matomo';
export default defineConfig({
site: 'https://example.com',
integrations: [
matomo({
enabled: import.meta.env.PROD,
host: 'https://analytics.example.com/',
siteId: 666,
viewTransition: true,
}),
],
});
Puntos clave
- Configuración declarativa desde el array
integrationsde Astro, sin tocar el HTML. - Modo SPA con View Transitions que rastrea cada
astro:page-loady, opcionalmente, contenido nuevo vía selector. - Opciones de rendimiento:
preconnecty soporte para Partytown (ejecución fuera del hilo principal). - Opciones de privacidad como
disableCookiesy dominio de cookie configurable para subdominios.
Ten en cuenta
Necesitas una instancia de Matomo accesible (autoalojada o en la nube) y conocer su host y siteId; la librería solo inyecta el seguimiento, no proporciona el servidor de analítica. El proyecto es pequeño en estrellas pero está activo y mantenido, con publicación regular de versiones. Al estar bajo GPL-3.0, revisa las implicaciones de esa licencia si te preocupa el copyleft.