diff --git a/python/dune/perftool/options.py b/python/dune/perftool/options.py
index 1ecc85c5903b69f83953502e8afa485f5a962702..8e195b164e98456655a3147faedbfedbc3e20bb3 100644
--- a/python/dune/perftool/options.py
+++ b/python/dune/perftool/options.py
@@ -85,6 +85,7 @@ class PerftoolFormOptionsArray(ImmutableRecord):
     vectorization_padding = PerftoolOption(default=None, helpstr="an explicit value for the allowed padding in vectorization")
     vectorization_allow_quadrature_changes = PerftoolOption(default=False, helpstr="whether the vectorization strategy is allowed to alter quadrature point numbers")
     vectorization_list_index = PerftoolOption(default=None, helpstr="Which vectorization to pick from a list (only valid with vectorization_strategy=fromlist).")
+    vectorization_jacobians = PerftoolOption(default=False, helpstr="Whether to attempt to vectorize jacobians (takes time, often not needed)")
     simplify = PerftoolOption(default=False, helpstr="Whether to simplify expressions using sympy")
     generate_jacobians = PerftoolOption(default=True, helpstr="Whether jacobian_* methods should be generated. This is set to false automatically, when numerical_jacobian is set to true.")
     generate_residuals = PerftoolOption(default=True, helpstr="Whether alpha_* methods should be generated.")
diff --git a/python/dune/perftool/sumfact/vectorization.py b/python/dune/perftool/sumfact/vectorization.py
index 6f25e3c6ef1ca793c0cb2883fbe4cee981e51e3e..788229347bd1f2d6a1caaadf863a8d353213be80 100644
--- a/python/dune/perftool/sumfact/vectorization.py
+++ b/python/dune/perftool/sumfact/vectorization.py
@@ -151,7 +151,7 @@ def decide_vectorization_strategy():
     active_sumfacts = [i for i in all_sumfacts if i.stage == 3 or i in basis_sumfacts]
 
     # If no vectorization is needed, abort now
-    if get_form_option("vectorization_strategy") == "none":
+    if get_form_option("vectorization_strategy") == "none" or (get_global_context_value("form_type") == "jacobian" and not get_form_option("vectorization_jacobians")):
         for sf in all_sumfacts:
             _cache_vectorization_info(sf, sf.copy(buffer=get_counted_variable("buffer")))
         return