INP Interaction to Next Paint: nueva métrica Core Web Vitals

Interaction to Next Paint (INP) es una de las métricas de rendimiento que Google ha introducido para medir la capacidad de respuesta de las páginas web.

Si quieres mejorar la clasificación de tu sitio en los motores de búsqueda, es fundamental que sepas qué es la INP y cómo optimizarla. De lo contrario, tus páginas podrían aparecer peor clasificadas en los resultados de las búsquedas.

Este artículo analizará la INP con más detalle, incluyendo en qué se diferencia de otras métricas de Core Web Vitals y cómo medirla para mejorar tu puntuación actual.

Interaction to Next Paint (INP) es una métrica de Core Web Vitals que mide el tiempo de respuesta de las páginas web. Determina lo rápido que se actualiza una página web después de que un usuario interactúe con ella, por ejemplo, haciendo clic en un enlace o pulsando un botón.

Cómo funciona la Interaction to Next Paint (INP)

Como métrica de capacidad de respuesta, la INP se centra en el retardo de la interacción con el usuario. Mide la rapidez con la que responderá un elemento de una página web después de que realices una determinada acción sobre él.

Así es como funciona la INP:

  1. Un usuario interactúa con una página web, por ejemplo haciendo clic en un botón.
  2. El navegador envía una petición al servidor web para obtener el nuevo contenido.
  3. El servidor web envía el nuevo contenido al navegador.
  4. El navegador muestra el nuevo contenido en la página.
  5. El navegador mide el tiempo que tarda en renderizar el nuevo contenido y lo comunica como puntuación INP.

Un valor de INP bajo significa que la página es muy receptiva a la interacción del usuario.

Como parte de Core Web Vitals, INP es importante por las siguientes razones:

  • Mejora de la experiencia del usuario: un valor INP alto significa que los usuarios tienen que esperar mucho tiempo a que la página web reaccione a sus interacciones, lo que puede resultar frustrante.
  • Optimización de motores de búsqueda (SEO): la INP y otras Core Web Vitals forman parte de las señales de experiencia de página de Google, que determinan el rango de un sitio web en sus páginas de resultados. Esto hace que la métrica INP SEO sea especialmente importante.
  • Menor tasa de rebote: un tiempo de carga lento puede hacer que los usuarios abandonen la página, perjudicando los resultados de tu negocio.

Interaction to Next Paint (INP) como Core Web Vital

La INP sustituyó a la métrica First Input Delay (FID) en marzo de 2024. INP y FID son similares, pero funcionan de forma diferente.

La FID mide la capacidad de respuesta de carga de la página sólo cuando se abre el sitio web por primera vez. Por otro lado, la métrica INP de Google tiene en cuenta todos los retrasos en la interacción del usuario a lo largo de toda la visita, después de que la página se haya cargado.

Según los datos de Google, la mayor parte del tiempo que un usuario pasa en una página web es después de que se cargue. Por ello, la INP puede medir la interactividad de la página de forma mucho más eficaz que la FID.

INP también difiere de otras Core Web Vitals como Cumulative Layout Shift (CLS) y Large Contentful Paint (LCP). CLS evalúa cuánto puede desplazarse inesperadamente un sitio web, mientras que LCP determina la rapidez con que una página web muestra sus elementos más grandes.

Cómo medir la Interaction to Next Paint (INP)

Antes de iniciar la medición de Interaction to Next Paint, veamos qué significan los valores INP.

El INP se mide en milisegundos (ms). Un valor de referencia Bueno es inferior a 200 ms y todo lo que esté entre ese valor y 500 ms se considera que Necesita mejorar. 500 ms o más se considera Deficiente.

Cómo medir la Interaction to Next Paint (INP)

Varios factores pueden afectar a un valor INP, como el tamaño y la complejidad de una página web, así como el número de archivos JavaScript y CSS cargados.

Puedes medir el valor INP de un sitio web utilizando herramientas de prueba de velocidad de sitios web. Este tipo de aplicación puede proporcionar información sobre el rendimiento de tus métricas de Core Web Vitals y sobre cómo optimizarlas.

Google PageSpeed Insights es una opción popular para medir la INP y el rendimiento del sitio web. Realizará una auditoría de un sitio y proporcionará detalles sobre las mejores prácticas que se deben aplicar. También puedes ver la velocidad de tu sitio cuando se carga en dispositivos móviles y de escritorio.

PageSpeed Insights muestra dos tipos de resultados. La sección superior muestra las métricas de Core Web Vitals de un sitio a partir del informe Chrome UX, una recopilación de datos de rendimiento reales de usuarios de Chrome.

Informe de PageSpeed Insights

El siguiente informe muestra las mismas métricas, pero proceden de un entorno de laboratorio controlado que se ejecuta en Google Lighthouse. Estos datos pueden ser útiles para probar nuevas funciones antes de publicarlas en directo.

Informe de PageSpeed Insights

Si los datos INP del sitio no están disponibles, comprueba su Tiempo Total de Bloqueo (TBT). Esta métrica mide un tipo diferente de capacidad de respuesta. Se centra en el tiempo que una página está bloqueada para responder a la interacción durante la carga de la página.

Hacia la parte inferior, hay sugerencias sobre cómo mejorar las métricas de Core Web Vitals, así:

Sugerencias de PageSpeed Insights

Los clientes de Hostinger pueden utilizar la integración de PageSpeed Insights en hPanel. Abre el panel de tu cuenta de PanelRendimiento Velocidad de página para acceder a ella.

Velocidad de página en hPanel

Cómo optimizar la Interaction to Next Paint (INP)

Hablemos de cómo realizar la optimización INP en tu sitio web.

¡Importante! La mayoría de estos métodos requieren ciertos conocimientos técnicos de JavaScript. Antes de realizar cambios en tu sitio web, asegúrate de hacer una copia de seguridad por si se producen errores.

1. Optimiza la ejecución de JavaScript

JavaScript es un componente importante de muchas páginas web. Añade varios elementos interactivos, pero también puede ralentizar el rendimiento del sitio.

Cuando se ejecuta, JavaScript se ejecuta en el hilo principal, el responsable de renderizar una página web. Si el código es ineficiente, puede bloquear el hilo e impedir que la página responda a la interacción del usuario.

La clave para acelerar la capacidad de respuesta es optimizar tu JavaScript, lo que puedes hacer de la siguiente manera:

  • Minificar archivos JavaScript: reducirá el tamaño del JavaScript, haciendo que se carguen más rápido.
  • Activar la compresión GZip: otro método popular para hacer más pequeños los archivos y datos del sitio.
  • Utilizar un framework de JavaScript: esta herramienta puede ayudar a organizar tu código JavaScript para hacerlo más eficiente. AngularJS y jQuery son algunos ejemplos bien conocidos.
  • Usar una CDN: abreviatura de red de entrega de contenidos, esta función entregará tus archivos JavaScript desde servidores cercanos a tu público objetivo, mejorando los tiempos de carga. Para utilizar la CDN interna de Hostinger, los usuarios deben contratar un plan de alojamiento web Business o superior.
Optimización web en hPanel

2. Utiliza Web Workers

Los Web Workers son un servicio que permite que JavaScript se ejecute independientemente del hilo principal. Son útiles para ejecutar operaciones complejas en segundo plano.

Digamos que tienes un sitio web de WordPress lleno de imágenes, vídeos y datos. Los Web Workers pueden descargar estos pesados cálculos de JavaScript a un subproceso en segundo plano para evitar que se congele tu interfaz.

Para utilizar web workers, necesitarás crear dos archivos JavaScript. Uno es el main.js para iniciar las tareas del script web worker:

// main.js
if (window.Worker) {
  // Create a new worker instance
  const myWorker = new Worker('worker-script.js');
  // Send a message to the worker
  myWorker.postMessage('Hello Worker!');
  // Listen for messages from the worker
  myWorker.onmessage = function(e) {
    console.log('Message received from worker', e.data);
  };
} else {
  console.log('Your browser does not support Web Workers.');
}

