diff --git a/home/migrations/0006_interludesslot_duration.py b/home/migrations/0006_interludesslot_duration.py
new file mode 100644
index 0000000000000000000000000000000000000000..7f2383b430922983e9c86412f8b138cc69e6ea33
--- /dev/null
+++ b/home/migrations/0006_interludesslot_duration.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.0.8 on 2021-04-30 11:56
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('home', '0005_auto_20210425_1539'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='interludesslot',
+            name='duration',
+            field=models.DurationField(blank=True, help_text="Format 00:00:00. Laisser vide pour prendre la durée de l'activité correspondante", null=True, verbose_name='durée'),
+        ),
+    ]
diff --git a/home/models.py b/home/models.py
index 632fef51d79b0b6d6378db89facc6ff26eab4bc9..c66746f66bb36863905bc5fc2e2f88fd5006eda9 100644
--- a/home/models.py
+++ b/home/models.py
@@ -143,6 +143,10 @@ class InterludesSlot(models.Model):
 			TITLE_SPECIFIER),
 	)
 	start = models.DateTimeField("début")
+	duration = models.DurationField(
+		"durée", blank=True, null=True,
+		help_text="Format 00:00:00. Laisser vide pour prendre la durée de l'activité correspondante"
+	)
 	room = models.CharField("salle", max_length=100, null=True, blank=True)
 	on_planning = models.BooleanField(
 		"afficher sur le planning", default=False,
@@ -162,6 +166,8 @@ class InterludesSlot(models.Model):
 	@property
 	def end(self):
 		"""Heure de fin du créneau"""
+		if self.duration:
+			return self.start + self.duration
 		return self.start + self.activity.duration
 
 	def conflicts(self, other: "InterludesSlot") -> bool:
@@ -192,7 +198,7 @@ class InterludesSlot(models.Model):
 		if settings.date_start:
 			time = date.timetz()
 			offset = datetime.timedelta(0)
-			if time.hour <= 4:
+			if time.hour < 4:
 				offset = datetime.timedelta(days=1)
 			return timezone.datetime.combine(
 				settings.date_start + offset,
@@ -216,10 +222,7 @@ class InterludesSlot(models.Model):
 
 	@property
 	def planning_end(self) -> int:
-		end = self.fake_date(self.end)
-		if end and end <= self.planning_start:
-			end += datetime.timedelta(days = 1)
-		return end
+		return self.fake_date(self.end)
 
 	def __str__(self) -> str:
 		return self.title.replace(self.TITLE_SPECIFIER, self.activity.title)