I have two shapefiles from the same area. One is outdated and the other is updated.

Can I automatically or effectively replace the old ones geometry with new one in QGIS?

Changes are not big but definitely not just slivers.

Black borders represent old geometry and it should be updated to the red one.

Black borders represent old geometry and it should be updated to the red one.

  • 1
    Are you asking how to replace the geometry, or how to replace attributes?
    – Erik
    Feb 25, 2022 at 12:57
  • If you're keeping the geometry, it probably easier to replace everything else.
    – Vince
    Feb 25, 2022 at 13:30

1 Answer 1


a) there is a dedicated plugin, b) the regular join attributes by location should do the job, too:

  • delete attributes from the layer with correct geometries (Input layer)
  • pull correct attributes from the layer with flawed geometries (Join layer) You might need to experiment which geometric criterion (overlaps/contains/...) yields best results.
  • 2
    Nice! And maybe even create centroids of the original layer, then spatial join the centroid attributes to the new geometries
    – BERA
    Feb 25, 2022 at 12:59
  • 1
    To avoid the possible problem of polygon centroids (as points or as the polygon in a join) falling outside some polygon shapes, I would recommend using the SAGA Point on Surface tool to create the points and then spatially join to those. Use the create point for each part option.
    – John
    Feb 25, 2022 at 14:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.