Lo que al principio había que añadir de forma manual al código de Google Analytics desde hace meses es ya una funcionalidad integrada. Los que revisáis el WPO de vuestro sitio sabéis que en Analytics existe la pestaña de Contenidos -> Velocidad del Sitio
pero que estos datos son «poco fiables».
Voy a poner un poco más de situación. Hoy en día hay 3 lugares en Google para hacer mediciones de tiempos de carga. El más antiguo es el de Webmaster Tools, dentro de Salud -> Estadísticas de rastreo
. Aquí hay 3 gráficos, y el último hace referencia al Tiempo de descarga de una página (en milisegundos). Esta gráfica viene a ser el tiempo que Googlebot tarda en llegar a tu sitio, descargar el contenido e irse. Esta cifra debería estar por norma general entre los 200 y 500 milisegundos para ir bien, y como muy alto sobre los 1.000 milisegundos (es decir, 1 segundo). Esta gráfica sobre todo es sensible a problemas de conectividad.
El segundo lugar donde encontramos información sobre el estado de la velocidad de carga es también en Webmaster Tools, pero en la pestaña Labs -> Rendimiento del sitio
. En este caso los datos son muy poco fiables ya que las estimaciones se toman según datos de la Google Toolbar. Teniendo en cuenta que la Toolbar hoy en día no existe oficialmente para Chrome, Firefox o Opera, el tipo de usuario que nos deja es el de Explorer, que es alto, pero ya no es tan significativo. Estos datos por lo tanto son muy poco fiables ya que en general las cifras están muy hinchadas.
Para acabar tenemos la opción más razonable y fiable, ya que los datos lo aportan los propios usuarios que navegan por el sitio web, y son «la realidad» del sitio (ni mediciones genéricas de barras, ni del propio Google). Como decía, esta información está en Contenidos -> Velocidad del Sitio
. Aquí tenemos muchos datos:
- Tiempo medio de carga de página: Este es el tiempo desde que se lleva la petición hasta que la página queda cargada completamente (con imágenes, publicidad y todo).
- Tiempo medio de redireccionamiento: Este es el tiempo que se lleva desde que se pide la página hasta que se empieza a descargar la información de la página final. Si hay páginas intermedias que redireccionan, se cuenta aquí.
- Tiempo medio de búsqueda de dominio: Es el tiempo que se lleva la búsqueda de las DNS para una petición. Si hay muchas peticiones DNS distintas, el tiempo se eleva.
- Tiempo medio de conexión de servidor: Es el «famoso» connect. Va relacionado con la configuración del servidor y la conectividad.
- Tiempo medio de respuesta de servidor: Es el «famoso» waiting. Suele ir relacionado con el tiempo de proceso de la página, de caché y de comienzo de envío.
- Tiempo medio de descarga de la página: Es el «famoso» send. El tiempo que va desde que se manda el primer byte hasta que se manda el último byte del contenido.
Hay dos temas a tratar con esta información. La primera de ellas es que os recomiendo hacer comparativas por país. En general los datos varían muchísimo dependiendo del país desde el que el usuario se conecta. Por ejemplo, si tu sitio web en general es para españoles en España y tienes tus servidores físicamente en España, es probable que los tiempos sean muy bajos; en cambio, si filtras el tráfico por México es probable que los tiempos se disparen. Esto básicamente es por un tema de física (sí, de eso que te enseñan en el cole y que piensas que nunca usarás) ya que por mucha velocidad de la luz que lleve la fibra óptica, desde España hasta México hay muchísimos kilómetros de cable que hacen que «todo vaya más lento» (lento puede ser tranquilamente 1 o 2 segundos, nada más).
Otro tema importantísimo: los datos que se recogen suelen rondar el 1% de las visitas, por lo que la muestra suele ser bastante pésima. Pero esto tiene una solución bastante clara: hay que decirle a Google que la muestra sea mayor. ¿Cómo se hace esto? Añadiendo una pequeña línea de código más al código de Google Analytics (esto que os pongo es para el asíncrono) de forma que haga un muestreo mayor. Para decidir qué porcentaje hay que poner, hay que hacer un cálculo más o menos basado en unas 100.000 visitas/día (que es la cifra que documenta Google). Si tienes hasta 100.000 visitas/día puedes marcar un muestreo del 100%. En caso de tener más pues la idea es que la muestra sea siempre de aproximadamente 100.000, es decir, que si tienes 200.000 visitas/día la muestra debe ser del 50%, si tienes 1 millón de visitas/día pues del 10%.
_gaq.push(['_setSiteSpeedSampleRate', 100]);
_gaq.push(['_trackPageview']);
En este caso el «100» que aparece en la variable setSiteSpeedSampleRate hace referencia al porcentaje de muestreo. Personalmente no os recomiendo que os paséis de poner las cifras que os he dicho porque Google parece estar controlando bastante la cantidad de información que se recoge y quién hace un uso excesivo (recordad que hay unos términos y condiciones de uso, y que si os pasáis os pueden dar un toque de atención).
Otra pregunta interesante que se os puede estar pasando por la cabeza es… ¿de dónde saca Google estos datos? Pues depende de varias cosas, principalmente del navegador. Hay datos que los saca directamente de la Resource Timing API. El resto los saca de las mediciones que hace el propio navegador (de ahí que esto sea sólo un muestreo y no fiabilidad del 100%).
Ahora que sabes cómo medir los tiempos de carga de tu sitio web ¿no vas a dedicar unos minutos a optimizar algunos de ellos?
Deja una respuesta