Free tool

Free HTTP Security Headers Checker

Enter a URL and see which of the five HTTP security headers it actually sends. We request the page from our own servers and read the real response, so you get the headers a visitor receives rather than what a config file says they should.

Six dimensions · 49 documented rules · mapped to ADA, WCAG and FTC sources

The check runs from our servers, not your browser. We record the host you check, your IP address and your browser string to prevent abuse, and Cloudflare Turnstile verifies the request. We never store the page itself.

Example result

3 of 5 checks passed

example.com, illustrative. Run a check for your own.

  • MissingContent-Security-Policy
  • PresentStrict-Transport-Security
  • PresentX-Frame-Options
  • PresentX-Content-Type-Options
  • MissingReferrer-Policy

The short answer

What are HTTP security headers?

The one-paragraph version, before the detail.

HTTP security headers are instructions a web server sends alongside a page, telling the browser which behaviours to allow and which to refuse. They are not a firewall and they do not fix vulnerable code: they narrow what an attacker can do with a flaw that already exists, which is why they are called defence in depth. Five of them do most of the work, and this page checks all five.

The five headers

What each header does

One paragraph each, in the order the checker reports them.

Content-Security-Policy

What does Content-Security-Policy do?

Lists the sources a page may load scripts, styles and frames from. With one in place, a script injected through a flaw elsewhere is refused because its origin is not on the list. The most powerful of the five and the most work to adopt: a strict policy can block your own scripts, so most teams ship it in report-only mode first.

Strict-Transport-Security

What does Strict-Transport-Security do?

Tells the browser to use https for this site from now on, without trying http first. That closes the gap on a visitor's very first request of the day, which can otherwise be intercepted before the redirect to https happens. It only means anything on an https page, which is why the checker reports it as not applicable on a plain http URL rather than as a failure.

X-Frame-Options

What stops my pages being framed?

Either an X-Frame-Options header or a frame-ancestors directive inside your Content-Security-Policy. Both tell the browser who may embed the page in a frame, which stops a hidden copy of your site being layered under someone else's buttons. The checker accepts either: frame-ancestors is the modern form, and a policy carrying it needs no X-Frame-Options.

X-Content-Type-Options

What does X-Content-Type-Options do?

Set to nosniff, it tells the browser to believe the content type you declared instead of guessing from the bytes. Without it, a file meant to be plain text or an image can be interpreted as a script, which turns an ordinary upload feature into a way to run code. One fixed value, nothing to get wrong.

Referrer-Policy

What does Referrer-Policy do?

Controls how much of the current URL is passed on when a visitor follows a link away from your site. Without one, the full address travels to the destination, including any token or search term in the path or query string. It is the difference between a third party learning that someone came from your site and learning which page they were reading.

Scope

What this tool covers, and what it does not

Headers are one control on one page. A compliance scan is a different question, and this page is honest about the difference.

This checker compared with a full Sitejar scan
What is checkedThis checkerFull scan
Pages readOne URLEvery page crawled
Response headersIncludedIncluded
All six dimensionsNot includedIncluded
Accessibility rulesNot includedIncluded
Exportable evidenceNot includedIncluded
Documented rules run549
Account neededNot includedNot included

FAQ

Straight answers.

Including what this tool cannot tell you.

Are security headers enough to secure my site?
No. Response headers are defence in depth: they limit what a browser will do if something else has already gone wrong. They do nothing about an unpatched dependency, a leaked credential, or a form that trusts its input. Treat a clean result here as one box ticked, not as a security assessment.
How do I add security headers?
They are set by whatever serves the response, so the change belongs in your web server or CDN rather than in your application code: an add_header block in nginx, a Header set directive in Apache, or the response headers panel of a platform like Cloudflare, Netlify or Vercel. Start with X-Content-Type-Options and Referrer-Policy, which are single fixed values and cannot break a page. Add Content-Security-Policy last, and in report-only mode first, because a strict policy can stop your own scripts from loading.
What is a good result?
All five present is the bar this tool measures, and it is a low bar on purpose: it checks that a header exists, not that its value is strict. A Content-Security-Policy of default-src * passes here and protects almost nothing. Read a pass as "the control is switched on", then review the values themselves.
Do security headers affect SEO?
Not directly. No search engine ranks a page for sending Referrer-Policy. The connection is indirect: HSTS keeps visitors on https, and a page compromised through a missing control can be flagged as unsafe, which affects traffic far more than any ranking factor would.

Free compliance scan

Headers are one slice. See the whole site.

Six dimensions, 49 documented rules, and the exact fix for each finding, mapped clause by clause to the instruments your auditors cite.

No account, up to 5 pages on a guest scan. Or choose your plan.