diff --git a/src/data/firebase.ts b/src/data/firebase.ts
index e97044ad..1451db08 100644
--- a/src/data/firebase.ts
+++ b/src/data/firebase.ts
@@ -2,6 +2,7 @@ import { createIV, getImportedKey } from "./index";
 import { ExcalidrawElement } from "../element/types";
 import { getSceneVersion } from "../element";
 import Portal from "../components/Portal";
+import { restoreElements } from "./restore";
 
 let firebasePromise: Promise<typeof import("firebase/app")> | null = null;
 
@@ -155,6 +156,5 @@ export async function loadFromFirebase(
   const storedScene = doc.data() as FirebaseStoredScene;
   const ciphertext = storedScene.ciphertext.toUint8Array();
   const iv = storedScene.iv.toUint8Array();
-  const plaintext = await decryptElements(roomKey, iv, ciphertext);
-  return plaintext;
+  return restoreElements(await decryptElements(roomKey, iv, ciphertext));
 }
diff --git a/src/data/restore.ts b/src/data/restore.ts
index 9d352746..a6913193 100644
--- a/src/data/restore.ts
+++ b/src/data/restore.ts
@@ -35,7 +35,7 @@ const restoreElementWithProperties = <T extends ExcalidrawElement>(
     //  newly added elements
     version: element.version || 1,
     versionNonce: element.versionNonce ?? 0,
-    isDeleted: false,
+    isDeleted: element.isDeleted ?? false,
     id: element.id || randomId(),
     fillStyle: element.fillStyle || "hachure",
     strokeWidth: element.strokeWidth || 1,