My HTTP Headers

See exactly what your browser is sending — and what it reveals about you.

Wondering how unique your browser is? Check your browser fingerprint — the signals websites use to identify you without any cookies.

Check Your Fingerprint →

¿Qué son las cabeceras HTTP?

Cada vez que tu navegador abre un sitio web, no solo envía una solicitud de la página, sino que también envía un paquete de metadatos junto con esa solicitud. Esos metadatos son las cabeceras HTTP.

Nunca escribes estas cabeceras. Nunca las ves durante la navegación normal. Pero cada servidor que visitas las lee, y revelan una cantidad sorprendente sobre ti: qué navegador usas, en qué sistema operativo estás, qué idiomas hablas, de dónde vienes, si estás detrás de un proxy y qué tipo de contenido aceptas.

El widget en vivo de arriba muestra todas las cabeceras que tu navegador envió para cargar esta página. A continuación encontrarás una referencia completa y categorizada de las cabeceras HTTP comunes, qué hace cada una y qué revela.

Lo que tus cabeceras revelan sobre ti

Algunas cabeceras HTTP son técnicamente necesarias: le dicen al servidor cómo formatear la respuesta. Otras son huellas de identidad: combinadas, hacen que tu navegador sea reconocible de forma única en internet, incluso sin cookies.

  • Tu User-Agent por sí solo te reduce a unos pocos miles de personas. A veces muchos menos, dependiendo de tu combinación de navegador, sistema operativo y arquitectura.
  • Accept-Language revela tu país y probablemente tu idioma nativo. Los sitios lo usan para localizar contenido; los rastreadores lo usan para construir perfiles.
  • Los Client Hints (Sec-CH-UA-*) son versiones más nuevas y precisas del User-Agent. Habilitados por defecto en los navegadores Chromium, filtran aún más detalles. Safari se niega a implementarlos por razones de privacidad.

Referencia de cabeceras HTTP

~38 cabeceras de solicitud comunes, agrupadas por propósito.

Cabeceras de identificación

User-Agent#

Identifies your browser, version, rendering engine, and OS. The most fingerprintable single header. Combined with other data, it often makes you uniquely identifiable. Defined in RFC 9110 §10.1.5.

Sec-CH-UA#

"User-Agent Client Hints." A newer, structured replacement for User-Agent. Reveals browser brand and version in a machine-readable format. Sent by default in Chrome, Edge, and other Chromium browsers. Not sent by Safari or Firefox.

Sec-CH-UA-Platform#

Your OS family — "Windows", "macOS", "Linux", "Android", or "iOS". Sent by default in Chromium as a low-entropy hint.

Sec-CH-UA-Mobile#

?1 if you're on a mobile device, ?0 if not. Sent by default in Chromium alongside the other low-entropy Client Hints.

Idioma y negociación de contenido

Accept-Language#

Your preferred languages in priority order (e.g. en-US,en;q=0.9,fr;q=0.7). Servers use it to localize content; trackers use it to infer your country and native language.

Accept#

The MIME types your browser is willing to receive. Reveals which image formats and content types your browser supports — another fingerprinting signal.

Accept-Encoding#

Compression algorithms your browser supports (typically gzip, deflate, br, zstd). Lets the server send compressed responses to reduce transfer size.

Accept-Charset#

Character sets the client accepts. Almost always omitted by modern browsers — servers default to UTF-8 and this header became redundant.

Conexión y cadena de proxy

X-Forwarded-For#

The chain of IP addresses your request passed through. If you're behind a proxy or VPN, your real IP can still appear here as the leftmost address. Sites can read this to bypass simple VPN masking.

X-Real-IP#

Often set by reverse proxies (nginx, Caddy) to indicate the client's true IP, separate from the proxy chain.

CF-Connecting-IP#

Cloudflare's version of "your real IP." On any Cloudflare-protected site, this is what the origin server actually sees — not the Cloudflare edge node IP.

CF-IPCountry#

Two-letter country code Cloudflare detected from your IP (e.g. US, DE, IN).

CF-Ray#

Unique ID Cloudflare assigns to each request. Useful for debugging; useless for tracking you since it changes with every request.

Via#

Indicates intermediate proxies or gateways the request passed through. Rare for normal traffic; common in corporate networks and CDN chains.

Forwarded#

The standardized version of X-Forwarded-For (RFC 7239). Slowly replacing the older X-prefixed variants.

Origen y referente

Referer#

The full URL of the page you came from. Reveals your browsing path to every site you visit. Many browsers now strip or shorten this for privacy. Note: yes, this is an official misspelling — the original 1996 spec (RFC 1945) had a typo, and it was too late to fix it.

Origin#

The scheme + host of the page making the request (no path, no query). Sent on cross-origin requests so the server can enforce CORS. Less leaky than Referer — it only reveals the site, not the specific page.

Seguridad y metadatos de fetch

Sec-Fetch-Site#

Where the request originated: same-origin, same-site, cross-site, or none. Helps servers detect CSRF and SSRF attacks.

Sec-Fetch-Mode#

The mode: navigate (you clicked a link), cors, no-cors, same-origin, or websocket.

Sec-Fetch-Dest#

What the response is for: document, image, script, style, font, iframe, etc.

Sec-Fetch-User#

?1 if the request was triggered by user action (click, key press). Distinguishes user-initiated navigation from script-initiated requests.

Sec-Fetch-Storage-Access#

active or inactive — whether the request has access to unpartitioned cookies. Part of the Storage Access API (2024+), relevant for cross-site auth flows.

Caché

Cache-Control#

Instructions to caches (browser, CDN, proxy) about freshness and storage. Defined in RFC 9111.

If-None-Match#

Sent with an ETag from a previous response. The server replies 304 Not Modified if the resource hasn't changed — saves bandwidth.

If-Modified-Since#

A timestamp from your last fetch. Same idea as If-None-Match, older mechanism.

If-Match#

Only proceed if the resource matches the given ETag. Used for optimistic concurrency control in REST APIs.

Pragma#

Legacy HTTP/1.0 cache directive. Modern browsers may still send Pragma: no-cachefor backward compatibility, but it's deprecated in favor of Cache-Control.

Cookies y estado

Autenticación

Authorization#

Carries credentials (Basic, Bearer/JWT, Digest). Browsers only send this on navigation after a 401 Unauthorized challenge, or when explicitly set by JavaScript (e.g. API calls).

Proxy-Authorization#

Same idea as Authorization, but credentials for the proxy itself rather than the destination server.

Control de conexión y rendimiento

Connection#

Usually keep-alive — keeps the TCP connection open for multiple sequential requests.

Host#

The domain you're connecting to. Required since HTTP/1.1 — allows virtual hosting on shared IPs.

Upgrade-Insecure-Requests#

1 if your browser prefers HTTPS responses over HTTP when both are available.

Save-Data#

on if the user has enabled "data saver" mode in the browser or OS. Sites can respond with lighter assets — smaller images, fewer fonts.

Priority#

Hints request priority (u= urgency, i= incremental) for HTTP/2 and HTTP/3 stream scheduling. Defined in RFC 9218.

Range#

Request only a byte range of the resource (e.g. bytes=0-1023). Used by video players, download managers, and resumable downloads.

Señales de privacidad

DNT (Do Not Track)#

Set to 1 if you've enabled "do not track." Mostly ignored by sites — a polite request with no legal enforcement in most countries.

Sec-GPC (Global Privacy Control)#

1 if your browser signals "do not sell or share my personal data." Unlike DNT, GPC has legal standing under California's CCPA. Sent by Firefox by default, Brave, and DuckDuckGo browser; opt-in elsewhere.

Cómo reducir lo que revelan tus cabeceras

