← Blog  ·  October 2026

Free SSL Certificate Monitoring: 5 Ways to Know Before Your Cert Expires

Your SSL certificate expired at 2am on a Tuesday. Users saw "Your connection is not private." Support queues filled before anyone noticed.

SSL certificate expiration is one of the most preventable outages in software. The expiry date is stamped in the certificate itself — you can read it at any time. And yet teams get caught by it constantly, because there's no built-in alarm. The cert silently ticks toward expiration, and the first signal most teams get is a browser error page.

This article covers five free approaches to SSL certificate monitoring, from quick manual checks to automated alerting, including our free SSLWatch tool that requires no signup to use.


Why SSL expiry keeps catching teams off guard

Let's Encrypt certificates expire every 90 days. Traditional CA certificates typically expire every 1–2 years. In either case, the failure mode is the same: the renewal process breaks at some point — a cron job that stopped running, an ACME challenge that started failing, a DNS change that broke auto-renewal — and nobody notices until the cert is already expired.

The problem is compounded by two factors:

Here are five free methods to close the gap.


Method 1: Browser certificate inspector

Every browser shows certificate details including the expiry date. In Chrome: click the padlock icon → Connection is secure → Certificate is valid. In Firefox: padlock → Connection secure → More information → View Certificate.

This works for one-off checks, but it requires someone to remember to check, which is why it fails in practice. Use it as a quick diagnostic when you suspect an issue — not as ongoing monitoring.

# Quick check from the terminal — shows notAfter date
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null \
  | openssl x509 -noout -dates

This prints the notBefore and notAfter dates for the certificate currently served. Run it on any domain to see exactly when it expires.


Method 2: Google Search Console alerts

Google Search Console sends alerts when it encounters a security issue on your property — including certificate errors. If your cert expires and Googlebot hits the site, you'll receive an email under Security Issues in Search Console.

The limitation: the alert arrives when Googlebot crawls the page after the expiry, not before. This is a reactive notification, not a proactive one. For high-traffic sites that Googlebot crawls frequently, you might hear about it within hours of expiry. For low-traffic sites, it may take days.

Google Search Console is worth having regardless — it covers many security issue types beyond SSL — but it should not be your primary SSL expiry monitor.


Method 3: Let's Encrypt expiry emails

If you issued your certificate through Let's Encrypt, they send expiry reminder emails at 20 days and 7 days before expiration — but only if auto-renewal hasn't already renewed the cert. The email goes to the address you provided during the initial ACME registration.

Check which email your certs are registered under:

# Find the registered email for a Certbot-managed cert
sudo certbot certificates

This works reliably for domains managed by Certbot, but has two gaps:


Method 4: UptimeRobot SSL monitoring (free tier)

UptimeRobot's free tier includes SSL certificate monitoring. After adding a monitor for your domain, it checks your cert's expiry and sends an email alert when the cert is within a configurable threshold (default: 7 days).

Setup: create a free account → Add New Monitor → HTTPS → enter your domain → expand SSL settings → enable SSL alert.

The free tier covers up to 50 monitors, which is sufficient for most teams. The main limitation is that free-tier check frequency is 5 minutes for uptime, and SSL checks are less frequent than uptime checks — typically daily. This is fine for expiry alerts, since you have a 7-day window, but it means you won't catch mid-cert issues in real time.


Method 5: SSL certificate checker tool (free, no signup)

The fastest way to check any domain's SSL status right now is our free SSL certificate checker. Paste any domain, get the expiry date, issuer, and days remaining — no account required.

Use it for:

Check multiple subdomains If your application serves traffic on www, api, app, and cdn subdomains, each may have its own certificate. Run the checker against each one. It's common to have the main domain monitored but forget a subdomain that's on a different cert with a different renewal schedule.

What to do right now

If you're not currently monitoring SSL expiry, here's a quick triage:

  1. Run the openssl command from Method 1 against your top 5 domains and subdomains. Note which expire soonest.
  2. If any cert expires within 30 days: renew it now and verify the renewal is actually being served.
  3. Set up at least one automated monitor (Method 4 or 5) so you're not relying on memory.
  4. Verify your Let's Encrypt auto-renewal is working: sudo certbot renew --dry-run. If it fails, fix it before the cert expires.
  5. Add all production subdomains to your monitoring list, not just the apex domain.

The entire triage takes under 20 minutes and eliminates a class of outage that's entirely preventable.


Comparison: which method fits which situation

For teams managing 1–3 domains: Let's Encrypt emails + UptimeRobot free tier covers you at zero cost. For teams managing 10+ domains across multiple platforms: a dedicated SSL monitoring service that polls all domains on a schedule and sends a single alert digest is worth the time investment. Our SSLWatch tool is designed for exactly this — add all your domains, get notified before any of them expire.

🔒 SSL expiry monitoring for all your domains

SSLWatch monitors all your certificates in one place and sends alerts before any of them expire — across apex domains, subdomains, APIs, and CDN endpoints. Add all your domains in minutes.

Join the SSLWatch waitlist → Check a cert now (free)

← All articles  ·  SSLWatch  ·  SSL cert checker