diff --git a/contracts/admin.py b/contracts/admin.py
index 25550d30965ca85d038b173c20351ca4f1a17004..ba5f4fd6213308dd772f3e510a5fb7634dd8cfef 100644
--- a/contracts/admin.py
+++ b/contracts/admin.py
@@ -119,6 +119,7 @@ class ContractFileAdmin(
     ParentContractApprovedPermissionsMixin,
     ParentContractOwnPermissionsMixin,
 ):
+    exclude = ("is_auto_imported",)
     form = ContractFileAdminForm
 
 
@@ -186,6 +187,7 @@ class ContracteeSignatureRepresentativeInline(
 class ContracteeSignatureInline(ParentContractInlineMixin, NestedStackedInline):
     model = ContracteeSignature
     autocomplete_fields = ("contractee",)
+    exclude = ("is_auto_imported",)
     inlines = (ContracteeSignatureRepresentativeInline,)
     extra = 0
 
@@ -216,12 +218,14 @@ class SigneeSignatureRepresentativeInline(
 class SigneeSignatureInline(ParentContractInlineMixin, NestedStackedInline):
     model = SigneeSignature
     autocomplete_fields = ("signee",)
+    exclude = ("is_auto_imported",)
     inlines = (SigneeSignatureRepresentativeInline,)
     extra = 0
 
 
 class ContractFileInline(ParentContractInlineMixin, NestedTabularInline):
     model = ContractFile
+    exclude = ("is_auto_imported",)
     form = ContractFileAdminForm
     extra = 0
 
@@ -669,16 +673,19 @@ class ContractAdmin(
 
 class ContractTypeAdmin(MarkdownxGuardedModelAdmin):
     model = ContractType
+    exclude = ("is_auto_imported",)
     search_fields = ("name",)
 
 
 class ContractIssueAdmin(MarkdownxGuardedModelAdmin):
     model = ContractIssue
+    exclude = ("is_auto_imported",)
     search_fields = ("name",)
 
 
 class ContractFilingAreaAdmin(MarkdownxGuardedModelAdmin):
     model = ContractFilingArea
+    exclude = ("is_auto_imported",)
     search_fields = (
         "name",
         "person_responsible",
diff --git a/contracts/management/commands/import_old_contracts.py b/contracts/management/commands/import_old_contracts.py
index e714d34b796d7cbd44726890568d7dc72b189ade..67215c8321e968dd81099cab4d1bd5d2ac0db2b8 100644
--- a/contracts/management/commands/import_old_contracts.py
+++ b/contracts/management/commands/import_old_contracts.py
@@ -86,7 +86,7 @@ class Command(BaseCommand):
 
                 issue.delete()
         else:
-            issue = ContractIssue(name=name)
+            issue = ContractIssue(name=name, is_auto_imported=True)
             issue.save()
 
         return issue
@@ -172,18 +172,18 @@ class Command(BaseCommand):
 
         patterns = (
             (r"\s\s+", " "),
-            (r"^Kraské sdružení Praha$", "Krajské sdružení Praha"),
+            (r"^Kraské sdružení Praha$", "KS Praha"),
             (r"^republikové předsednictvo$", "Republikové předsednictvo"),
-            (r"^KS ", "Krajské sdružení "),
-            (r"^(MS |mĂ­stnĂ­ sdruĹľenĂ­ )", "MĂ­stnĂ­ sdruĹľenĂ­ "),
-            (r"^(Ústecký kraj|Ustecký kraj)$", "Krajské sdružení Ústecký kraj"),
+            (r"^KS ", "KS "),
+            (r"^(MS |mĂ­stnĂ­ sdruĹľenĂ­ )", "MS "),
+            (r"^(ĂšsteckĂ˝ kraj|UsteckĂ˝ kraj)$", "KS ĂšsteckĂ˝ kraj"),
             (
                 r"^MoravskoslezskĂ˝ kraj$",
-                "Krajské sdružení Moravskoslezský kraj",
+                "KS MoravskoslezskĂ˝ kraj",
             ),
             (
                 r"^KarlovarskĂ˝ kraj$",
-                "Krajské sdružení Karlovarský kraj",
+                "KS KarlovarskĂ˝ kraj",
             ),
             (
                 r"Jihočeská kraj",
@@ -208,21 +208,23 @@ class Command(BaseCommand):
             (r"olomouckĂ˝", "OlomouckĂ˝"),
             (r"^mĂ­stnĂ­ ", "MĂ­stnĂ­ "),
             (r"^celostátní ", "Celostátní "),
-            (r"odbor", "Odbor"),
+            (r"(o|O)dbor", "odbor"),
             (r"PKS", "Předsednictvo krajského sdružení"),
             (r"( KS | Krajského sdružení )", " krajského sdružení "),
             (
                 r"^(Předsednictvo krajského sdružení |Předsednictvo |Místní předsednictvo )",
                 "",
             ),
-            (r"^Krajské předsednictvo ", "Krajské sdružení "),
+            (r"^Krajské předsednictvo", "KS"),
             (r"Ă©ho kraje$", "Ă˝ kraj"),
-            (r"^Olomouc$", "MĂ­stnĂ­ sdruĹľenĂ­ Olomouc"),
-            (r"^Olomoucký kraj$", "Krajské sdružení Olomoucký kraj"),
-            (r"^Pardubický kraj$", "Krajské sdružení Pardubický kraj"),
-            (r"^Jihočeský kraj$", "Krajské sdružení Jihočeský kraj"),
-            (r"^Královehradecký kraj$", "Krajské sdružení Královehradecký kraj"),
-            (r"^Pardubický kraj$", "Krajské sdružení Pardubický kraj"),
+            (r"^Olomouc$", "MS Olomouc"),
+            (r"^OlomouckĂ˝ kraj$", "KS OlomouckĂ˝ kraj"),
+            (r"^PardubickĂ˝ kraj$", "KS PardubickĂ˝ kraj"),
+            (r"^JihoÄŤeskĂ˝ kraj$", "KS JihoÄŤeskĂ˝ kraj"),
+            (r"^Královehradecký kraj$", "KS Královehradecký kraj"),
+            (r"^PardubickĂ˝ kraj$", "KS PardubickĂ˝ kraj"),
+            (r"^Krajské sdružení", "KS"),
+            (r"^MĂ­stnĂ­ sdruĹľenĂ­", "MS"),
         )
 
         for pattern in patterns:
@@ -376,7 +378,7 @@ class Command(BaseCommand):
     def assign_signing_party_metadata(
         self, slug: str, contract: Contract, signing_party: dict
     ) -> tuple[
-        Contract | Signee,
+        Contractee | Signee,
         list[ContractIssue],
         list[ContracteeSignatureRepresentative | SigneeSignatureRepresentative],
         bool,
@@ -631,12 +633,14 @@ class Command(BaseCommand):
         ):
             model = Contractee
             representative_model = ContracteeSignatureRepresentative
-            instance = model()
+            instance = model(is_auto_imported=True)
             is_contractee = True
         else:
             model = Signee
             representative_model = SigneeSignatureRepresentative
-            instance = model(name=name, address_country="Česká republika")
+            instance = model(
+                name=name, is_auto_imported=True, address_country="Česká republika"
+            )
 
         if model is Signee:
             if (
@@ -1083,7 +1087,9 @@ class Command(BaseCommand):
                         try:
                             type_instance = ContractType.objects.get(name=value)
                         except ContractType.DoesNotExist:
-                            type_instance = ContractType(name=value)
+                            type_instance = ContractType(
+                                is_auto_imported=True, name=value
+                            )
 
                         types.append(type_instance)
 
@@ -1232,6 +1238,7 @@ class Command(BaseCommand):
                     except ContractFilingArea.DoesNotExist:
                         if isinstance(value, str) and not value.startswith("Neznám"):
                             filing_area = ContractFilingArea(
+                                is_auto_imported=True,
                                 name=value,
                                 person_responsible="Doplň osobu!",
                             )
@@ -1385,6 +1392,7 @@ class Command(BaseCommand):
                             with open(file_path, "rb") as open_file:
                                 self.normalization_count += 1
                                 file = ContractFile(
+                                    is_auto_imported=True,
                                     contract=contract,
                                     name=self.normalize_filename(file_key),
                                     is_public=True,
@@ -1428,6 +1436,7 @@ class Command(BaseCommand):
                 contractee.save()
 
                 signature = ContracteeSignature(
+                    is_auto_imported=True,
                     contract=contract,
                     contractee=contractee,
                     date=contract.valid_start_date,
@@ -1445,6 +1454,7 @@ class Command(BaseCommand):
                 signee.save()
 
                 signature = SigneeSignature(
+                    is_auto_imported=True,
                     contract=contract,
                     signee=signee,
                     date=contract.valid_start_date,
@@ -1471,7 +1481,7 @@ class Command(BaseCommand):
     def import_contract_from_files(
         self, contract_root: str, files: list[str], valid_start_date: datetime
     ) -> None:
-        contract = Contract(notes="")
+        contract = Contract(is_auto_imported=True, notes="")
 
         for file_ in files:
             with open(
@@ -1635,7 +1645,7 @@ class Command(BaseCommand):
                 Signee,
                 SigneeSignature,
             ):
-                model.objects.filter().delete()
+                model.objects.filter(is_auto_imported=True).delete()
 
             if self.verbosity >= 1:
                 self.stdout.write(self.style.SUCCESS("Deleted all previous records."))
diff --git a/contracts/migrations/0072_alter_signeehistoricalname_options_and_more.py b/contracts/migrations/0072_alter_signeehistoricalname_options_and_more.py
new file mode 100644
index 0000000000000000000000000000000000000000..487eeb51170838d72d3d4b3697bd1ce065433b53
--- /dev/null
+++ b/contracts/migrations/0072_alter_signeehistoricalname_options_and_more.py
@@ -0,0 +1,82 @@
+# Generated by Django 5.1.1 on 2024-09-26 12:49
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+    dependencies = [
+        ("contracts", "0071_signeehistoricalname"),
+    ]
+
+    operations = [
+        migrations.AlterModelOptions(
+            name="signeehistoricalname",
+            options={
+                "verbose_name": "Historické jméno smluvní strany",
+                "verbose_name_plural": "Historická jména smluvní strany",
+            },
+        ),
+        migrations.AddField(
+            model_name="contract",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="contractee",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="contracteesignature",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="contractfile",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="contractfilingarea",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="contractissue",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="contracttype",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="signee",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+        migrations.AddField(
+            model_name="signeesignature",
+            name="is_auto_imported",
+            field=models.BooleanField(
+                default=False, verbose_name="Je automaticky importovaná"
+            ),
+        ),
+    ]
diff --git a/contracts/models.py b/contracts/models.py
index 539390151659d5580fded55299315ae8be27b9c3..5f9164548cb8d3775f0987833d98434d8a3054f0 100644
--- a/contracts/models.py
+++ b/contracts/models.py
@@ -121,6 +121,11 @@ class Signee(
     InlineNameMixin,
     models.Model,
 ):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     name = models.CharField(
         max_length=256,
         verbose_name="Jméno",
@@ -338,6 +343,11 @@ class Contractee(
     InlineNameMixin,
     models.Model,
 ):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     name = models.CharField(
         max_length=256,
         default=get_default_contractee_name,
@@ -414,6 +424,11 @@ class Contractee(
 
 
 class ContractType(ContractCountMixin, NameStrMixin, models.Model):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     name = models.CharField(
         max_length=256,
         verbose_name="Jméno",
@@ -433,6 +448,11 @@ class ContractType(ContractCountMixin, NameStrMixin, models.Model):
 
 
 class ContractIssue(ContractCountMixin, NameStrMixin, models.Model):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     name = models.CharField(
         max_length=256,
         verbose_name="Jméno",
@@ -452,6 +472,11 @@ class ContractIssue(ContractCountMixin, NameStrMixin, models.Model):
 
 
 class ContractFilingArea(ContractCountMixin, NameStrMixin, models.Model):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     name = models.CharField(
         max_length=256,
         verbose_name="Jméno",
@@ -486,6 +511,11 @@ get_created_on_timestamp = get_current_utc_timestamp
 class Contract(NameStrMixin, models.Model):
     # BEGIN Automatically set fields
 
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     created_by = models.ForeignKey(
         settings.AUTH_USER_MODEL,
         on_delete=models.SET_NULL,
@@ -952,6 +982,11 @@ class ContractFileField(models.FileField):
 
 
 class ContractFile(NameStrMixin, models.Model):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     name = models.CharField(
         max_length=256,
         verbose_name="Jméno",
@@ -988,6 +1023,11 @@ class ContractFile(NameStrMixin, models.Model):
 
 
 class ContracteeSignature(models.Model):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     contractee = models.ForeignKey(
         Contractee,
         on_delete=models.CASCADE,
@@ -1028,6 +1068,11 @@ class ContracteeSignature(models.Model):
 
 
 class SigneeSignature(models.Model):
+    is_auto_imported = models.BooleanField(
+        "Je automaticky importovaná",
+        default=False,
+    )
+
     signee = models.ForeignKey(
         Signee,
         on_delete=models.CASCADE,