diff --git a/src/finn/transformation/fpgadataflow/create_dataflow_partition.py b/src/finn/transformation/fpgadataflow/create_dataflow_partition.py
index 9e4637976e0ed0a1badfea766120d580cf86488d..9b2577bc2b863e1075fc3252412ff1001b955cda 100644
--- a/src/finn/transformation/fpgadataflow/create_dataflow_partition.py
+++ b/src/finn/transformation/fpgadataflow/create_dataflow_partition.py
@@ -31,7 +31,7 @@ from finn.custom_op.registry import getCustomOp
 from finn.transformation.base import Transformation
 from finn.transformation.create_generic_partitions import PartitionFromLambda
 from finn.transformation.fpgadataflow.externalize_params import ExternalizeParams
-from finn.util.basic import get_by_name
+from finn.util.basic import get_by_name, make_build_dir
 
 
 class CreateDataflowPartition(Transformation):
@@ -41,9 +41,12 @@ class CreateDataflowPartition(Transformation):
     that indicates the filename for the second graph that only contains
     dataflow nodes. No action is taken if there are no dataflow nodes."""
 
-    def __init__(self, partition_model_dir="dataflow_partition"):
+    def __init__(self, partition_model_dir=None):
         super().__init__()
-        self.partition_model_dir = partition_model_dir
+        if partition_model_dir is None:
+            self.partition_model_dir = make_build_dir("dataflow_partition_")
+        else:
+            self.partition_model_dir = partition_model_dir
 
     def apply(self, model):
         def filter_fc_extw(x):
diff --git a/src/finn/transformation/fpgadataflow/make_zynq_proj.py b/src/finn/transformation/fpgadataflow/make_zynq_proj.py
index 0fce73f8cdf6863a65738a181b8077c687059e4c..84d587b6cecea63cb3be41a4a73bcc24aeb822f3 100644
--- a/src/finn/transformation/fpgadataflow/make_zynq_proj.py
+++ b/src/finn/transformation/fpgadataflow/make_zynq_proj.py
@@ -308,7 +308,7 @@ class ZynqBuild(Transformation):
         platform,
         period_ns,
         enable_debug=False,
-        partition_model_dir="dataflow_partition",
+        partition_model_dir=None,
     ):
         super().__init__()
         self.fpga_part = pynq_part_map[platform]
diff --git a/src/finn/transformation/fpgadataflow/vitis_build.py b/src/finn/transformation/fpgadataflow/vitis_build.py
index 3a29082d6c4d5ab2d999da35bd5f7c7a5b841061..a2865321418343efbfdae12c111ba4334ecfee28 100644
--- a/src/finn/transformation/fpgadataflow/vitis_build.py
+++ b/src/finn/transformation/fpgadataflow/vitis_build.py
@@ -378,7 +378,7 @@ class VitisBuild(Transformation):
         enable_debug=False,
         floorplan_file=None,
         enable_link=True,
-        partition_model_dir="dataflow_partition",
+        partition_model_dir=None,
     ):
         super().__init__()
         self.fpga_part = fpga_part