diff --git a/mo/imports.py b/mo/imports.py
index d4be97126dbc60c3341da69a2b539ae3932a8697..51aa689b4e9a77adbbfc85124a688f0e0e552507 100644
--- a/mo/imports.py
+++ b/mo/imports.py
@@ -69,6 +69,7 @@ class Import:
     gatekeeper: mo.rights.Gatekeeper
     new_user_ids: List[int]
     line_number: int = 0
+    row_name: Optional[str] = None
 
     def __init__(self):
         self.errors = []
@@ -84,7 +85,10 @@ class Import:
 
     def error(self, msg: str) -> Any:
         if self.line_number > 0:
-            msg = f"Řádek {self.line_number}: {msg}"
+            if self.row_name:
+                msg = f"Řádek {self.line_number} ({self.row_name}): {msg}"
+            else:
+                msg = f"Řádek {self.line_number}: {msg}"
         self.errors.append(msg)
         logger.info('Import: >> %s', msg)
         return None     # Kdyby bylo otypováno správně jako -> None, při volání by si mypy stěžoval
@@ -376,6 +380,12 @@ class Import:
         except UnicodeDecodeError:
             return False
 
+    def get_row_name(self, row: mo.csv.Row) -> Optional[str]:
+        if hasattr(row, 'email'):
+            return row.email # type: ignore
+                # čtení prvku potomka
+        return None
+
     def generic_import(self, path: str) -> bool:
         charset = self.fmt.get_charset()
         if charset != 'utf-8' and self.check_utf8(path):
@@ -396,12 +406,14 @@ class Import:
 
         self.line_number = 2
         for row in rows:
+            self.row_name = self.get_row_name(row)
             self.cnt_rows += 1
             self.import_row(row)
             if len(self.errors) >= 100:
                 self.errors.append('Import přerušen pro příliš mnoho chyb')
                 break
             self.line_number += 1
+        self.row_name = None
 
         return len(self.errors) == 0