diff --git a/python/dune/perftool/blockstructured/geometry.py b/python/dune/perftool/blockstructured/geometry.py
index 5851214554f7744f43051a9738074df683919ca8..951ada695f3c8d29d78cbf8992d2fe7172470083 100644
--- a/python/dune/perftool/blockstructured/geometry.py
+++ b/python/dune/perftool/blockstructured/geometry.py
@@ -1,10 +1,10 @@
-from dune.perftool.generation import (backend,
+from dune.perftool.generation import (get_backend,
                                       temporary_variable,
                                       instruction)
 from dune.perftool.tools import get_pymbolic_basename
-from dune.perftool.options import get_option
+from dune.perftool.options import (get_option,
+                                   option_switch)
 from dune.perftool.pdelab.geometry import (name_jacobian_determinant,
-                                           name_jacobian_inverse_transposed,
                                            local_dimension,
                                            apply_to_global_transformation,
                                            name_facet_jacobian_determinant)
@@ -20,8 +20,9 @@ def pymbolic_jacobian_determinant():
 
 # scale Jacobian according to the order of the blockstructure
 def pymbolic_jacobian_inverse_transposed(i, j, restriction):
+    name_jit = get_backend(interface="name_jit", selector=option_switch("constant_transformation_matrix"))(restriction)
     return prim.Product((get_option("number_of_blocks"),
-                         prim.Subscript(prim.Variable(name_jacobian_inverse_transposed(restriction)), (j, i))))
+                         prim.Subscript(prim.Variable(name_jit), (j, i))))
 
 
 # scale determinant according to the order of the blockstructure