diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index d8ea9a3d8e03fa11da9e4e58fe04754b90e8b193..8c2ec39d60109ccf742f1bc30863fa108fd39588 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -21,6 +21,7 @@ Added
 ~~~~~
 
 * Add support for automatically generating PDF files of substitutions plans on data changes.
+* Display warning if no timetable exists in one category.
 
 Changed
 ~~~~~~~
diff --git a/aleksis/apps/chronos/templates/chronos/all.html b/aleksis/apps/chronos/templates/chronos/all.html
index 992689bdf99a8564f922b45783b8437f1752c0c5..4ca6356b18d672390f9bdad8157f3b3c3c02176f 100644
--- a/aleksis/apps/chronos/templates/chronos/all.html
+++ b/aleksis/apps/chronos/templates/chronos/all.html
@@ -21,6 +21,9 @@
            href="{% url 'timetable' 'teacher' teacher.pk %}">
           {{ teacher.short_name }}
         </a>
+      {% empty %}
+        {% trans 'No teachers timetables available.' as message %}
+        {% include 'components/msgbox.html' with status='missing_teachers' icon='warning' msg=message %}
       {% endfor %}
     </div>
 
@@ -32,6 +35,9 @@
            href="{% url 'timetable' 'group' class.pk %}">
           {{ class.short_name }}
         </a>
+      {% empty %}
+        {% trans 'No group timetables available.' as message %}
+        {% include 'components/msgbox.html' with status='missing_groups' icon='warning' msg=message %}
       {% endfor %}
     </div>
 
@@ -43,6 +49,9 @@
            href="{% url 'timetable' 'room' room.pk %}">
           {{ room.short_name }}
         </a>
+      {% empty %}
+        {% trans 'No room timetables available.' as message %}
+        {% include 'components/msgbox.html' with status='missing_rooms' icon='warning' msg=message %}
       {% endfor %}
     </div>
   </div>