Live: tailing every trusted CT log

Every TLS certificate, the second it's issued.

Treehead tails all Chrome- and Apple-trusted Certificate Transparency logs, verifies every Merkle root against the signed tree head, and gives you instant search and a real-time WebSocket firehose.

–
log entries / second
–
entries verified & indexed
–
entries behind the log heads
–
CT logs, roots verified

The firehose

One WebSocket. Every new certificate on the internet.

This is the real feed, streaming into your browser right now. Filter by domain, substring or issuer, resume from a sequence number after a disconnect, and drop duplicate copies of the same certificate.

wss:///v1/stream0/s

Built differently

What crt.sh should have been.

✓

Cryptographically verified

Every checkpoint and STH signature is checked and every Merkle root recomputed from the leaves. If a log forks or lies, Treehead records the incident.

⚡

Real-time WebSocket

About a second from log append to your socket. Batched native protocol plus CertStream-compatible endpoints, so existing tools just swap the URL.

⌕

Fast search that pages

Bloom-filtered, sharded index on R2. Huge domains return the first page in milliseconds instead of timing out.

◇

Tiled + RFC 6962 logs

Native support for static-CT tiled logs (Let's Encrypt, Google, Geomys, IPng) and classic RFC 6962 logs alike.

⎘

Inclusion proofs

Every certificate page shows its leaf hash and audit path, so you can check it's really in the log instead of trusting us.

◎

Runs on the edge

Durable Objects per log, hibernating WebSocket relays and R2 storage on Cloudflare's network. No single overloaded Postgres.

Treehead vs crt.sh

crt.shTreehead
Real-time streamNoneWebSocket, filters, resume cursor
Large-domain searchTimes out / 502Paged, newest first
Log verificationTrust the databaseSigned heads + recomputed Merkle roots
Static (tiled) CT logsPartialFirst-class
Per-log lag & healthHiddenPublic status page
Precert / cert duplicatesShown separatelyMerged into one record

Start streaming in one line.

Open the firehoseRead the docs