Appnigma

What Is a Managed Package in Salesforce?

managed package

Jul 09, 2026

4 min read

What Is a Managed Package in Salesforce?

A managed package in Salesforce is how ISVs ship a commercial app. Upgradeable, source-protected, namespaced, and the only package type eligible for paid AppExchange distribution. Unmanaged packages are the opposite: editable, not upgradeable, fine for templates, not for products.

Pro Tip

TL;DR: A managed package is a protected, upgradeable, namespaced bundle of Salesforce components used to distribute and sell apps on the AppExchange (Salesforce ISVforce Guide). Only managed packages can be listed as paid apps. Unmanaged packages can't be upgraded or licensed.

What it is, plainly

A managed package bundles all the app's components and locks them down. Customers can install and use the package, but they can't view or edit the underlying source. Every managed package carries a globally unique namespace prefix that keeps its components from colliding with anything in the customer's org (Salesforce Apex Developer Guide).

Three properties define it:

→ Upgradeable. You can ship new versions to installed customers. → IP-protected. The source is hidden. → Namespaced. No naming conflicts.

Those three are exactly what commercial distribution requires.

Managed vs unmanaged

The difference decides what you can do with the package. Only managed packages can be sold or upgraded.

Managed packageUnmanaged package
UpgradeableYesNo
Source protectedYes, hiddenNo, fully editable
NamespacedYesNo
AppExchange paid listingEligibleNot eligible
Best forCommercial productsTemplates, open-source, one-off sharing

Once an unmanaged package is installed, the creator has no further control over it. That's why it suits sharing a starting template rather than maintaining a product.

Pro Tip

Managed equals sellable and upgradeable. If you intend to list a paid app, the choice is made for you. It has to be a managed package.

1GP vs 2GP

There are two ways to build a managed package. First-generation (1GP) ties a namespace to a single packaging org and is managed through the Setup UI. Second-generation (2GP) is source-driven, uses Dev Hub and a namespace registry, and lets multiple packages share a namespace (Salesforce 2GP Guide). Salesforce recommends 2GP for all new managed packages.

Do you need a developer to build one?

Traditionally yes, because creating a managed package means writing Apex and Lightning Web Components and configuring 2GP packaging. That's changing. No-code generation platforms produce the components and assemble the managed package from a plain-language description. So you can have a managed package without writing code. See our guide on building a managed package without a Salesforce developer.

Frequently Asked Questions

What is the purpose of a managed package in Salesforce?

A managed package lets an ISV distribute and sell an app on the AppExchange while keeping the source protected and the package upgradeable (Salesforce ISVforce Guide). The standard vehicle for commercial Salesforce apps.

What is the difference between a managed and unmanaged package?

Managed packages are upgradeable, namespaced, and source-protected, and required for paid AppExchange listings. Unmanaged packages are editable and not upgradeable, suited to templates or one-off sharing. Only managed packages can be sold.

Can a managed package be upgraded?

Yes. Upgradeability is a defining feature. An ISV can release new versions to installed customers, which is why managed packages are used for products that need ongoing maintenance.

Do I need to be a developer to create a managed package?

Traditionally yes. No-code generation platforms like Appnigma now produce the Apex, components, and 2GP packaging from a description, so non-developers can create a managed package without writing code.

About the author. Sunny Chauhan is the founder and CEO of Appnigma AI, a no-code platform that generates Salesforce AppExchange-ready managed packages. He works with SaaS teams shipping native Salesforce apps.

Key takeaway

A managed package in Salesforce is an upgradeable, namespaced, source-protected bundle of components used to distribute and sell apps on the AppExchange. Only managed packages can be listed as paid apps or upgraded after install. Unmanaged packages are editable and not upgradeable. Appnigma AI generates a managed package no-code from a plain-language description.

Sources

1/ Salesforce ISVforce Guide, managed packaging intro 2/ Salesforce Apex Developer Guide, managed package types 3/ Salesforce 2GP Developer Guide

When did you first hit the unmanaged vs managed limit on your build?

Ready to transform your Salesforce experience?

Start exploring the Salesforce Exchange today and discover apps that can take your CRM efficiency to the next level.

decorative section tag

Blog and News

Our Recent Updates