diff --git a/certinspector/inspector.go b/certinspector/inspector.go
index 376deb2e7aaf4c1ef2ce1aed8ce9b575be03c0ec..1b587103040e5af9cb705d4bdc1a9fd5ede2b873 100644
--- a/certinspector/inspector.go
+++ b/certinspector/inspector.go
@@ -76,7 +76,7 @@ func InspectCertificate(certDir string, verboseBool bool) (CertificateData, erro
 }
 
 // Process certificate and call writeJSON function. Write to file.
-func ProcessCertificatesWrite(baseDir, provider string, outputDir string, verboseBool bool) error {
+func ProcessCertificatesWrite(baseDir, provider string, outputDir string, verboseBool bool, suffix string) error {
 	if verboseBool {
 		DebugLogger.Printf("executing ProcessCertificatesWrite function for provider: %s", provider)
 	}
@@ -113,7 +113,7 @@ func ProcessCertificatesWrite(baseDir, provider string, outputDir string, verbos
 		return results[i].CertName < results[j].CertName
 	})
 
-	outputFile := filepath.Join(outputDir, provider+".json")
+	outputFile := filepath.Join(outputDir, provider+suffix+".json")
 	return writeJSON(outputFile, results, verboseBool)
 }
 
diff --git a/main.go b/main.go
index 855ce35c673fa82e002bd5ee7d08960a8e122ae4..8f4c8447acce16d35df40e60ab6348c2dbb0afd8 100644
--- a/main.go
+++ b/main.go
@@ -64,8 +64,12 @@ func renderPage(w http.ResponseWriter, req *http.Request) {
 	provider := strings.Split(req.URL.Path, "/")[1]
 	outputDir := filepath.Join(webDir, provider)
 	serveFile := filepath.Join(webDir, req.URL.Path)
+	suffix := ""
+	if strings.HasSuffix(serveFile, "/by_date.html") {
+		suffix = "_expired"
+	}
 
-	err := certinspector.ProcessCertificatesWrite(baseDir, provider, outputDir, verboseBool)
+	err := certinspector.ProcessCertificatesWrite(baseDir, provider, outputDir, verboseBool, suffix)
 	if err != nil {
 		WarningLogger.Println(err)
 		http.Error(w, "Failed to process certificates", http.StatusServiceUnavailable)