diff --git a/homeassistant/components/backup/manager.py b/homeassistant/components/backup/manager.py
index 9b20c82d7095bb37386801cb245b6e9c99fa520c..9515ab89cd2401a83b4131fb4a59ad9f9e57aeab 100644
--- a/homeassistant/components/backup/manager.py
+++ b/homeassistant/components/backup/manager.py
@@ -829,6 +829,9 @@ class BackupManager:
                 restore_folders=restore_folders,
                 restore_homeassistant=restore_homeassistant,
             )
+            self.async_on_backup_event(
+                RestoreBackupEvent(stage=None, state=RestoreBackupState.COMPLETED)
+            )
         except Exception:
             self.async_on_backup_event(
                 RestoreBackupEvent(stage=None, state=RestoreBackupState.FAILED)
diff --git a/tests/components/hassio/test_backup.py b/tests/components/hassio/test_backup.py
index c39574fd941cfdea5247402d129495869a4bd4eb..3c9440c41ff673ecfa44cec0015e869113618fce 100644
--- a/tests/components/hassio/test_backup.py
+++ b/tests/components/hassio/test_backup.py
@@ -942,7 +942,9 @@ async def test_reader_writer_restore(
 
     await client.send_json_auto_id({"type": "backup/subscribe_events"})
     response = await client.receive_json()
-    assert response["event"] == {"manager_state": "idle"}
+    assert response["event"] == {
+        "manager_state": "idle",
+    }
     response = await client.receive_json()
     assert response["success"]
 
@@ -980,6 +982,13 @@ async def test_reader_writer_restore(
     response = await client.receive_json()
     assert response["success"]
 
+    response = await client.receive_json()
+    assert response["event"] == {
+        "manager_state": "restore_backup",
+        "stage": None,
+        "state": "completed",
+    }
+
     response = await client.receive_json()
     assert response["event"] == {"manager_state": "idle"}