diff --git a/python/dune/perftool/sumfact/symbolic.py b/python/dune/perftool/sumfact/symbolic.py
index 6794296ea591bec064a250ba29fea81c3caf201a..c54df7878c367f079b71ba7d3c51c75265470a04 100644
--- a/python/dune/perftool/sumfact/symbolic.py
+++ b/python/dune/perftool/sumfact/symbolic.py
@@ -281,7 +281,7 @@ class SumfactKernel(SumfactKernelBase, ImmutableRecord, prim.Variable):
     @property
     def function_key(self):
         """ Kernels sharing this key may use the same kernel implementation function """
-        return self.matrix_sequence
+        return tuple(str(m) for m in self.matrix_sequence)
 
     @property
     def parallel_key(self):
@@ -544,6 +544,9 @@ class VectorizedSumfactKernel(SumfactKernelBase, ImmutableRecord, prim.Variable)
     # Some cache key definitions
     # Watch out for the documentation to see which key is used unter what circumstances
     #
+    @property
+    def function_key(self):
+        return tuple(str(m) for m in self.matrix_sequence)
 
     @property
     def cache_key(self):