Google tiene una nueva métrica: Speed Index. Si echamos un vistazo a la documentación de Google sobre su Speed Index, vemos que lo que está midiendo es la rapidez con que la página carga los contenidos visuales en el tiempo. La principal diferencia entre el Speed Index y el Page Speed es la siguiente: el Speed Index mide la rapidez con que las cosas aparecen en la página y el Page Speed mide cuánto tiempo lleva cargar el 100% de la página.
En otras palabras, el Speed Index es el tiempo que tarda en cargar la página para que podamos empezar a ver cosas en la pantalla, mientras que el Page Speed es básicamente el tiempo que tarda en dejar de girar la pequeña rueda del navegador. Técnicamente, el Page Speed es cuando el OnLoad () activa el evento.
El Speed Index es un mejor indicador de la experiencia del usuario ya que si el contenido que quiero ver está en la pantalla, me quedaré. Un Speed Index bajo es bueno. Realmente no es importante que un anuncio de Flash tarde unos segundos más en cargar.
El Speed Index es un factor de posicionamiento Web de clasificación menor. Así que no salgáis corriendo a decirle a vuestros desarrolladores que se pongan inmediatamente a optimizar su Speed Index. Es algo nuevo. Hay que dejar tiempo a que se asiente un poco. Mientras tanto debemos seguir centrando nuestros esfuerzos en el rendimiento general del sitio.
El algoritmo de Speed Index utiliza un histograma tomado de los fotogramas de vídeo según se va cargando el sitio. Es una idea muy simple. Pero si no eres un programador, quizás no sepas que esto es realmente difícil de ejecutar en la vida real. La verdad es que no es nada fácil de ejecutar a la escala que Google lo implementa. Así, Google establece específicamente que hay fallos en el algoritmo, que en algunos casos no será exacto, pero que sí ha demostrado ser muy útil para la gran mayoría de las páginas en las que se ha probado.
No existe ningún algoritmo con un conjunto de datos que cambia constantemente que sea perfecto. Lo que si está claro es que cada vez estará mejor ajustado.

Speed Index
La métrica Speed Index mide la rapidez en la que los contenidos de la página son visualmente cargados. Es particularmente útil para comparar experiencias de unas páginas contra otras (antes/después de optimización, mi competidor frente a mi sitio, etc) y se debe utilizar en combinación con otros parámetros (tiempo de carga, comienzo de procesamiento, etc) para entender mejor el rendimiento de un sitio.

El Problema
Históricamente nos hemos basado en las indicaciones de tiempos para determinar lo rápidas o lentas que las páginas Web eran. El indicador más común de todos ellos es el tiempo que transcurre hasta que el navegador llega al evento de carga del documento principal (onload). El evento de carga es fácil de medir, tanto en un entorno de laboratorio como en el mundo real. Desgraciadamente, no es un buen indicador de la experiencia real del usuario final. A medida que las páginas van creciendo y cargan una gran cantidad de contenido que no es visible para el usuario o que no se ve en pantalla, el tiempo necesario para llegar al evento de carga se amplía, aunque el contenido visible para el usuario ya haya sido renderizado. Hemos introducido más indicaciones de tiempo para tratar de representar mejor a los tiempos, pero todos ellos son fundamentalmente defectuosos ya que miden un solo punto y no transmiten la experiencia real del usuario.

Introducción al Speed Index
El índice de velocidad (Speed Index) toma el progreso visual de la carga de página visible y calcula una puntuación global de la rapidez según el contenido es cargado. Para hacerlo, primero tiene que ser capaz de calcular cuánto de «completa» está la página en varios puntos de tiempo durante la carga de la página. Se hace mediante la captura de un vídeo de la carga de la página en el navegador y de la inspección de cada fotograma de vídeo (10 fotogramas por segundo). El algoritmo para calcular cuán completo está cada fotograma se describe más adelante, pero por ahora suponemos que podemos asignar a cada fotograma de vídeo un tanto % de completo:

Vargaa de una página Web - Speed Index

Si ponemos en un gráfico lo que se va completando de una página a través del tiempo vamos a tener algo que se parece a esto:

Gráfico de carga Speed Index

Así podemos convertir el progreso en un número calculando el área que se encuentra bajo la curva:

Grafico Speed Index

Esto sería genial excepto por un pequeño detalle: que no tiene límites. Si una página sigue cargando durante 10 segundos después de haber alcanzado la visualización completa, la puntuación seguirá aumentando. Si usamos la «zona de arriba de la gráfica» y calculamos la parte sin procesar de la página a través del tiempo, nos dará un área bien delimitada, que finaliza cuando la página está al 100% completa y tiende a 0 cuando la página es más rápida:

Grafico Speed Index

El Speed Index es la «zona de arriba de la curva» calculada en milisegundos y usando un rango de visualización completa de 0.0-1.0. El cálculo se ve en cada intervalo de 0,1 segundos y se calcula el:

IntervalScore = Interval * (1,0 – (Completeness/100))

Donde Completeness es el % visual completado para el fotograma y el Interval es el tiempo transcurrido para ese fotograma de video en milisegundos (100 en este caso). La puntuación global es la suma de los intervalos individuales: SUM(IntervalScore). Para comparar, estos son los fotogramas de vídeo de las dos páginas («A» está en la parte superior y «B» se encuentra en la parte inferior):

Midiendo el Progreso Visual
Un enfoque simplista podría ser mirar a cada píxel de la imagen, compararla con la imagen final y luego calcular el porcentaje de píxeles que coinciden para cada fotograma (quizás ignorando los píxeles que coinciden entre el primer y último fotograma). El problema principal con este enfoque es que las páginas pueden ser fluidas, pero cosas como la carga de un anuncio puede provocar que el resto de la página se cargue más lentamente. En un modo de comparación de píxel podría verse como cada píxel de la pantalla cambia, incluso si el contenido real desplaza hacia abajo un solo píxel.
La técnica es tomar los histogramas de los colores de la imagen (uno para el rojo, otro para el verde y otro para el azul) y solamente mirar a la distribución global de los colores en la página. Se calculará la diferencia entre los histogramas de partida (para el primer fotograma del vídeo) y el histograma final (del último fotograma) y utilizar esa diferencia como la línea base. La diferencia del histograma para cada fotograma en el video en comparación con el primer histograma, se compara con la línea de base para determinar cuán «completo» es el fotograma. Habrá algunos casos en los que no será exacto, pero la compensación ha demostrado ser muy útil para la gran mayoría de las páginas contra las que se ha probado.

Haz de SEO Asesor tu Asesor SEO