diff --git a/python_scripts/add_trees_to_open_street_map/import_existing_trees.py b/python_scripts/add_trees_to_open_street_map/import_existing_trees.py
index c45078378536f4ad2846676f124439dd82d5df94..4c5d45e4531804d639f2b8318753e55710fbbb19 100644
--- a/python_scripts/add_trees_to_open_street_map/import_existing_trees.py
+++ b/python_scripts/add_trees_to_open_street_map/import_existing_trees.py
@@ -5,18 +5,20 @@ from tree import Tree, Forest
 def get_existing_forest(shp_input):
     print(f"Importing {shp_input}")
     df = gpd.read_file(shp_input)
-    trees = []
+    forest = Forest()
     for tree_row in df.itertuples():
         point = tree_row.geometry
-        trees.append(Tree(point.x, point.y,
+        added = forest.add_tree_if_possible(0.1, point.x, point.y,
                           description=tree_row.Bezeichnun,
                           diameter=tree_row.Kronenbrei,
                           type=tree_row.Baumart,
                           trunk_diameter=tree_row.Stammumfan,
                           height=tree_row.Baumhöhe,
                           source=Path(shp_input).name
-                          ))
-    return Forest(trees)
+                          )
+        if not added:
+            print(f"Warning, tree seems to be too close to others! Is it a duplicate?\n\t{tree_row}")
+    return forest
 
 if __name__ == "__main__":
     print(repr(get_existing_forest('existing_trees/Trees_ideal_2_20240227.shp')))
diff --git a/python_scripts/add_trees_to_open_street_map/tree.py b/python_scripts/add_trees_to_open_street_map/tree.py
index 8bc316277862643ba96e8d20a744aeff40dc5832..3a801794fb59c2f7d7bf259452c057a3f59e8150 100644
--- a/python_scripts/add_trees_to_open_street_map/tree.py
+++ b/python_scripts/add_trees_to_open_street_map/tree.py
@@ -39,11 +39,13 @@ class Forest(UserList):
 
         self.data = existing_trees
 
-    def add_tree_if_possible(self, min_distance_2, x, y, **kparams):
+    def add_tree_if_possible(self, min_distance_2, x, y, **kparams) -> bool:
         _nearest_tree, distance_2 = self.kd_tree.search_nn((x, y))
         if distance_2 > min_distance_2:
             self.kd_tree.add((x, y))
             self.append(Tree(x, y, **kparams))
+            return True
+        return False
 
     @property
     def xs_ys_cs(self):