
The LMO is the org. The LMA is the app inside it. Both are required to sell paid AppExchange apps. The two get conflated constantly in blog content and even in some Salesforce documentation. Once you separate them, the licensing flow stops being confusing.
Pro Tip
TL;DR: The License Management Org (LMO) is the Salesforce org where you track licenses. The License Management App (LMA) is the free Salesforce app you install in that org to actually manage them. You need both, plus a Partner Business Org provisioned through the Salesforce Partner Program, to sell a paid AppExchange app (Salesforce ISVforce Guide).
What each one actually is
Two different things, both required.
License Management Org (LMO). A specific Salesforce org that you designate to receive license records and lead notifications from your AppExchange installs. The org itself. For most ISVs, this is the Partner Business Org (PBO) Salesforce provisions when you join the Partner Program. You don't typically create a separate org just for licensing; you use the PBO.
License Management App (LMA). A free, Salesforce-published managed package you install into the LMO. The LMA provides the objects, UI, and automation that turn the LMO into a licensing system: license records, package version records, lead records, automated workflows for trial expiration, and the controls to activate or suspend customer access.
Pro Tip
The LMO is the address. The LMA is the building inside it. Together they make your licensing operational.
How they work together in practice
When a customer installs your paid managed package from the AppExchange.
1/ Salesforce sends a license record to your designated LMO automatically. 2/ The LMA in that LMO receives the record and creates a License object instance, plus a corresponding Lead. 3/ Your LMA workflows (set up once) handle license assignment, trial timing, expiration notifications, and suspension actions. 4/ When you decide to expire, suspend, or extend access, you update the License record in the LMA. The change propagates to the customer's org.
No customer-side action. The LMA does the enforcement on your side.
Why people confuse them
Three reasons.
→ Setup happens together. You set up the LMO and install the LMA in one onboarding flow, so the two feel like one step. → Documentation slips. Even Salesforce material sometimes says "the LMA" when it really means "the LMO running the LMA." → Configuration lives in both. You configure your LMO (which org to use, which user receives notifications), and you configure the LMA (workflows, license templates, lead routing). Distinct configuration steps that get bundled together in tutorials.
The cleanest mental model: the LMO answers "where do my licenses live." The LMA answers "how do my licenses behave."
Required setup checklist
Six steps to make paid licensing work, in order.
1/ Join the Salesforce Partner Program. Free. Required before anything else. 2/ Receive a Partner Business Org (PBO). Provisioned by Salesforce after you join. 3/ Designate your LMO. For most ISVs, the LMO is the PBO. You confirm this in the Partner Console when you connect your managed package. 4/ Install the License Management App into the LMO. Free, from the AppExchange. One-click install. 5/ Configure LMA workflows. Set up license templates, lead routing, trial defaults, and notification rules. 6/ Connect your managed package to the LMO and LMA. Done through the Partner Console; the connection tells Salesforce where to send license records.
After this, every paid AppExchange install of your package routes a license record to your LMO, where the LMA handles the lifecycle.
What you can do once setup is done
The point of all this. Operational controls you didn't have before.
→ See every customer install with installer details → Issue licenses with specific seat counts and expiration dates → Set up free trials with automatic conversion or expiration → Suspend or extend customer access from your side → Receive Leads in the LMO automatically when installs happen, ready for your sales team → Run reports on adoption, churn, and trial conversion
The LMA is also your churn-detection surface. License records show when a customer uninstalls or lets a trial lapse, which is data most ISVs don't realize they have until they look.
Free apps and the LMA
Free apps don't strictly need the LMA. You can install your free managed package without a licensing surface. Many ISVs install the LMA anyway, because the Lead capture and install visibility are useful even when you're not charging. The $999 security review fee is what's tied to paid apps; the LMA is an operational choice.
How no-code generation fits
A no-code platform generates the managed package itself, not the LMO or LMA setup. Those are configuration tasks you handle in the Partner Console and the LMA after the package exists. Generation removes the engineering bottleneck of building the package; you still set up licensing once, the same way every ISV does. See our guide on the requirements to publish a paid app on the AppExchange.
Frequently Asked Questions
What is the difference between LMO and LMA in Salesforce?
The LMO (License Management Org) is the Salesforce org designated to track licenses. The LMA (License Management App) is the free Salesforce app installed in that org to manage licensing. The LMO is the location; the LMA is the tooling. Both are required to sell a paid AppExchange app (Salesforce ISVforce Guide).
Do I need a separate org for the LMO?
Not usually. For most ISVs, the LMO is the Partner Business Org (PBO) provisioned by Salesforce when you join the Partner Program. Some larger ISVs separate them, but a single PBO running the LMA is the standard setup.
Is the License Management App free?
Yes. The LMA is a free Salesforce-published managed package. You install it from the AppExchange into your designated LMO and configure it for your licensing needs.
Do free AppExchange apps need an LMA?
No, not strictly. You can publish a free app without LMA setup. Many free-app publishers install the LMA anyway for the install visibility, Lead capture, and reporting benefits.
How do I connect my managed package to the LMA?
Through the AppExchange Partner Console. When you create or update your listing, you designate the LMO and link the LMA-managed License object to your package. Salesforce uses that connection to route license records on every install.
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 helps SaaS teams stand up paid AppExchange licensing without the usual setup confusion.
Key takeaway
The License Management Org (LMO) is the Salesforce org you designate to track AppExchange licenses, typically your Partner Business Org. The License Management App (LMA) is the free Salesforce app you install in that org to actually manage licenses. Both are required to sell paid AppExchange apps. The LMO is the location; the LMA is the tooling. Free apps don't strictly need the LMA but often install it for the install visibility.
Related articles
Requirements to publish a paid app on AppExchange
What is the AppExchange Partner Console
How to get your app on the Salesforce AppExchange
Salesforce ISV partner program and how to join
Sources
1/ Salesforce ISVforce Guide, publish and manage your listing (LMO, LMA setup) 2/ Salesforce Partner Community, ISV onboarding documentation 3/ Salesforce AppExchange, License Management App listing
Which of the two have you accidentally referred to when you meant the other?
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.
