diff --git a/aleksis/apps/alsijil/model_extensions.py b/aleksis/apps/alsijil/model_extensions.py
index 7ab840196988b80bffa63c9c4d3a5aa20aedffef..4501a8cc2cbe95cb302c88603bcdbca5b80cb74c 100644
--- a/aleksis/apps/alsijil/model_extensions.py
+++ b/aleksis/apps/alsijil/model_extensions.py
@@ -276,11 +276,14 @@ def generate_person_list_with_class_register_statistics(
     self: Group, persons: Optional[Iterable] = None
 ) -> QuerySet:
     """Get with class register statistics annotated list of all members."""
-    persons = persons or self.members.all()
+    if persons is None:
+        persons = self.members.all()
+
     persons = persons.filter(
         personal_notes__groups_of_person=self,
         personal_notes__lesson_period__lesson__validity__school_term=self.school_term,
-    ).annotate(
+    ).distinct()
+    persons = persons.annotate(
         absences_count=Count(
             "personal_notes__absent",
             filter=Q(