diff --git a/aleksis/apps/lesrooster/frontend/components/validity_range/validityRange.graphql b/aleksis/apps/lesrooster/frontend/components/validity_range/validityRange.graphql
index 7124e1491f40ef9638f84e984f72f287fb04fcb1..dbdabf8395a23b206aeb65ef04a46c096842023d 100644
--- a/aleksis/apps/lesrooster/frontend/components/validity_range/validityRange.graphql
+++ b/aleksis/apps/lesrooster/frontend/components/validity_range/validityRange.graphql
@@ -122,6 +122,7 @@ query timeGrids($orderBy: [String], $filters: JSONString) {
     validityRange {
       id
       name
+      isCurrent
       dateStart
       dateEnd
     }
diff --git a/aleksis/apps/lesrooster/models.py b/aleksis/apps/lesrooster/models.py
index a87c4de45a88fa564ca23f591132ea415bb84e48..56696a640117ac4cb01d091a335299e213197e43 100644
--- a/aleksis/apps/lesrooster/models.py
+++ b/aleksis/apps/lesrooster/models.py
@@ -72,6 +72,10 @@ class ValidityRange(ExtensibleModel):
         """Get the currently active validity range."""
         return cls.get_current()
 
+    @property
+    def is_current(self) -> bool:
+        return self.date_start <= (today := timezone.now().date()) and self.date_end >= today
+
     def clean(self):
         """Ensure that there is only one validity range at each point of time."""
         if self.date_end < self.date_start:
diff --git a/aleksis/apps/lesrooster/schema/validity_range.py b/aleksis/apps/lesrooster/schema/validity_range.py
index a323858535e6fb3bc355bc3f4ca42b6f7a55aaed..0e126cd0858fe158a72aa20aab0417b4a65a7706 100644
--- a/aleksis/apps/lesrooster/schema/validity_range.py
+++ b/aleksis/apps/lesrooster/schema/validity_range.py
@@ -18,6 +18,7 @@ from ..models import ValidityRange
 
 
 class ValidityRangeType(PermissionsTypeMixin, DjangoFilterMixin, DjangoObjectType):
+    is_current = graphene.Boolean()
     class Meta:
         model = ValidityRange
         fields = ("id", "school_term", "name", "date_start", "date_end", "status", "time_grids")