diff --git a/aleksis/apps/chronos/frontend/components/Substitutions.vue b/aleksis/apps/chronos/frontend/components/Substitutions.vue
index 2f9de37101dd0591b1cdc1473d95cdffe341b60d..ee54fc565cb921566a2b8925f3b4117f93244cb1 100644
--- a/aleksis/apps/chronos/frontend/components/Substitutions.vue
+++ b/aleksis/apps/chronos/frontend/components/Substitutions.vue
@@ -17,8 +17,22 @@ import CRUDList from "aleksis.core/components/generic/CRUDList.vue";
       <!-- TODO: 18n -->
       <v-container>
       <v-row>
-        <v-col> Betroffene Lehrkräfte </v-col>
-        <v-col> {{ affectedTeachers.map(t => t.shortName || t.fullName).join(', ') }} </v-col>
+        <v-col cols="4"> Betroffene Lehrkräfte </v-col>
+        <v-col cols="8">
+          <v-chip
+            v-for="(teacher, i) in affectedTeachers"
+            class="ma-1"
+            :to="{
+              name: 'chronos.timetableWithId',
+              params: {
+                type: 'person',
+                id: teacher.id,
+              },
+            }"
+          >
+            {{ teacher.shortName || teacher.fullName }}
+          </v-chip>
+        </v-col>
         <v-spacer/>
       </v-row>
       <v-row>
diff --git a/aleksis/apps/chronos/frontend/components/substitutions.graphql b/aleksis/apps/chronos/frontend/components/substitutions.graphql
index 0e61901c0f91ce8b630d70df00f57085e692e8f9..8759c00c9dfb78d4cde6510fed7a36cf8785c44e 100644
--- a/aleksis/apps/chronos/frontend/components/substitutions.graphql
+++ b/aleksis/apps/chronos/frontend/components/substitutions.graphql
@@ -1,6 +1,7 @@
 query substitutionsForDate ($date: Date!) {
   items: substitutionsForDate(date: $date) {
     affectedTeachers {
+      id
       shortName
       fullName
     }