What it means: Chrome found a certificate defect outside the specific trust, name and date checks, and offers no bypass.
Free online tool — SSL certificate checker: instant results, no signup.
Runs a full TLS check: handshake, protocol versions, certificate chain, trust and expiry.
Chrome's certificate verifier maps most failures to a specific status: untrusted issuer, wrong hostname, bad dates, revocation, weak signature or key, missing Certificate Transparency, name-constraint violations. When the leaf certificate cannot be parsed, or the chain fails for a reason that has no dedicated status, the verifier sets a generic status and Chrome reports NET::ERR_CERT_INVALID (net error -207). net_error_list.h calls it "a certificate that is invalid" and adds: "This error is not recoverable."
That last line has two practical effects. When a certificate has several problems, Chrome reports the most serious one, and this code is checked first. And it belongs to the fatal group, together with ERR_CERT_REVOKED, so the warning page has no "Proceed" link at all. It is a TLS-layer certificate problem, not DNS, not HTTP, and not a cache issue.
| Browser | What you see | Most common trigger |
|---|---|---|
| Chrome | "Your connection is not private", NET::ERR_CERT_INVALID, no Proceed link | Wrong extended key usage, unknown critical extension, malformed certificate |
| Edge | "Your connection isn't private", same code | Same as Chrome |
| Firefox | A specific code instead: SEC_ERROR_INADEQUATE_CERT_TYPE, SEC_ERROR_UNKNOWN_CRITICAL_EXTENSION, SEC_ERROR_BAD_DER or SEC_ERROR_CA_CERT_INVALID | The same defects |
| Safari | "This Connection Is Not Private" | The same defects, described in Apple's own wording |
Wrong extended key usage. If a certificate has an extendedKeyUsage extension, it must include serverAuth ("TLS Web Server Authentication") or anyExtendedKeyUsage. A client-authentication, S/MIME or code-signing certificate installed on a web server fails here. A certificate with no EKU extension at all is accepted.
Unknown critical extension. Internal CA templates sometimes add a custom extension and mark it critical. Chrome must reject a certificate with a critical extension it does not understand.
Malformed or broken chain certificates. A leaf the parser cannot read, or an intermediate without CA basic constraints, typically from home-made CA tooling. Two look-alikes have their own codes: a SHA-1 signature gives ERR_CERT_WEAK_SIGNATURE_ALGORITHM, and a keyUsage that does not fit the handshake gives ERR_SSL_KEY_USAGE_INCOMPATIBLE.
With a proxied Cloudflare record, visitors see Cloudflare's edge certificate, which is issued by a public CA in the standard format. ERR_CERT_INVALID on a proxied hostname therefore points at a custom certificate you uploaded, or at something between the visitor and Cloudflare. Without a CDN, check every TLS terminator in turn: nginx, HAProxy, a WAF, or a corporate inspection proxy that generates its own certificates.
Inspect the extensions of each certificate file you deploy, before it reaches the server:
openssl x509 -in /etc/nginx/ssl/example.com.crt -noout \
-ext extendedKeyUsage,keyUsage,basicConstraints,subjectAltName
# want: X509v3 Extended Key Usage: TLS Web Server Authentication
# X509v3 Basic Constraints: CA:FALSE (or absent)If only one network shows the error, the inspection proxy on that network is producing the bad certificate, and the fix belongs to its administrators.
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null \
| openssl x509 -outform PEM > leaf.pemopenssl x509 -in leaf.pem -noout -text. Look for an Extended Key Usage line without "TLS Web Server Authentication" and for any extension marked critical that is not one of the standard ones (basic constraints, key usage, EKU, SAN, name constraints).chrome://net-export, start logging, load the site, stop, and open the file in the NetLog viewer. The CERT_VERIFY_PROC_PATH_BUILT event lists the verifier's errors, for example "The extended key usage does not include server auth".sudo certbot --nginx -d example.com -d www.example.com. For an internal PKI, fix the template: serverAuth EKU, SAN entries, no custom critical extensions, intermediates marked CA:TRUE.sudo nginx -t && sudo systemctl reload nginx, and retest every node.There is no bypass, by design. What you can do:
Clearing the cache or cookies does nothing, since certificates are not stored in the HTTP cache. If the error appears on every network and every device, only the owner can fix it.
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | grep "Verify return code"
# → Verify return code: 0 (ok)
curl -sv -o /dev/null https://example.com/ 2>&1 | grep "SSL certificate verify"
# → * SSL certificate verify ok.OpenSSL does not apply every Chrome rule, so finish with a load in Chrome itself. For an outside view of the served chain and its fields, use the enterno.io SSL checker.
SSL/TLS is the encryption protocol that protects data between the browser and server. Our tool analyzes the certificate, chain of trust, TLS version, and knownvulnerabilities.
Issuer, validity period, signature algorithm, covered domains (SAN), and validation type (DV/OV/EV).
Full chain verification: from leaf certificate through intermediates to root CA.
Protocol version (TLS 1.2/1.3), cipher suites, Perfect Forward Secrecy (PFS) support.
Set up a monitor — get Telegram and email alerts 30/14/7 days before expiration.
SSL certificate monitoring
TLS config audit
HTTPS as ranking factor
customer trust
www and subdomains.Strict-Transport-Security header forces browsers to always use HTTPS.SSL certificate monitoring, check history and alerts 30 days before expiry.
Sign up freeChrome treats this code as unrecoverable, in the same group as revoked certificates, so the warning page offers no override. The certificate has to be fixed on the server or on the proxy that produced it.
No. When a certificate has several problems Chrome picks the most serious one to report. This code means the problem did not fit any of the specific categories, or the certificate could not be parsed.
Firefox has its own verifier with more specific codes, such as SEC_ERROR_INADEQUATE_CERT_TYPE for a missing serverAuth key usage. That code is often the fastest way to learn what Chrome objects to.
Record a NetLog at chrome://net-export while loading the site and open it in the NetLog viewer. The CERT_VERIFY_PROC_PATH_BUILT event lists the verifier's errors, for example that the extended key usage does not include server auth.
Chrome reports SHA-1 signatures as NET::ERR_CERT_WEAK_SIGNATURE_ALGORITHM instead. Either way, reissue the certificate with a SHA-256 signature.
Free plan — 10 monitors, checks every 5 min, no card required. Upgrade for 1-minute interval and multi-region monitoring.