diff --git a/assets/js/page_image_detail.js b/assets/js/page_image_detail.js
index 4abc04f53a43e8423994005c4bc71d18c953667a..dbff498c078d446aa0a9cd7adf856eecd43af53c 100644
--- a/assets/js/page_image_detail.js
+++ b/assets/js/page_image_detail.js
@@ -20,6 +20,7 @@ const updateForm = document.querySelector(".update-form");
 
 let lastTimeOut = null;
 let lastSaved = null;
+let hasChangedEver = false;
 
 const currentState = () => {
     const data = new FormData(document.forms.namedItem("upload"));
@@ -39,6 +40,7 @@ const scheduleSave = () => {
     if (lastTimeOut !== null) {
         clearTimeout(lastTimeOut);
     }
+    hasChangedEver = true;
     lastTimeOut = setTimeout(doSave, 300)
 };
 
@@ -47,6 +49,7 @@ const fakeTitleListener = (event) => {
         document.title = event.target.innerText + " | i.k8r";
         actualTitle.value = fakeTitle.innerText;
     });
+    hasChangedEver = true;
     scheduleSave();
 
 };
@@ -81,7 +84,7 @@ save.addEventListener("click", (e) => {
 
 window.addEventListener("beforeunload", (e) => {
     const state = currentState();
-    if (lastSaved !== null && lastSaved !== state) {
+    if (hasChangedEver && lastSaved !== state) {
         const message = "Your changes have not been saved. Are you sure you want to leave?";
         e.preventDefault();
         e.returnValue = message;