diff --git a/Applications/Utils/ModelPreparation/PartitionMesh/NodeWiseMeshPartitioner.cpp b/Applications/Utils/ModelPreparation/PartitionMesh/NodeWiseMeshPartitioner.cpp
index 4af30335471328ae435301dc4b530b4b97244db7..842c44bcdd69d450c3f4f6ea529247ae43e7a8c3 100644
--- a/Applications/Utils/ModelPreparation/PartitionMesh/NodeWiseMeshPartitioner.cpp
+++ b/Applications/Utils/ModelPreparation/PartitionMesh/NodeWiseMeshPartitioner.cpp
@@ -470,16 +470,19 @@ void addVtkGhostTypeProperty(MeshLib::Properties& partitioned_properties,
     }
 
     vtk_ghost_type->resize(total_number_of_cells);
-    for(auto const& p : partitions)
+    std::size_t offset = 0;
+    for(auto const& partition : partitions)
     {
-        for (std::size_t i = 0; i < p.duplicate_ghost_cell.size(); ++i)
+        offset += partition.regular_elements.size();
+        for (std::size_t i = 0; i < partition.ghost_elements.size(); ++i)
         {
-            if (p.duplicate_ghost_cell[i])
+            if (partition.duplicate_ghost_cell[i])
             {
-                (*vtk_ghost_type)[p.ghost_elements[i]->getID()] |=
+                (*vtk_ghost_type)[offset + i] |=
                     vtkDataSetAttributes::DUPLICATECELL;
             }
         }
+        offset += partition.ghost_elements.size();
     }
 
 }