Otro es worker.js, que contiene las tareas del web worker. Aquí un ejemplo simplificado:

// worker.js
onmessage = function(e) {
  console.log('Message received from main script', e.data);
  // Perform heavy computation or data processing here
  // Then send a message back to the main script
  postMessage('Hello Main Script!');
}

Para incluir estos scripts en tu sitio web, consulta la documentación de tu tecnología o plataforma específica y sigue el proceso estándar.

Para los usuarios de WordPress, utiliza la función wp_enqueue_script para incluir scripts de web worker en el archivo functions.php de tu tema.

3. Divide las tareas largas

Dividir las tareas largas de JavaScript es otra forma de evitar el bloqueo del hilo principal. Utilicemos un ejemplo de compradores online navegando por un sitio de comercio electrónico. 

Sin dividir las tareas largas, el subproceso principal tiene que obtener, procesar y procesar grandes cantidades de datos de productos e imágenes simultáneamente, lo que consume mucho tiempo y recursos.

Mientras ocurre este proceso, el hilo principal está ocupado. Esto hace que el sitio web se cargue lentamente y no pueda responder a la siguiente interacción del usuario.

Dividir las tareas largas permite al navegador web manejar trozos más pequeños cada vez. Como resultado, el hilo principal queda libre para realizar tareas más esenciales.

Puedes utilizar dos tipos de código para separar las tareas largas:

  • setTimeout: función incorporada en JavaScript que programa una tarea específica para que se ejecute tras un cierto retardo en milisegundos. Puede aplazar la ejecución a un momento posterior, evitando que el hilo principal quede bloqueado durante un periodo prolongado.
  • requestIdleCallback: esta API proporciona un enfoque más eficiente, ya que garantiza que las funciones se ejecuten durante los periodos de tiempo inactivo. También ofrece un parámetro de fecha límite, que te permite controlar cuánto tiempo puede durar la tarea sin afectar a procesos importantes.

4. Prioriza la preparación de las entradas

La disponibilidad de entrada se refiere a cuándo una página web está preparada para responder a la interacción del usuario. Cuando no lo está, suele significar que el hilo principal del navegador está ocupado realizando otras tareas.

Acá cómo priorizar la preparación de la entrada para mejorar la INP:

  • Aplazar JavaScript no crítico: algunos JavaScript no son esenciales para la carga inicial de la página y pueden ejecutarse después del contenido principal. Esto permite al hilo principal dar prioridad a las interacciones del usuario y mejorar la capacidad de respuesta general de la página.
  • Estrangulamiento: esta técnica controla la frecuencia de ejecución de una función. Por ejemplo, cuando los usuarios se desplazan hacia abajo, ese evento puede disparar el mismo código cientos de veces por segundo. El throttling permite que sólo se ejecute una vez cada milisegundo aproximadamente, independientemente de cuántas veces se dispare realmente el evento.
  • Rebote: esto impide que una función vuelva a ejecutarse hasta que haya transcurrido cierto tiempo. Por ejemplo, cuando los usuarios cambian el tamaño de la ventana del navegador, este evento puede activar el mismo proceso repetidamente. El rebote puede retrasar su ejecución hasta que el usuario deje de cambiar el tamaño durante un tiempo determinado.
  • Escuchadores de eventos pasivos: los escuchadores de eventos son construcciones de programación que detectan eventos específicos, como desplazamientos y toques. Hacerlos pasivos le dirá al navegador que no espere a que una determinada función termine de ejecutarse y continúe con otras tareas mientras tanto.

5. Proporciona retroalimentación inmediata

Algunas interacciones pueden provocar retrasos notables en la respuesta, como el envío de un formulario con varias entradas de datos.

Ahí es donde entra en juego la respuesta inmediata. Esta táctica proporciona a los usuarios una indicación visual de que el sitio web ha recibido y está procesando su solicitud.

Con una respuesta inmediata, los usuarios no se preguntarán si el sitio web ha registrado su entrada. Puede dar la impresión de un rendimiento más rápido, aunque no reduzca el tiempo real de procesamiento.

