Switching from UptimeRobot? Import your monitors in one click with a read-only API key.Start free →
  1. Home
  2. Monitoring
  3. SSL monitoring

SSL certificate monitoring that warns 30, 14 and 3 days ahead

Look at the certificate your server really presents: expiry date, trust chain and hostname match, with warnings before it lapses and a failure the moment it is invalid.

  • From $7 a month on Starter
  • Free plan: 30 monitors for HTTP(S), keyword, ping and port
  • No credit card for Free
shop.clienta.comTLS handshake on :443 · chain and hostname
Up
  • Amsterdam53msvalid
  • London78msvalid
  • Expires in62 days
  • IssuerLet’s Encrypt R11
  • ProtocolTLS 1.3

Illustrative example

Try it

Check it now, in your browser

No account. SSL monitoring: type a target and see roughly what it looks at. Nothing you type is stored.

One real request from a Tenium checker. It follows redirects and reads the certificate. Nothing is saved.

This reads the certificate over a real HTTPS request. A saved SSL monitor adds the chain and hostname verdicts and the 30, 14 and 3 day warnings.

The result appears here.

Create this monitorOpen the full tool

What it checks

What a ssl monitor looks at

Expiry warnings

One alert batch each time the certificate crosses 30, 14 and 3 days remaining. A renewed certificate resets the countdown automatically.

Validity

Expired, not yet valid, self-signed and untrusted-chain certificates fail the check with a plain-language cause.

Hostname match

The handshake uses the hostname as SNI and verifies that the certificate covers it, wildcards and alternative names included.

Any TLS port

Default port 443, but you can set another one for mail or API services that wrap the whole connection in TLS.

Alerts

SSL monitoring: what an alert looks like

The same event arrives as an e-mail, a Telegram message or a Slack card. This is the wording the channels send; the host, times and numbers are made up.

To [email protected]

Subject [SSL EXPIRES IN 14 DAYS] shop.clienta.com

SSL EXPIRES IN 14 DAYS

shop.clienta.com

SSL certificate for shop.clienta.com expires in 14 days

SSL certificateexpires 20 Jan 2027 (14 days left)
IssuerLet's Encrypt
Targetshop.clienta.com
Next stepRenew the certificate (or check that auto-renewal is running) before it expires.

Open monitor

Tenium · checked from Amsterdam · 14:02 UTC

Tenium alerts

🟠 SSL EXPIRES IN 14 DAYS · shop.clienta.com · SSL certificate expires in 14 days

TTenium APP 2:02 PM

SSL EXPIRES IN 14 DAYS · shop.clienta.com
SSL certificate for shop.clienta.com expires in 14 days

  • SSL certificate: expires 20 Jan 2027 (14 days left)
  • Issuer: Let's Encrypt
  • Target: shop.clienta.com

Open monitor

Renew the certificate (or check that auto-renewal is running) before it expires. · checked from Amsterdam

SSL monitoring: e-mail, Discord and Google Chat work on every plan; Slack, Telegram, Teams and Mattermost start on Starter. There are no SMS or voice-call alerts.

Expiry clock

The countdown the monitor watches

A quiet clock runs down to the expiry date. The monitor warns at fixed points, one batch per threshold, long before it matters.

Days left warning illustrative data
The countdown the monitor watches. Illustrative data. 022.54567.590 30 days14 days3 days today0 Days left
A quiet clock runs down to the expiry date. The monitor warns at fixed points, one batch per threshold, long before it matters.
Speed

Warnings before it expires

Expiry is not about check speed. Alerts go out at 30, 14 and 3 days before the date, once per threshold.

  1. 30 days before
  2. 14 days before
  3. 3 days before

Warnings sent so far: 1 of 3

Included from the Starter plan.

Setup

How to set up ssl monitoring in 30 seconds

1

Enter the target

Add the hostname to inspect (a bare host, no path), and Tenium fills in a sensible timeout and default confirmation settings.

2

Pick an interval

Fastest check interval: 30 s on Pro and Agency, 1 min on Starter, 5 min on Free. Slower intervals are available on every plan.

3

Choose alert contacts

Choose who is told. Email, Discord and Google Chat work on every plan, Slack, Telegram, Teams and Mattermost start on Starter, webhooks on Pro.

4

Save

The first check runs within seconds. If a check ever fails, other regions re-check it before an incident opens, so one bad route does not page you.

Failure modes

What each error means

This is the text an incident shows in its Error line, the usual cause, and the first thing to look at.

EXPIREDCertificate expired on 2026-10-31

The certificate’s end date passed. Browsers block the page. Renew it, then find out why renewal did not run (a dead cron, a changed DNS challenge, a payment).

Shown as: Certificate expired on 2026-10-31

ALTNAMETLS error: certificate does not match hostname

The certificate was issued for other names, often the server’s default site or a missing www. Add the hostname to the certificate.

Shown as: TLS error: certificate does not match hostname

CHAINTLS error: certificate chain not trusted

The intermediate certificate is missing or untrusted, which breaks some clients but not others. Serve the full chain.

Shown as: TLS error: certificate chain not trusted

SELF_SIGNEDTLS error: self-signed certificate

The server presents a certificate nobody trusts, typically a default or a staging cert in production.

Shown as: TLS error: self-signed certificate

