Gravatar, abreviatura de Globally Recognized Avatar, es un servicio gratuito operado por Automattic (la empresa detrás de WordPress.com) que asocia imágenes de perfil con direcciones de correo electrónico. La idea es sencilla: subes un avatar una sola vez a gravatar.com y este te acompaña por toda la web. Cualquier sitio compatible con Gravatar puede mostrar tu foto de perfil junto a tu nombre, sin que tengas que volver a subirla.
WordPress incluye soporte para Gravatar desde la versión 2.5 (2008) y está habilitado por defecto en todas las instalaciones de WordPress. Esto significa que, a no ser que lo desactives activamente, tu sitio WordPress envía datos a los servidores de Gravatar cada vez que se carga una página con avatares. Para muchos propietarios de sitios, especialmente en la Unión Europea, esto supone un problema importante de privacidad.
Cómo funciona Gravatar internamente
El proceso técnico detrás de Gravatar es sencillo, pero tiene implicaciones importantes para la privacidad. Cuando WordPress necesita mostrar el avatar de un usuario o de un comentarista, toma su dirección de correo, la pasa a minúsculas, elimina los espacios en blanco y genera un hash MD5. Por ejemplo, el correo user@example.com se convierte en algo como b58996c504c5638798eb6b511e6f49af.
WordPress construye entonces una URL de imagen como esta:
https://secure.gravatar.com/avatar/b58996c504c5638798eb6b511e6f49af?s=96&d=mmEl parámetro s establece el tamaño de la imagen (96 píxeles en este caso) y el parámetro d indica una imagen por defecto que se muestra si no existe ningún Gravatar para ese hash. Cuando el navegador de un visitante carga la página, realiza una petición HTTP a secure.gravatar.com para obtener cada imagen de avatar. Esta petición incluye la dirección IP del visitante (como cualquier petición HTTP), y la propia URL contiene el hash MD5 del correo del comentarista.
Los hashes MD5 son, en teoría, unidireccionales, pero en la práctica son fácilmente reversibles para direcciones de correo comunes. Las tablas rainbow y los servicios de búsqueda de hashes pueden convertir a menudo un hash MD5 en el correo original. Esto significa que las URLs de Gravatar no están realmente anonimizadas.
Dónde usa WordPress Gravatar por defecto
Las imágenes de Gravatar aparecen en varios sitios dentro de una web WordPress, no todos evidentes:
- Secciones de comentarios: cada comentario muestra el Gravatar del comentarista junto a su nombre. En una entrada con 50 comentarios, eso son 50 peticiones independientes a los servidores de Gravatar.
- Panel de administración: la zona de administración de WordPress muestra Gravatares para el usuario conectado, en los listados de usuarios y en el widget "De un vistazo".
- Cajas de biografía del autor: muchas plantillas muestran el Gravatar del autor en la sección de biografía debajo de las entradas.
- Páginas de perfil de usuario: en el panel de WordPress, los perfiles de usuario usan Gravatar como fuente de avatar predeterminada.
- BuddyPress y bbPress: si usas estos plugins de comunidad, los Gravatares aparecen en los foros, los directorios de miembros y los flujos de actividad.
- Reseñas de WooCommerce: las reseñas de productos muestran los Gravatares de los reseñadores igual que los comentarios del blog.
El problema con el RGPD en detalle
El Reglamento General de Protección de Datos (RGPD) exige que los datos personales solo se traten con una base legal, normalmente el consentimiento informado. El comportamiento por defecto de Gravatar en WordPress crea varios problemas de cumplimiento del RGPD:
Transmisión de la dirección IP: cuando el navegador de un visitante obtiene una imagen de Gravatar, su dirección IP se envía a los servidores de Automattic (situados en Estados Unidos). Las direcciones IP se consideran datos personales según el RGPD. Esta transferencia de datos ocurre sin el conocimiento ni el consentimiento del visitante, y no existe ningún mecanismo en WordPress para solicitar permiso antes de cargar Gravatares.
Exposición del hash del correo: el hash MD5 de la dirección de correo de cada comentarista está incrustado en la URL de Gravatar, que es visible en el código fuente HTML de la página. Aunque se trata de un hash y no del correo en texto plano, sigue considerándose un dato personal porque puede revertirse o utilizarse para rastrear a la misma persona en varios sitios web. Automattic recibe estos hashes en cada petición de imagen.
Posibilidad de seguimiento entre sitios: dado que Gravatar utiliza el mismo hash de correo en todas las webs, Automattic podría, en teoría, construir un perfil con los sitios en los que comenta una persona. Aunque no lo hagan activamente, la capacidad técnica existe, y eso es lo que le importa al cumplimiento del RGPD.
Transferencia de datos a un tercer país: Automattic es una empresa con sede en EE. UU. Tras la sentencia Schrems II del Tribunal de Justicia de la Unión Europea en 2020, transferir datos personales a EE. UU. requiere garantías adicionales. Muchos expertos legales consideran que el uso por defecto de Gravatar en webs europeas no cumple con la normativa, ya que no existe ningún Acuerdo de Tratamiento de Datos vigente ni forma de obtener un consentimiento adecuado antes de que se produzca la transferencia.
Las autoridades de protección de datos alemanas han sido especialmente estrictas en este asunto. Varias sentencias judiciales y dictámenes regulatorios han concluido que cargar imágenes de Gravatar sin consentimiento infringe el RGPD. La situación legal es muy similar a la conocida sentencia sobre Google Fonts, en la que un tribunal de Múnich ordenó indemnizaciones por cargar Google Fonts desde servidores externos sin consentimiento.
Impacto en el rendimiento de tu web WordPress
Más allá de la privacidad, Gravatar también afecta al rendimiento de carga de tu sitio. Cada imagen de Gravatar requiere una petición HTTP independiente a un servidor externo. En una entrada de blog con muchos comentarios, esto se acumula rápidamente:
- Cada avatar requiere una resolución DNS para
secure.gravatar.com(al menos en la primera petición). - Cada imagen es una petición HTTP independiente con su propia latencia.
- Si los servidores de Gravatar son lentos o están inaccesibles, el renderizado de tu página se queda bloqueado mientras el navegador espera las imágenes.
- Las imágenes de Gravatar no pueden optimizarse mediante tus plugins locales de caché o de optimización de imágenes.
- Los límites de conexión del navegador hacen que muchas peticiones simultáneas a Gravatar puedan bloquear la carga de tus propios recursos.
En una página con 30 comentarios, podrías estar añadiendo 30 peticiones HTTP externas que los navegadores de tus visitantes deben hacer antes de que la página se cargue por completo. Para los visitantes con conexiones móviles lentas, esto supone un retraso perceptible.
Alternativas a Gravatar para WordPress
Existen varios enfoques para sustituir Gravatar y seguir mostrando avatares en tu web WordPress:
- Desactivar los avatares por completo: en Ajustes > Comentarios, desmarca "Mostrar avatares". Es la solución más sencilla, pero elimina la identidad visual de los comentarios.
- Usar avatares generados localmente: plugins como "Simple Local Avatars" o "WP User Avatar" permiten a los usuarios subir fotos de perfil que se almacenan en tu propio servidor. Sin peticiones externas y sin problemas de privacidad.
- Avatares por defecto generados: WordPress puede generar avatares geométricos sencillos (como identicons o patrones retro) basados en el hash del correo, sin contactar con los servidores de Gravatar. Algunos plugins implementan esto localmente.
- Caché local de Gravatar: plugins como "Avatar Privacy" o "Cache Gravatar" descargan las imágenes de Gravatar una sola vez y las sirven desde tu servidor local. Esto preserva la experiencia de Gravatar y elimina las peticiones externas en cada carga de página. Sin embargo, la descarga inicial sigue enviando datos a Gravatar, así que solo resuelve parcialmente el problema con el RGPD.
- Carga basada en consentimiento: algunos plugins de consentimiento de cookies acordes al RGPD pueden bloquear la carga de Gravatar hasta que el visitante dé su consentimiento. Es el enfoque más conforme si quieres seguir usando Gravatar, pero implica que los avatares no se ven hasta que se concede el consentimiento.
Qué comprueba InspectWP
InspectWP analiza el código fuente HTML y las peticiones de red de tu sitio WordPress en busca de conexiones a gravatar.com o secure.gravatar.com. Si se detectan imágenes de Gravatar, el informe lo señala como un problema de RGPD en la sección de privacidad. Esta marca indica que tu sitio está transfiriendo datos personales (direcciones IP de los visitantes y hashes de correos) a los servidores estadounidenses de Automattic sin un mecanismo de consentimiento explícito. El informe recomienda desactivar Gravatar por completo, cambiar a avatares alojados localmente o implementar una solución de carga basada en consentimiento.