diff --git a/pkg/setup/collection.go b/pkg/setup/collection.go
index 679ef2624fcdfe6cc24eaa44a89e384c7040c1eb..989f70b16e4e0bd4751ce1bcdc651b65dbf761c3 100644
--- a/pkg/setup/collection.go
+++ b/pkg/setup/collection.go
@@ -146,10 +146,12 @@ func (s *Setup) InstallCollection(ctx context.Context, c CollectionConfig) (setS
 		}
 	} else {
 		var upd bool
-
-		err = s.checkSchemaMetadata(collection, exist)
-		if err != nil {
-			return false, err
+		if c.metadata != nil {
+			collection.Schema.Metadata = c.metadata
+			err = s.checkSchemaMetadata(collection, exist)
+			if err != nil {
+				return false, err
+			}
 		}
 
 		collection, upd, setSchema = c.UpdateFn(s, exist, c.collection)