NOT_YET_VALIDCertificate not yet valid (from 2026-11-12)

The start date is in the future: usually a wrong server clock or a certificate issued for later.

Shown as: Certificate not yet valid (from 2026-11-12)

NO_CERTNo certificate presented

The port answered without a certificate: the wrong port, or something that does not speak TLS.

Shown as: No certificate presented

Plans

SSL monitoring by plan

Free
$0/mo
Starter
$7/mo
Pro
$29/mo
Agency
$59/mo
Available—✓✓✓
Monitors301003001000
Fastest interval5 min1 min30 s30 s
Regions1222
Custom headers——✓✓
Response-time alerts——✓✓
Escalation to a second contact——✓✓
Status pages1310Unlimited

This check starts on the Starter plan. HTTP(S), keyword, ping and port checks are on every plan.

Full pricing

Three warnings, and what the 30-day one tells you

Tenium raises certificate-expiry alerts when a certificate has 30, 14 and 3 days left. Each threshold produces one batch of alerts per certificate, and a renewal that pushes the expiry date forward resets all three windows. The dates are fixed rather than configurable, which keeps the signal clean: nobody ends up with a warning at 90 days that everyone has learned to ignore.

The 30-day mark has a practical meaning. Certbot and most ACME clients renew when about 30 days remain, so a Let's Encrypt certificate should never be seen with fewer than that. If your monitor is the first to say "30 days left" on an automated certificate, renewal has already failed once. The 14-day and 3-day messages are the escalation for when nobody reacted. Contacts with quiet hours may see these warnings held until the next morning, which is harmless at 30 days and worth knowing at 3, so route the last warning to someone who is awake.

What "valid" means to the checker

An SSL monitor opens a TLS connection to your host and port, sends the hostname as SNI, and reads the certificate that comes back. It then checks that the certificate is within its validity dates, that it chains to a root in the standard trust store, and that it covers the hostname, including wildcard and alternative names. Failures are translated into plain language: certificate expired on a date, not yet valid, self-signed certificate, chain not trusted, or does not match hostname.

The default port is 443, but you can use any port that speaks TLS from the first byte, such as 465 for SMTPS or 993 for IMAPS. Connections that start in plain text and upgrade, like STARTTLS on port 587, are not supported by this monitor.

Missing intermediates: fine in Chrome, broken everywhere else

A server that sends only its leaf certificate, without the intermediate, often works in desktop browsers because they cache or download the missing piece. The same server fails for curl, Java, Python, older Android, payment webhooks and every other client that does no such rescue. Tenium does not fetch missing intermediates, so it reports an untrusted chain, which is exactly what your API consumers would experience. If your browser says "secure" while the monitor says otherwise, install the full chain file (fullchain.pem in Let's Encrypt terms) and reload the web server.

SNI, default vhosts and the wrong certificate

Servers that host many sites choose a certificate by hostname. If a vhost is misconfigured, the visitor gets the certificate of the default site, and the error is "hostname mismatch" even though the certificate itself is perfect. Monitor each public hostname separately, the bare domain and the www name, because they are often served from different blocks. A CDN or load balancer adds another layer: check the hostname customers use, not the origin address. Each check examines one resolved address, so if your A and AAAA records lead to different machines, an unusual setup, the monitor reports on the one it connected to.

Why renewals fail quietly

The usual suspects are mundane:

  • HTTP-01 challenges blocked by a redirect rule, a WAF, or an HSTS-only vhost that returns 404 for /.well-known/acme-challenge/.
  • DNS-01 challenges that depend on an API token that was rotated or deleted.
  • A cron job or systemd timer that was never enabled after a server rebuild.
  • Rate limits after repeated failed attempts, which turn a small problem into a week-long one.
  • A successful renewal that never reached the web server, because nginx or Apache was not reloaded and still serves the old certificate from memory.

Settings, plans and the neighbouring checks

SSL monitoring is included from the Starter plan. The check interval is yours to choose; hourly or slower is enough for certificates, though a faster interval is useful the day you replace one. Every https website monitor already stores the certificate expiry, but the dedicated SSL monitor adds the chain and hostname verdicts and a TLS-only failure that does not depend on the page returning a good status. The same monitor also reads the registration date of the domain, which is covered on the domain expiry page.

It is not a security audit. Protocol versions, cipher suites, OCSP and certificate transparency are outside its scope, so use a dedicated scanner for that and keep Tenium for the question "will this still work tomorrow".

SSL monitoring questions

Are the 30, 14 and 3 day thresholds configurable?

No, they are fixed for every monitor. Each one fires once per certificate, and renewing the certificate starts the sequence again.

Can I monitor a wildcard certificate?

Yes, point the monitor at any hostname the wildcard covers. If you use the same wildcard on many sites, one monitor per distinct server is enough because the expiry date is shared.

Does it work for internal or self-signed certificates?

No. The target must be reachable from the public internet, and a self-signed or private-CA certificate is reported as untrusted by design.

Will I get an alert when the issuer changes?

The issuer name is stored and shown on the monitor page, but a change in issuer does not raise an alert by itself. A switch of provider often arrives together with a hostname or chain failure.

Try ssl monitoring on Starter

This check starts on the Starter plan at $7 a month. The Free plan, no card needed, covers 30 monitors with HTTP(S), keyword, ping and port checks.