Echa un vistazo a algunos ejemplos de señales de respuesta inmediata:

  • Indicadores de carga: muestra un spinner o una barra de progreso cuando un proceso esté en marcha, especialmente al mostrar datos o pasar a una nueva página.
  • Ventanas emergentes de confirmación: para acciones como añadir un artículo al carrito, es bueno mostrar un mensaje que confirme que la acción se ha realizado correctamente.
  • Validación de campos de formulario: por ejemplo, si un usuario ha introducido una dirección de correo electrónico con un formato incorrecto, muestra un mensaje de error inmediatamente en lugar de esperar a que envíe el formulario.

¿Qué significa Interaction to Next Paint (INP) para los propietarios de sitios web?

La INP y la clasificación del sitio web tendrán una fuerte correlación. Si no se optimiza, la velocidad del sitio web, la experiencia del usuario y, a su vez, el rendimiento del tráfico orgánico pueden ser deficientes.

De hecho, Economic Times ha demostrado que mejorar la INP tiene importantes beneficios para el negocio. Han reducido su tasa de rebote en un 50%, lo que significa que es más probable que los visitantes se queden y exploren su contenido.

Identificar qué hace que la capacidad de respuesta de tu sitio web sea lenta es clave para optimizarlo para la INP. Realiza pruebas de producción, examina cómo maneja tu sitio web las entradas del usuario y consulta con un desarrollador web si es necesario.

Conclusión

Abreviatura de Interaction to Next Paint, INP es una métrica de Core Web Vitals que sustituyó a FID. Mide el tiempo que tarda un sitio web en responder a la interacción del usuario. Cuanto más baja sea la puntuación, más rápida es la capacidad de respuesta de tu sitio.

La diferencia entre INP y FID es que la primera mide todos los retrasos en la interacción del usuario en toda una sesión. La segunda métrica se centra en el mismo elemento sólo cuando se abre el sitio web por primera vez.

Utiliza PageSpeed Insights para medir el INP de tu sitio web. Si los datos no están disponibles, también puedes consultar la métrica TBT de tu sitio.

Optimizar para INP implica varios métodos: desde hacer más eficiente la ejecución de tu JavaScript y utilizar web workers hasta priorizar la preparación de la entrada. 

Independientemente del proceso, haz una copia de seguridad de tu sitio web para anticiparte a cualquier error al hacer cambios.

Esperamos que esta guía te haya sido de utilidad. Si tienes algún comentario o pregunta, escríbela en la sección de abajo. ¡Buena suerte!

Interaction to Next Paint (INP) – Preguntas frecuentes

Consulta las respuestas a las preguntas más comunes sobre el factor de clasificación INP de Google.

¿Es el INP una métrica básica de Web Vitals?

Sí, INP es una métrica de Core Web Vitals que sustituyó a FID para medir la capacidad de respuesta en marzo de 2024.

¿Cuánto es una buena puntuación INP?

Una buena puntuación INP es inferior a 200 ms. Un valor entre 200 y 500 ms se considera Necesita mejorar, y cualquier valor por encima de 500 ms es Deficiente.

¿Cuál es la diferencia entre INP y FID?

La FID mide el tiempo que tarda una página web en responder a la primera entrada del usuario, mientras que la INP evalúa el tiempo de respuesta a cualquier interacción del visitante del sitio web, no sólo a la primera. 

Esto hace que INP sea una métrica de capacidad de respuesta más completa.

¿Cómo identificar los problemas de INP en tu sitio web?

Utiliza PageSpeed Insights para obtener la puntuación INP de tu sitio web y sugerencias para mejorar su rendimiento.

Author
El autor

Diego Vargas

Diego es comunicador social, especialista en publicidad digital que trabaja constantemente en mejorar sus conocimientos de marketing digital, enfocándose en contenido y SEO. Idiomas, series, libros y cursos en internet son sus hobbies principales, además de los deportes. Este es su perfil de LinkedIn.