diff --git a/arkindex_worker/worker/__init__.py b/arkindex_worker/worker/__init__.py
index 77412c4719054bb3f8d5b2f2ace1d088a7ff6b47..d83b92a1cd0dd2bc3ab7b02abd7b647791c8c235 100644
--- a/arkindex_worker/worker/__init__.py
+++ b/arkindex_worker/worker/__init__.py
@@ -151,11 +151,8 @@ class ElementsWorker(
                 self.update_activity(element.id, ActivityState.Processed)
             except Exception as e:
                 failed += 1
-                element_id = (
-                    element.id
-                    if isinstance(element, (Element, CachedElement))
-                    else item
-                )
+                # Handle the case where we failed retrieving the element
+                element_id = element.id if element else item
 
                 if isinstance(e, ErrorResponse):
                     message = f"An API error occurred while processing element {element_id}: {e.title} - {e.content}"
@@ -166,7 +163,8 @@ class ElementsWorker(
                     message,
                     exc_info=e if self.args.verbose else None,
                 )
-                self.update_activity(element_id, ActivityState.Error)
+                if element:
+                    self.update_activity(element.id, ActivityState.Error)
                 self.report.error(element_id, e)
 
         # Save report as local artifact