diff --git a/fixtures/program/rrule.json b/fixtures/program/rrule.json
index 7b4f0fdc8fa7224db482b9d139b3de1c73649903..4db94b12636bce53b04b598e97b63b896231231c 100644
--- a/fixtures/program/rrule.json
+++ b/fixtures/program/rrule.json
@@ -6,7 +6,7 @@
       "name": "einmalig",
       "freq": 0,
       "interval": 1,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": 1
     }
   },
@@ -17,7 +17,7 @@
       "name": "täglich",
       "freq": 3,
       "interval": 1,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -28,7 +28,7 @@
       "name": "werktäglich",
       "freq": 3,
       "interval": 1,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -39,7 +39,7 @@
       "name": "wöchentlich",
       "freq": 2,
       "interval": 1,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -50,7 +50,7 @@
       "name": "zweiwöchentlich",
       "freq": 2,
       "interval": 2,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -61,7 +61,7 @@
       "name": "vierwöchentlich",
       "freq": 2,
       "interval": 4,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -72,7 +72,7 @@
       "name": "gerade Kalenderwoche",
       "freq": 2,
       "interval": 1,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -83,7 +83,7 @@
       "name": "ungerade Kalenderwoche",
       "freq": 2,
       "interval": 1,
-      "bysetpos": null,
+      "by_set_pos": null,
       "count": null
     }
   },
@@ -94,7 +94,7 @@
       "name": "Jede 1. Woche im Monat",
       "freq": 1,
       "interval": 1,
-      "bysetpos": 1,
+      "by_set_pos": 1,
       "count": null
     }
   },
@@ -105,7 +105,7 @@
       "name": "Jede 2. Woche im Monat",
       "freq": 1,
       "interval": 1,
-      "bysetpos": 2,
+      "by_set_pos": 2,
       "count": null
     }
   },
@@ -116,7 +116,7 @@
       "name": "Jede 3. Woche im Monat",
       "freq": 1,
       "interval": 1,
-      "bysetpos": 3,
+      "by_set_pos": 3,
       "count": null
     }
   },
@@ -127,7 +127,7 @@
       "name": "Jede 4. Woche im Monat",
       "freq": 1,
       "interval": 1,
-      "bysetpos": 4,
+      "by_set_pos": 4,
       "count": null
     }
   },
@@ -138,7 +138,7 @@
       "name": "Jede 5. Woche im Monat",
       "freq": 1,
       "interval": 1,
-      "bysetpos": 5,
+      "by_set_pos": 5,
       "count": null
     }
   }
diff --git a/program/migrations/0015_rename_bysetpos_rrule_by_set_pos.py b/program/migrations/0015_rename_bysetpos_rrule_by_set_pos.py
new file mode 100644
index 0000000000000000000000000000000000000000..cded49ca5127c7b826960012aa9c811a15eff0ab
--- /dev/null
+++ b/program/migrations/0015_rename_bysetpos_rrule_by_set_pos.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.2.11 on 2022-02-21 19:19
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('program', '0014_auto_20220221_1641'),
+    ]
+
+    operations = [
+        migrations.RenameField(
+            model_name='rrule',
+            old_name='bysetpos',
+            new_name='by_set_pos',
+        ),
+    ]
diff --git a/program/models.py b/program/models.py
index 275d23fc7f11c49454c0cf612d9e5b84923126ae..283902b30e1fdbe16050fed173f20cd2489c5c0f 100644
--- a/program/models.py
+++ b/program/models.py
@@ -184,7 +184,7 @@ class RRule(models.Model):
     name = models.CharField(max_length=32, unique=True)
     freq = models.IntegerField()
     interval = models.IntegerField(default=1)
-    bysetpos = models.IntegerField(blank=True, null=True)
+    by_set_pos = models.IntegerField(blank=True, null=True)
     count = models.IntegerField(blank=True, null=True)
 
     class Meta:
@@ -321,7 +321,7 @@ class Schedule(models.Model):
                                 dtstart=datetime.combine(schedule.dstart, schedule.tstart),
                                 interval=schedule.rrule.interval,
                                 until=schedule.until + relativedelta(days=+1),
-                                bysetpos=schedule.rrule.bysetpos,
+                                bysetpos=schedule.rrule.by_set_pos,
                                 byweekday=byweekday_start,
                                 byweekno=byweekno))
 
@@ -329,7 +329,7 @@ class Schedule(models.Model):
                               dtstart=datetime.combine(dend, schedule.tend),
                               interval=schedule.rrule.interval,
                               until=schedule.until + relativedelta(days=+1),
-                              bysetpos=schedule.rrule.bysetpos,
+                              bysetpos=schedule.rrule.by_set_pos,
                               byweekday=byweekday_end,
                               byweekno=byweekno_end))