Appnigma

What Is a Managed Package in Salesforce?

managed package

May 27, 2026

4 min read

What Is a Managed Package in Salesforce?

A managed package in Salesforce is an upgradeable, namespaced bundle of components (objects, fields, Apex, Lightning Web Components, flows) that an ISV distributes for customers to install into their org. Its source is protected, it can be upgraded after install, and it is the only package type eligible for paid distribution on the AppExchange. Unmanaged packages, by contrast, are editable, not upgradeable, and meant for templates or one-off sharing.

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 cannot be upgraded or licensed.

What is a managed package?

A managed package is how a Salesforce ISV ships a commercial app. It bundles all the app's components and locks them down: customers can install and use the package, but they cannot 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: it is upgradeable (you can ship new versions to installed customers), it is IP-protected (the source is hidden), and it is namespaced (no naming conflicts). Those three are exactly what commercial distribution requires.

Managed vs unmanaged packages

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

[@portabletext/react] Unknown block type "table", specify a component for it in the `components.types` prop

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

Pro Tip

Our finding: The single most useful thing to know is that "managed" equals "sellable and upgradeable." If you intend to list a paid app, the choice is made for you: it must be a managed package.

1GP vs 2GP managed packages

There are two ways to build a managed package. First-generation (1GP) ties the namespace to a single packaging org and is managed through Setup. 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 is 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). It is 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 they are 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, unlike unmanaged packages.

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

Traditionally yes, but 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

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