When you have a managed package, if a customer were to uninstall a package, is the removal of metadata components from that managed package automatically removed?

Currently, we are deploying unmanaged packages to our customers, but as most here probably know, when uninstalling that, a user will have to go in and remove each metadata component manually.

I am hoping that a managed package would solve for this without the need to create a feature where I need to programmatically delete metadata components out from the API.

1 Answer 1


Yes, that is a primary purpose of First- and Second-Generation Managed Packages; they will uninstall all components that were installed from the package, or fail to uninstall with an error if there are any dependencies to be resolved. They also optionally back up all data in all fields and objects that were in the package if you need to back up that data. However, you may also want to look at Unlocked Packages. These give the ability to install over unmanaged package components and optional delete when uninstalling such packages.

  • Awesome thats what I thought. However, there may still be a use case in which you would want to possibly automate the deletion of some dependencies if they cant be done with the managed package it seems. (Thinking out loud) As always thank you for your response!
    – andrew
    Commented Nov 7, 2022 at 23:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .