Free tool ยท No sign-up

HTTP Header Viewer

Enter any URL and see the full HTTP response: the status, every header explained in plain words, each hop of a redirect chain, and the flags on every cookie. Test as Chrome, Googlebot or Bingbot, and copy the result as raw text, curl or JSON.

  • Every header, explained
  • Redirect chain, hop by hop
  • As Googlebot, Bingbot or Chrome

Looking for problems? Grade the security headers with the Security Headers Checker, or follow a redirect with the Redirect Checker.

What it shows

The full response, in plain words

Headers are the part of a web response most people never see.

Every header

All the response headers, grouped by purpose, with a short explanation for each one.

Each redirect hop

For a redirect chain, select any hop to see its own status, location and headers.

Cookie flags

Names, Secure, HttpOnly, SameSite and lifetime for every cookie. Values are never shown.

Caching

What Cache-Control, ETag, Expires and CDN cache headers add up to, in a sentence.

Choose the visitor

Request as Chrome, Googlebot or Bingbot to see sites that answer crawlers differently.

Copy and export

Copy the headers as raw HTTP, copy a curl command that repeats the request, or download JSON.

Headers that matter for SEO

The headers to check first in an SEO audit

These headers directly affect crawling, indexing and speed.

HTTP headers that matter for SEO
HeaderWhat it doesWhat to look for
X-Robots-TagSends noindex, nofollow and other rules in the headerAn unexpected noindex on pages that should rank.
Link: rel=canonicalDeclares the canonical URL in the headerA canonical that conflicts with the one in the HTML.
LocationWhere a redirect goesTemporary 302s that should be 301s, and long chains.
Cache-ControlWhether and how long a page is cachedno-store on pages that could be cached, or very short lifetimes on static files.
Content-EncodingCompression (gzip, br)Missing compression on HTML, CSS and JavaScript.
Content-TypeFile type and character setHTML served with the wrong type or no charset.
VaryWhich request headers change the responseVary: User-Agent can fragment caches.
How to use it

How to view a URL's HTTP headers

Three steps from a URL to the headers.

1

Enter a URL

Any public address. Choose GET or HEAD, and who to request as.

2

Read the takeaways

The summary notes compression, caching, CDN, HTTP/3, server disclosure and indexing rules.

3

Inspect the headers

Search the list, open each redirect hop, check the cookies, then copy or download what you need.

Good to know

Reading headers correctly

A few things to keep in mind when you read headers.

Where it is measured

The request comes from Cloudflare's network. A site can answer differently by country or device.

Crawlers can differ

Some sites send other headers or redirects to bots. Test as Googlebot to see what Google gets.

CDN caches vary

A header like CF-Cache-Status shows whether this request was served from cache.

Cookie values are hidden

Only names and flags are returned, so session data never reaches this tool.

GET vs HEAD

Some servers answer HEAD differently from GET. Use GET to see what a browser sees.

Check after changes

Re-check headers after a server, CDN or plugin change to confirm the new rules work.

Why it matters

What HTTP response headers are and why SEOs read them

Every time a browser or crawler requests a URL, the server answers with a status code, a block of headers and then the content. The headers are the part nobody sees. They say how the response should be treated: whether it may be cached and for how long, how it is compressed, what type of file it is, where a redirect leads, which cookies to store and whether the page may be indexed.

An HTTP header viewer shows that hidden layer. You enter a URL and see the final status, every header with a plain-words explanation, each hop of a redirect chain and the flags on each cookie. For SEO, a few headers decide whether a page can rank at all. An [X-Robots-Tag](https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag) header can carry a noindex rule that never appears in the page source. A Link header can declare a canonical URL. A Location header decides where a redirect goes.

Headers are also where caching, compression and CDN behaviour show up, so they explain many speed and crawling oddities that the page itself cannot. This viewer can send its request with the user agent of Chrome, Googlebot or Bingbot. That shows whether a site treats them differently, but it is not a proof of what Google sees: the request still comes from Cloudflare's network, not from Google's servers.

When to use it

When to check HTTP headers

Open the headers whenever a page behaves in a way the page source cannot explain.

A page will not index

If a page is missing from Google and the HTML has no noindex, check the headers. A server rule, plugin or CDN setting may be sending X-Robots-Tag: noindex for that URL.

Testing redirects after a change

Follow a redirect hop by hop, with each status and Location. Confirm that old URLs go to the right place through a single permanent redirect rather than a chain.

Checking whether a CDN is caching

Read Cache-Control, Age and the CDN's cache status header. They show whether a page came from the cache or the origin, which helps explain a slow first visit.

Comparing bot and browser responses

Request the same URL as Chrome and as Googlebot. Different redirects, status codes or headers can point to bot blocking, a firewall rule or content that depends on the visitor.

Controlling PDFs and images

Non-HTML files cannot carry a robots meta tag. Check that an X-Robots-Tag or canonical Link header is actually sent for the PDFs, images or feeds you care about.

Reviewing cookies and compression

See which cookies a page sets and whether each has Secure, HttpOnly and SameSite flags, and whether HTML, CSS and JavaScript are served with Content-Encoding.

Common mistakes

HTTP header mistakes and how to fix them

Header problems are easy to miss because they never show on the page itself.

A forgotten noindex header

What goes wrong: A staging or maintenance rule keeps sending X-Robots-Tag: noindex after launch. The HTML looks clean, so people hunt for the cause in the page and miss it.

