diff --git a/main.py b/main.py
index 6314fd7ad07939bd02bce72cadb5392ef271d831..dfbba023cdd9a66b50a505d2f16d215a397c1da2 100644
--- a/main.py
+++ b/main.py
@@ -4,6 +4,7 @@ from typing import Union
 
 from dataclasses import asdict
 from cloudevents.http.event import CloudEvent
+from typesense.exceptions import ObjectNotFound
 
 from events import UserNameUpdatedEvent, get_event_type, get_event_version, UserDeletedEvent, SpaceCreatedEvent, \
     SpaceUpdatedEvent, SpaceDeletedEvent
@@ -20,7 +21,10 @@ def process_user_name_updated_event(client: TypesenseClient, event: UserNameUpda
 
 def process_user_deleted_event(client: TypesenseClient, event: UserDeletedEvent):
     logger.debug(f'Processing {event}')
-    client.delete(f"profile_{event.user.id}")
+    try:
+        client.delete(f"profile_{event.user.id}")
+    except ObjectNotFound:
+        pass
     logger.info(f'Deleted user {event.user.id} from Typesense')
 
 def process_space_upserting_event(client: TypesenseClient, event: Union[SpaceCreatedEvent, SpaceUpdatedEvent]):
@@ -30,7 +34,10 @@ def process_space_upserting_event(client: TypesenseClient, event: Union[SpaceCre
 
 def process_space_deleted_event(client: TypesenseClient, event: SpaceDeletedEvent):
     logger.debug(f'Processing {event}')
-    client.delete(f"space_{event.space.id}")
+    try:
+        client.delete(f"space_{event.space.id}")
+    except ObjectNotFound:
+        pass
     logger.info(f'Deleted space {event.space.id} in Typesense')
 
 def process_event(client: TypesenseClient, event: CloudEvent):