Instalar Statsdot en Next.js
Actualizado el 13 de octubre de 2026
App Router
Añade el script a tu layout raíz, app/layout.tsx:
import Script from 'next/script'
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<body>
{children}
<Script
src="https://statsdot.com/js/script.js"
data-domain="yoursite.com"
strategy="afterInteractive"
/>
</body>
</html>
)
}
Pages Router
Añade una etiqueta script normal a pages/_document.tsx:
import { Html, Head, Main, NextScript } from 'next/document'
export default function Document() {
return (
<Html>
<Head>
<script defer data-domain="yoursite.com" src="https://statsdot.com/js/script.js" />
</Head>
<body>
<Main />
<NextScript />
</body>
</Html>
)
}
Cambios de ruta
Next.js cambia de página con la API de historial del navegador, y Statsdot la escucha, así que cada cambio de ruta cuenta como página vista. No hay eventos del router que conectar.
Eventos personalizados
<button onClick={() => window.statsdot?.track('Signup')}>Create account</button>
En TypeScript, declara el global una vez:
declare global {
interface Window { statsdot?: { track: (name: string, label?: string) => void } }
}
Desarrollo
Las visitas desde localhost se ignoran, así que tu desarrollo en local no suma a tus cifras.