The fix: Check the headers of the live URL, then remove the rule from the server config, CDN or plugin that sets it. Request the page again, and use URL Inspection in Search Console to confirm.

A canonical header that contradicts the HTML

What goes wrong: A Link: rel="canonical" header points to one URL while the HTML canonical tag points to another. Search engines get conflicting signals about the preferred version.

The fix: Use one method for each page type. For HTML pages, keep the canonical tag and remove any header version unless you can guarantee both match.

302 for a permanent move

What goes wrong: Google uses a 301 or 308 as a signal that the redirect target should be canonical, but does not use a temporary redirect that way. A 302 on a permanent move leaves that signal out.

The fix: Change permanent moves to 301 or 308 in the server, CDN or CMS redirect settings, and check that the change shows up in the first hop.

Cache-Control set to no-store everywhere

What goes wrong: no-store stops a response being kept in any cache, and can make a page ineligible for the browser's back and forward cache, so pages that could be cached are fetched from scratch each time.

The fix: For HTML that must stay fresh, prefer no-cache with private where needed. Give versioned CSS, JavaScript and images a long max-age and keep no-store for truly sensitive pages.

Vary: User-Agent on every response

What goes wrong: Vary makes caches keep a separate copy for each value of the named request header. With User-Agent, almost every browser version gets its own copy and the cache hit rate drops.

The fix: Use Vary only for headers that really change the response, such as Accept-Encoding. Serve responsive layouts with CSS instead of varying by user agent.

Testing with HEAD and trusting it

What goes wrong: Some servers answer a HEAD request differently from a GET request, or block it. The headers you read may not match what a browser or crawler receives.

The fix: Use GET when you want to see what a browser would get, and use HEAD only for a quick look. Compare both if results look odd.

Glossary

HTTP header terms explained

HTTP response header
A name and value pair the server sends before the page content. Together the headers tell the client how to handle the response: caching, compression, cookies, security rules and indexing.
Status code
A three-digit number at the start of the response, such as 200 for success, 301 for a permanent redirect, 404 for not found and 500 for a server error.
X-Robots-Tag
A header that carries robots rules such as noindex. Google says any rule valid in a robots meta tag can be sent as an X-Robots-Tag, which also works for non-HTML files.
Cache-Control
A header that sets how a response may be cached, with directives such as max-age, no-cache, no-store, public and private.
ETag
A validator the server attaches to a response. The client sends it back later, and the server can answer 304 Not Modified, saving the download if nothing has changed.
Content-Encoding
A header naming the compression applied to the body, such as gzip or br for Brotli. The browser sends Accept-Encoding to say which ones it supports.
Vary
A header listing the request headers that changed the response, so caches store separate versions. Vary: Accept-Encoding is common, while Vary: * marks a response as uncacheable.
Set-Cookie flags
Attributes on a cookie. Secure limits it to https, HttpOnly hides it from JavaScript, and SameSite controls when it is sent on cross-site requests.
Madhav Kushwaha, SEO, AEO, GEO and digital marketing consultant in Kathmandu, Nepal

Built by

Madhav Kushwaha

SEO, AEO, GEO & Digital Marketing Consultant in Kathmandu, Nepal, and trainer at ODcrU Academy and TechAxis Institute. When something odd happens on a site, I open the headers first: caching, redirects, noindex rules, canonicals and CDNs all show up there. I built this viewer so that is one click, with every header explained for people who don't read them daily.

HTTP Header Viewer: Frequently Asked Questions

An HTTP header viewer shows the headers a web server sends with its response to a request: the status code, content type, caching rules, security settings, cookies and more. This one also explains each header and shows every step of a redirect chain.
They are name and value pairs the server sends before the page content. They tell the browser or crawler how to treat the response: how long to cache it, how it is compressed, whether it may be indexed, which cookies to store, and which security rules apply.
Enter the URL and run the tool. It requests the address from Cloudflare's network and lists the response headers. You can also use curl -I in a terminal, or the Network tab in browser developer tools, which this tool saves you from opening.
X-Robots-Tag (indexing rules), Link with rel=canonical, Location (redirects), Cache-Control and Content-Encoding (speed), Content-Type and the status code itself. A stray noindex or a wrong redirect in the header can remove a page from search.
GET asks for the full response, HEAD asks for the headers only. Most servers answer both the same, but some treat HEAD differently or block it. Use GET to see what a browser would get.
Some sites detect crawlers and send different redirects, headers or content. Requesting as Googlebot, Bingbot or Chrome shows whether the site treats them the same, which matters for cloaking and bot-blocking problems.
The HTTPS handshake failed, so no response arrived. The certificate may be expired, for another name or untrusted. The SSL Certificate Checker shows which.
No. For privacy and safety, the tool returns only each cookie's name and its flags (Secure, HttpOnly, SameSite, domain, path and lifetime). Cookie values are never sent to your browser or stored.
It shows how a CDN handled the request. HIT means it was served from cache, MISS means the CDN fetched it from the origin, DYNAMIC means it wasn't cacheable, and BYPASS means caching was skipped. It helps explain slow first requests.
No. The URL is requested once to read its headers, the results are shown in your browser, and nothing is saved or shared.

More free SEO tools

Headers shape caching, security and indexing. These tools check each of them.

Call WhatsApp SEO Audit