Old catchily titled documents such as How to use custom metadata types to save years of development on app configurations say:

Subscriber-editable records: Put metadata records you want edited by either your code or your customer in a separate unmanaged package. Your customer (subscriber) and your code can edit these records but package upgrades will not touch them (since unmanaged packages can’t be upgraded), protecting the customizations your customer makes.

But today it appears that at least the custom fields you add to a custom metadata type can be set to be "Subscriber editable" meaning that you can default them in your managed package and they can be later edited after installation?

So is a good strategy to package the records and set the custom fields to "Subscriber editable" where you want users of your package to be able to modify values?

1 Answer 1


The answer is yes based on some custom metadata I've just added to a managed package.

You can include records in the package and the "Subscriber editable" fields can be changed once the package is installed. Also new records can be added.

The packaged records can't be deleted, so you do need to add and respect in your logic a "Subscriber editable" Active flag so the packaged records can be excluded to simulate deletion.

You must log in to answer this question.

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