Medusa vs Saleor: the licence says the opposite of what you expect
A head-to-head on figures checked at source on 30 September 2026. Against intuition, Saleor has the cleaner licence: the whole codebase on BSD, no carve-out. Medusa is MIT except for its Enterprise Edition, which holds RBAC and SSO, the two things a B2B store needs most. In return, Medusa Cloud starts at 29 dollars and takes no cut of revenue, while Saleor starts at 1,599 dollars plus 0.8% above the cap.
Choose Medusa if your team works in TypeScript and you want a platform bill that stays predictable and unlinked to revenue. Choose Saleor if your team is a Python team, or if you need roles, permissions and company sign-on without a separate licence agreement.
Key takeaways
- The licences land the opposite way round from the popular shorthand that "Medusa is MIT". Saleor ships its whole core and dashboard under BSD 3-Clause with no paid edition carved out. Medusa is MIT except for its Enterprise Edition materials, which cover RBAC and SSO and require a separate commercial agreement with MedusaJS, Inc.
- For a B2B store that exception is not a detail. RBAC means roles and permissions, the mechanism company accounts with order approval rest on. On Medusa it has to be priced separately; on Saleor it sits under the same licence as everything else.
- The vendor clouds differ by an order of magnitude. Medusa Cloud: Develop from $29, Launch from $99, Scale from $299 a month, and 0% of GMV. Saleor Cloud: a free Sandbox for non-commercial use only, then Select at $1,599 up to $200,000 monthly GMV and Volume at $3,999 up to a million, plus 0.8% and 0.4% above the cap.
- The stack decides more than the feature list. Saleor is 99% Python, Medusa 87% TypeScript. If your team can maintain one and not the other, the rest of this comparison is trivia.
This is a comparison of two platforms from the same shelf. Both are headless, both give you an API instead of a theme, both ship an admin and both can run on your own servers, so the difference between them is not a difference of class but of choices. Putting Medusa next to Shopify, Magento or WooCommerce compares different kinds of thing, and those settle quickly. Here the gap is narrower, which makes it harder, because almost every argument has a counterweight on the other side. Every figure below was checked at source on 30 September 2026: in the licence files on GitHub and on both vendors’ pricing pages.
We start with the thing almost every comparison gets backwards.
The licence: the popular shorthand is inverted
The received version goes like this: Medusa is MIT, therefore free and open, while Saleor is the commercial one. We read both licence files, and that version does not hold.
Saleor: BSD 3-Clause, no carve-out
The LICENSE file in the Saleor repository is BSD 3-Clause, a permissive licence that places no restriction on commercial or production use. The same licence covers the separate dashboard repository. The README states it plainly: everything is open and free to use as long as you comply with the licence, and there are no hidden charges.
On Saleor’s pricing page the "Non-Commercial Use Only" heading sits over the free Sandbox cloud plan, not over the code you host yourself. That distinction is easy to miss and worth getting right: the restriction applies to a free sandbox on the vendor’s cloud, not to the licence on the source.
Medusa: MIT with an exception carved out
Medusa’s licence file opens with a sentence the shorthand leaves out: the repository is MIT except for the Enterprise Edition materials identified in a separate file. GitHub cannot classify the result and shows Medusa’s licence as unrecognised, while it labels Saleor plainly as BSD-3-Clause.
The ENTERPRISE-LICENSE.md file leaves no room for interpretation. The Enterprise materials are proprietary software, usable only under a separate, valid commercial agreement with MedusaJS, Inc. Holding the source code grants no licence by itself, and enabling an Enterprise feature flag counts as a representation that you hold such an agreement.
What exactly is carved out: RBAC, meaning roles and permissions, and SSO, meaning single sign-on. Neither is exotic. Together they are the foundation of company accounts in a B2B store, where a buyer places an order and a manager approves it.
So Medusa’s licence bill is not zero. It is conditionally zero.
To be straight about where we stand: we build on Medusa, so this comparison goes against us. We describe it the way the files describe it anyway, because the client will find it regardless, only later and at a worse moment, usually mid-quote, when the scope is already agreed and the budget already closed.
| Item | Medusa | Saleor |
|---|---|---|
| Core licence | MIT, except Enterprise Edition materials | BSD 3-Clause, the whole repository |
| Admin licence | MIT, same exception | BSD 3-Clause |
| What the licence charges for | RBAC and SSO: a separate commercial agreement with MedusaJS, Inc. | Nothing. The vendor earns on the cloud, not on the code. |
| How GitHub classifies it | licence unrecognised | BSD-3-Clause |
LICENSE and ENTERPRISE-LICENSE.md of both projects, checked 30 September 2026.
Cloud pricing: an order of magnitude apart
The licence is one side of the bill. The other is the vendor cloud, if you would rather not run servers yourself. Here the proportions flip sharply in Medusa’s favour.
| Plan | Medusa Cloud | Saleor Cloud |
|---|---|---|
| Free | no free plan | Sandbox, non-commercial use only |
| Entry | Develop from $29/mo | no equivalent |
| Production, lower | Launch from $99/mo | Select $1,599/mo, up to $200k GMV |
| Production, higher | Scale from $299/mo | Volume $3,999/mo, up to $1M GMV |
| Above the cap | no GMV cap | 0.8% (Select) and 0.4% (Volume) of the excess |
| Cut of revenue | 0.0% | plan dependent, down to 0.2% on Enterprise |
| Onboarding add-ons | none listed | Accelerator $6,000 one-time, Forward Deployed Engineering $12,000 one-time |
Public pricing at medusajs.com/pricing and saleor.io/pricing, checked 30 September 2026.
The first commercial production plan costs $99 on Medusa and $1,599 on Saleor. That is sixteen times the entry price before you count anything else. On top of it Saleor takes a percentage of revenue above the plan cap, while Medusa states zero percent and caps neither orders, products nor sales channels.
Rule of thumb: for a store that is just starting, Medusa’s cloud bill is not remotely comparable. For a store that needs roles and permissions, Medusa’s licence bill stops being zero. Which of those two lines decides depends on what you are building.
Here the proportions swing back to Medusa.
The third route is the same on both sides: your own servers. The vendor cloud then leaves the bill entirely and what remains is the cost of running it, which we break down in our piece on the true cost of owning your platform.
Stack choice: the question that settles it fastest
Before comparing features, check what your team writes in. That single question eliminates more candidates than the rest of this article.
| Dimension | Medusa | Saleor |
|---|---|---|
| Primary language | TypeScript, 87% of the code | Python, 99% of the code |
| API | REST and modules | GraphQL only |
| GitHub stars | 36,514 | 23,397 |
| Open issues | 182 | 288 |
| Last change to the code | 30 September 2026 | 30 September 2026 |
GitHub API, read 30 September 2026. Stars measure popularity, not quality.
If your storefront runs on Next.js and your team writes TypeScript, Medusa means one language from the database to the browser. If you already run a data team or a Python backend, Saleor fits the skills you have rather than the ones you would have to hire.
Saleor grew out of a Polish company. It shows in the licence header, where Mirumee Software sits beside Saleor Commerce with the years 2010 to 2020. For a European team that is sometimes an argument in itself: the documentation and the community grew up close to the market you sell in.
When this comparison does not matter at all
The most common mistake in choosing a platform is starting from the platform. If you do not yet know what the store has to do, either choice will miss, and you will find out six months later.
- Your scope is not costed. Then the criteria for choosing a platform come first and the platform second.
- Your advantage sits in an integration, not in the store. If the decision rests on the link to a warehouse or accounting system, read about integrating a B2B store with an ERP instead. Both platforms will carry it; the difference comes from the data quality on the other side.
- You sell mostly on marketplaces. Then your own store platform is secondary and how you run Amazon and Allegro accounts is primary. That is the work of our sister brand, Amazonway.
- You have a working store and one thing that hurts. Changing platforms is the most expensive available answer to that. When it is justified, we set out in our piece on the signs you have outgrown your SaaS platform.
How we choose, and why
We build eCommerce platforms on Medusa inside the BEAM framework: Blueprint settles what to build and whether to build it at all, Engineering delivers it. We picked Medusa for one language across the whole stack and for a bill that stays predictable instead of growing with the client’s revenue.
We pay for that choice with exactly the line described above: roles and permissions are Enterprise material on Medusa. On B2B projects where company accounts with order approval are a requirement, we say so during the Blueprint rather than after the contract is signed. What that looks like in practice is visible in our DrillStom wholesale case study.
An honest caveat: if a client arrived with a Python team and a requirement for roles without a separate licence agreement, Saleor would be the better choice and we would be the wrong builder. We would rather say that at the start.
Our other platform comparisons sit together in the comparison hub, and our pricing model is published openly on our pricing page.
Facing this choice? Book a Blueprint and we will settle it on your own numbers: what language your team writes in, whether you need roles and permissions, and what the bill looks like at your revenue. If the answer is Saleor, we will say so, even though we build on Medusa.
FAQ
Is Medusa free?
The MIT-licensed code is, but that is not all of it. The licence file carves out the Enterprise Edition materials, meaning RBAC and SSO, and sends them to a separate commercial agreement with MedusaJS, Inc. If you are building an ordinary B2C store the exception does not touch you. If you are building company accounts with roles and order approval, it does.
Can Saleor be used commercially for free?
The code itself, yes: the core and the dashboard ship under BSD 3-Clause, a permissive licence with no restriction on commercial use. The "Non-Commercial Use Only" label on the pricing page applies to the free Sandbox plan on the vendor cloud, not to code you host yourself.
Which platform is cheaper?
On the vendor cloud, Medusa, and not by a few percent. The first commercial production plan is $99 a month on Medusa and $1,599 on Saleor, and Medusa takes no cut of revenue. Self-hosted, the licence cost disappears on both sides and what remains is a running bill that depends on your infrastructure rather than on the platform you picked.
Medusa or Saleor for a B2B store?
One question settles it: do you need roles and permissions. Company accounts where a buyer places an order and a manager approves it rest on RBAC. On Saleor that sits under the same licence as everything else; on Medusa it requires an Enterprise agreement. What else a store like that has to do, we collected in our piece on B2B ordering portal requirements.
Can a store be moved from Saleor to Medusa, or the other way round?
It can, because both are headless and expose their data through an API, but it is a full migration rather than a switch. The catalogue, customers, order history and URLs with redirects all move, and the storefront is rewritten, because the APIs do not line up: Saleor is GraphQL only. How to run that without stopping sales, we described separately.
Do GitHub stars mean anything?
Less than people assume. Medusa has 36,514 and Saleor 23,397, but a star is a bookmark, not a deployment. The pace of work on the code and the number of open issues say more, and on both counts the projects look alive: the last change in either repository is dated 30 September 2026.
Journal
Co-founder of Seedlight · eCommerce platforms, AI, SEO and GEO
Newsletter
The Journal, straight to your inbox
New articles and lessons from real builds, every now and then. No spam, unsubscribe with one click.