diff --git a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
index 686ac33b5eccaa4f057b5cc8942110c01fca48a8..f0df1560c101ad90e6fb38c45e5110033fda4feb 100644
--- a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
+++ b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp
@@ -124,6 +124,7 @@ void ObjectNodeInstance::destroy()
     if (deleteHeldInstance()) {
         // Remove from old property
         if (object() && modelNode().isValid() && modelNode().parentProperty().isValid()) {
+            setId(QString());
             NodeAbstractProperty parentProperty = modelNode().parentProperty();
             ModelNode parentNode = parentProperty.parentModelNode();
             if (parentNode.isValid() && nodeInstanceView()->hasInstanceForNode(parentNode)) {