RunTheTests
/

ECH / Encrypted SNI Check

Check whether this connection encrypted the server name — the part TLS leaves in the open.

Where this comes from

TLS encrypts the content of a connection and has always announced the destination hostname in plaintext at the start of the handshake — which made the encryption largely beside the point for the question of what you were reading. Encrypted Client Hello closes that, and whether it happened is not something a browser will tell a page. The edge's trace endpoint reports what it received, so the answer here is an observation about the handshake that fetched this page rather than a guess from your browser version. That distinction matters because support and use are very different: ECH needs the browser, the setting, working DNS-over-HTTPS and a server publishing the key, all at once.

What the results mean

Encrypted
The server name was hidden from anyone watching the network. They saw the network you contacted, not the site.
Sent in the clear
The default, and how TLS has always worked. The hostname is announced before encryption begins.
Requires secure DNS
The requirement most often missed. Both Firefox and Chrome need DNS-over-HTTPS active for ECH to engage.
Does not hide the address
For a site on its own IP, the address identifies it regardless.

Common problems and fixes

My browser supports ECH but it shows plaintext
Support is not enough. It needs DNS-over-HTTPS working, since the key is published in DNS — that is the requirement people most often miss.
It works here but not on another site
Most of the internet has not deployed it. The server has to publish an ECH key, and relatively few do.
Does this hide which sites I visit?
From an observer reading the handshake, yes. The IP address you connect to is still visible, so a site with its own address is identified by that instead.

Frequently asked questions

What does ECH actually hide?

The server name in the TLS handshake. Without it, anyone watching the network sees which site you are connecting to even though everything after that is encrypted — which is how filtering and logging by hostname works.

Why do I need DNS-over-HTTPS for it?

Because the encryption key is published in DNS. Fetching it over plaintext DNS would announce the hostname you are about to hide, which defeats the point entirely.

Is it widely deployed?

Not yet. Browser support is good and server deployment is limited, so most connections still send the hostname in the clear.

Put this on your own site

Free to embed, no attribution required beyond the source link the frame carries itself. It runs entirely in your visitor's browser, sets no cookies and loads no third-party script.

Embed code
<iframe src="https://runthetests.com/embed/ech-test/" width="100%" height="560" style="border:1px solid #e5e5e5;border-radius:8px" title="ECH / Encrypted SNI Check" loading="lazy"></iframe>

Preview it at https://runthetests.com/embed/ech-test/. Embedded pages are marked noindex, so yours stays the canonical copy — not this one.

More in Connection