No puedes deshabilitar las cabeceras HTTP, son necesarias para que la web funcione. Pero puedes reducir cuánto te identifican:

  • Usa Firefox con privacy.resistFingerprinting = true (about:config). Falsifica un User-Agent genérico y estandariza la zona horaria, pantalla e idioma entre usuarios.
  • Usa el navegador Tor para la defensa más sólida: todos los usuarios de Tor presentan cabeceras idénticas, por lo que toda la población Tor parece igual.
  • Usa una VPN para ocultar tu IP de las cabeceras, pero ten en cuenta que esto no cambia tu User-Agent, Accept-Language ni otras señales de huella digital.
  • Deshabilita Client Hints en Chromium mediante chrome://flags/#user-agent-reduction.
  • Elimina el Referer con una extensión de navegador (modo avanzado de uBlock Origin, uMatrix).

La resistencia a la privacidad requiere que todos los usuarios de tu configuración de navegador parezcan idénticos. Los ajustes individuales generalmente te hacen más único, no menos, porque menos personas tienen esa configuración exacta.

Preguntas frecuentes

¿Qué cabeceras HTTP envía Chrome?

Por defecto, Chrome envía: Host, User-Agent, Accept, Accept-Language, Accept-Encoding, Connection, más los Client Hints de baja entropía Sec-CH-UA, Sec-CH-UA-Mobile y Sec-CH-UA-Platform, la familia completa de metadatos Sec-Fetch-* y Upgrade-Insecure-Requests: 1. Chrome es el navegador más generoso con las señales de huella digital pasiva.

¿Qué cabeceras HTTP envía Safari?

Safari envía Host, User-Agent, Accept, Accept-Language, Accept-Encoding y Connection. Safari no envía Client Hints Sec-CH-UA; Apple se negó a implementarlos por razones de privacidad. Safari también elimina el Referer de forma más agresiva por defecto.

¿Qué cabeceras HTTP envía Firefox?

Firefox envía Host, User-Agent, Accept, Accept-Language, Accept-Encoding, Connection y Upgrade-Insecure-Requests. Firefox no envía Client Hints. Con privacy.resistFingerprinting habilitado, Firefox falsifica un User-Agent genérico y estandariza la zona horaria, el tamaño de pantalla y el idioma.

¿Puedo ocultar mis cabeceras HTTP?

No del todo: los servidores necesitan la mayoría de ellas para responder correctamente. Puedes falsificar o eliminar las identificativas usando navegadores enfocados en privacidad (Tor Browser, Firefox reforzado) o extensiones de navegador.

¿Es único mi User-Agent?

Frecuentemente, sí. La combinación de navegador + versión + SO + arquitectura reduce a la mayoría de los usuarios a unos pocos miles en todo el mundo. Combinado con Accept-Language y Sec-CH-UA-*, normalmente te vuelves identificable de forma única.

¿Qué es X-Forwarded-For?

Una cabecera añadida por proxies y CDNs que registra la IP original del cliente. Si estás detrás de una VPN o proxy, tu IP real puede aparecer aquí como la dirección más a la izquierda.

¿Por qué Referer está mal escrito?

La especificación HTTP/1.0 (RFC 1945, 1996) contenía el error tipográfico. Para cuando alguien lo notó, ya estaba desplegado en todas partes y era imposible cambiarlo. La ortografía correcta en inglés es Referrer; el nombre de la cabecera sigue siendo Referer.

¿Son privadas las cabeceras HTTP?

No. Cada servidor al que te conectas las ve. Por HTTPS, las cabeceras están cifradas en tránsito. Por HTTP simple, todos en el camino ven todo.

¿Puede un sitio web ver mi IP real si uso una VPN?

La IP que presenta el nodo de salida de tu VPN estará en las cabeceras de conexión. Sin embargo, las fugas de WebRTC, DNS y la detección JavaScript pueden exponer tu IP real por separado.

¿Cuál es la diferencia entre Referer y Origin?

Referer es la URL completa de la página anterior (ruta + consulta). Origin es solo esquema + host, menos revelador. Los navegadores envían Origin en solicitudes cross-origin para CORS; Referer se envía en la mayoría de las navegaciones.

Written by Pipo · myipco.com

Published · Last updated