diff --git a/src/xfel_calibrate/calibrate.py b/src/xfel_calibrate/calibrate.py
index bd0788a970276d9033bd41f939e62c522eace982..bc43ac42465558005380f4f6b1d3febd78045791 100755
--- a/src/xfel_calibrate/calibrate.py
+++ b/src/xfel_calibrate/calibrate.py
@@ -613,7 +613,8 @@ def run(argv=None):
     out_path.mkdir(parents=True, exist_ok=True)
 
     # Use given report name, or automatic unique name if not specified
-    unique_name = f"{args['karabo_id']}-{nb_details.caltype}-{request_time:%y%m%d_%H%M%S.%f}"
+    det_name = args.get('karabo_id', nb_details.detector)
+    unique_name = f"{det_name}-{nb_details.caltype}-{request_time:%y%m%d_%H%M%S.%f}"
     if args['skip_report']:
         report_to = ''
     elif args["report_to"] is None: