SEO · Lighthouse

Vigilar el puntaje de velocidad en CI

Para que un cambio no degrade el sitio sin que nadie lo note, conviene extraer solo el puntaje de rendimiento de Lighthouse en un número que un script pueda comparar. Es la pieza que se integra en un pipeline de CI.

Gratis y open source macOS · Linux · Windows Nada sale de tu equipo

1. Instala Lighthouse

Se instala una sola vez y queda para siempre. Es gratis y de código abierto:

# Necesita Node.js (incluye npm)
npm install -g lighthouse

Si nunca has usado la terminal, empieza por la guía de la terminal.

2. Extrae solo el puntaje

Corre Lighthouse en JSON y deja que Python imprima únicamente el puntaje de rendimiento (0 a 100):

lighthouse https://tusitio.com --only-categories=performance --output json --quiet \
  | python3 -c "import sys,json; print(json.load(sys.stdin)['categories']['performance']['score']*100)"

Ese número lo puede capturar tu pipeline para fallar el build si baja de un umbral que tú definas.

Sin instalar nada, hay alternativa

Si prefieres no instalar Lighthouse en tu entorno de CI, la misma medición existe como servicio en la PageSpeed Insights API, que devuelve el puntaje por HTTP. Para auditar todo el sitio de una vez, ve el modo en lote. Comando original: guía de Lighthouse.

Tareas relacionadas

Preguntas frecuentes

¿Cómo hago que el build falle si baja la velocidad?

Captura el número que imprime el comando y compáralo con un umbral en tu script de CI: si el puntaje queda por debajo, devuelve un código de salida distinto de cero para marcar el build como fallido. El comando solo entrega el dato; la decisión de fallar la pones tú.

¿Conviene Lighthouse local o la PageSpeed API dentro de CI?

Depende del entorno. Lighthouse local exige instalar Node y Chrome en el runner, pero te da control total y reportes detallados. La PageSpeed API no instala nada y responde por HTTP, ideal si tu CI no debe cargar dependencias pesadas. Ambos miden con el mismo motor.

¿El puntaje varía entre corridas aunque no cambie el sitio?

Sí, ligeramente, por la red y la carga del equipo donde corre. Por eso conviene fijar un umbral con cierto margen en lugar de exigir un número exacto, y observar la tendencia en vez de reaccionar a una sola medición.