SaaS stacks
Mara Lindqvist8 min read4 views

Medusa vs Saleor vs Vendure: Open-Source Headless Commerce for Next.js (2026)

Medusa, Saleor, and Vendure for open-source headless commerce on Next.js in 2026: language, license, real managed pricing, honest 'where it loses', and how to pick.

Updated on July 18, 2026

Three museum pedestals in a warm gallery: modular blocks assembling into a small glowing storefront, a brass graph-node network hub, and a crystalline prism splitting one beam of light into several channels, illustrating Medusa, Saleor, and Vendure open-source commerce engines.
Three museum pedestals in a warm gallery: modular blocks assembling into a small glowing storefront, a brass graph-node network hub, and a crystalline prism splitting one beam of light into several channels, illustrating Medusa, Saleor, and Vendure open-source commerce engines.
On this page

We keep a shelf in the ShipGarden gallery for the parts of a store you never photograph: the commerce engine underneath the pretty storefront. It holds your products, carts, orders, prices, and fulfilment, and it decides how much of your Next.js app you get to own versus rent. Pick wrong and you either outgrow a hosted box or drown maintaining one.

This quarter we lined up the three open-source headless engines a Next.js team actually shortlists in 2026: Medusa logo Medusa, Saleor logo Saleor, and Vendure logo Vendure. They all sell themselves as "headless, composable, API-first," which makes them look interchangeable on a landing page. They are not. The honest answer to "which one" is decided by your team's language, your license tolerance, and how much you are willing to spend on managed hosting, in that order.

Quick answer (2026)

For a Next.js SaaS or store in 2026, pick Medusa if you want a TypeScript-native, MIT-licensed engine with the cheapest managed on-ramp and no revenue tax. Pick Saleor if you have a Python team or a real enterprise budget and want a GraphQL-first API with mature B2B features. Pick Vendure if you want a TypeScript core with strong B2B and multi-channel out of the box, and the GPLv3 copyleft terms do not scare your legal reviewer. All three are production-grade and self-hostable for free. The tiebreaker is rarely the feature list.

The three at a glance

Scroll to see more

EngineStars (Jul 2026)LicenseCore languageLatestManaged cloud fromSelf-host
Medusa Medusa~35kMITTypeScript / Nodev2.17.2$29/mo, no GMV feeFree
Saleor Saleor~23kBSD-3-Clause (core API)Python / Django3.23.18$1,599/mo + GMVFree
Vendure Vendure~8.3kGPLv3 (core)TypeScript / NestJSv3.7.1Cloud GA Q4 2026Free

Star counts, versions, and licenses read from each project's GitHub repo, and every price read from each vendor's own pricing page, all in July 2026. Sources are linked in the sections below so you can re-check before you commit.

The first divider: what language is your team?

Every headless engine here exposes a clean API, so your storefront can be Next.js regardless. The difference is the machine you have to operate and extend.

  • Medusa is a Node.js application you extend in TypeScript. Its v2 modules, workflows, and admin all speak the same language as your Next.js front end, so one team can move across the whole stack without switching runtimes. Repo: Medusa (MIT, ~35k stars, v2.17.2, July 2026).
  • Vendure is also TypeScript, built on NestJS with a GraphQL API and a React admin. Plugins are the extension model, and its B2B, multi-channel, and multi-currency features are unusually complete for the star count. Repo: Vendure (GPLv3 core, ~8.3k stars, v3.7.1, July 2026).
  • Saleor is a Python and Django application with a GraphQL-first API. The front end can be anything, but the engine you host, migrate, and debug is Python. If your team does not write Python, that is a standing tax on every backend change. Repo: Saleor (BSD-3-Clause core API, ~23k stars, 3.23.18, July 2026).

Medusa's own maintainers put this plainly in their long-running "Compare with Saleor and Vendure" discussion: the biggest split between the three is the base programming language, Node versus Python. For a Next.js shop, that is not a footnote.

The second divider: the license fine print

"Open source" hides three genuinely different deals here, and only one of them has a copyleft catch.

  • Medusa is MIT. Do essentially anything, including closed-source commercial forks, with no obligation to publish your changes.
  • Saleor's core API is BSD-3-Clause, another permissive license with the same practical freedom for your own code. (Saleor's dashboard and some components ship in separate repos with their own terms, so check each package you actually deploy.)
  • Vendure's core is GPLv3. Self-hosting is free forever, but GPLv3 is copyleft: if you modify the Vendure core itself and distribute that modified version, you inherit obligations to share source under the same license. For most teams building plugins on top of the public APIs this never bites, but if your plan involves shipping a modified engine, Vendure sells a separate commercial license precisely to lift those terms. Budget the legal read before you budget the build.

None of this makes Vendure a worse tool. It makes it a different contract, and license surprises are the kind of thing you want to find in a comparison post, not in a review with counsel.

The third divider: what managed hosting actually costs

This is where the marketing pages stop looking alike. All three are free to self-host on a box you run. The gap is in the managed on-ramp, and it is enormous.

  • Medusa Cloud starts at $29/mo (Develop), then $99/mo (Launch) with autoscaling and custom domains, then $299/mo (Scale), then custom Enterprise, with the headline promise of "no GMV-tax or special licenses" (Medusa Cloud pricing, July 2026). You pay for infrastructure, not for a slice of your revenue.
  • Saleor Cloud starts at $1,599/mo (Select) for up to $200,000 monthly GMV plus 0.8% above that, then $3,999/mo (Volume) for up to $1M GMV at 0.4% above, then negotiated Enterprise "as low as 0.2%" (Saleor Cloud pricing, July 2026). There is a "Forever Free" Sandbox, but it is explicitly non-commercial, for prototyping only.
  • Vendure Cloud is not yet a self-serve option: the pricing page lists it as "available now for design partners, GA Q4 2026," and the commercial Platform tier is a flat annual subscription quoted by sales, with no public number (Vendure licensing, July 2026).

Read that again. The cheapest hosted path across the three is roughly $29/mo, and the next real self-serve managed option starts at $1,599/mo. If you want someone else to run the engine on day one without a sales call, Medusa is in a category of its own right now. If you are large enough that a $1,599 floor plus GMV is rounding error, Saleor's managed maturity earns it.

Self-hosting: the cost is the same shape

Do not read the cloud gap as the whole story. Self-hosted, all three want the same ingredients: a persistent Node or Python host, a PostgreSQL database, and Redis for jobs and caching. On a modest VPS that is realistically $10 to $40 a month of infrastructure for a small store, plus your time. The engines are free; the operational burden (migrations, upgrades, backups, worker processes) is the real bill, and it is broadly comparable across the three. What differs is which language you debug at 2am.

Where each one loses (honest)

  • Medusa ships an excellent admin and modules, but it is a framework, not a finished store: you build the storefront yourself, and the v2 architecture rewards teams comfortable wiring workflows and modules rather than clicking through a wizard.
  • Saleor is powerful and battle-tested, but the Python core alienates all-JavaScript teams, and the managed cloud is priced for funded companies, not weekend founders. Its GMV component means your hosting bill grows with your success.
  • Vendure has the smallest community of the three, so there are fewer plugins, tutorials, and Stack Overflow answers when you get stuck, the GPLv3 core adds a licensing conversation, and its managed cloud is not generally available until late 2026, so early adopters self-host by default.

How to pick in one read

  1. All-TypeScript team, want a cheap managed start, no revenue tax? Medusa. It is the default for most Next.js shops in 2026.
  2. Python shop, or an enterprise budget and mature B2B needs? Saleor.
  3. Want TypeScript with strong built-in B2B and multi-channel, and comfortable self-hosting under GPLv3? Vendure.
  4. Just prototyping to learn headless commerce? Any of them self-hosted, or a Saleor non-commercial Sandbox, costs nothing but a VPS.

If you want to see how Medusa behaves once you actually clone and deploy it, we walk the full setup in our standalone Medusa 2.0 starter review, and this comparison sits inside the broader open-source starter scorecard we keep updated. The community threads on the Medusa discussion are worth a skim too: the language split comes up in almost every one.

The gallery verdict for 2026: there is no single best open-source commerce engine, only the best fit for your language, your license appetite, and your hosting budget. Line those three up first and the choice makes itself.

Mara Lindqvist

Written by

Mara Lindqvist

Mara Lindqvist curates the ShipGarden gallery, road-testing open-source and source-available SaaS and AI boilerplates and the infrastructure they run on. She writes about time-to-first-deploy, cost, and vendor lock-in for founders who ship.

Frequently asked questions

Is Medusa, Saleor, or Vendure best for a Next.js store in 2026?

There is no single winner; it depends on your team and budget. Medusa suits all-TypeScript teams that want the cheapest managed start and no revenue tax, Saleor suits Python teams or enterprises with mature B2B needs, and Vendure suits TypeScript teams wanting strong built-in B2B and multi-channel who are comfortable self-hosting under GPLv3 (2026).

Which of these open-source commerce engines is free to self-host?

All three are free to self-host. Medusa is MIT, Saleor's core API is BSD-3-Clause, and Vendure's core is GPLv3 and 'free forever'. Self-hosting each needs a persistent Node or Python host plus PostgreSQL and Redis, realistically $10 to $40 a month of infrastructure for a small store (2026).

Why is Saleor Cloud so much more expensive than Medusa Cloud?

Saleor Cloud is priced for scale: its Select plan starts at $1,599/month for up to $200,000 monthly GMV plus a percentage above that, per Saleor's pricing page. Medusa Cloud starts at $29/month with no GMV fee. Both engines are free to self-host; the gap is only in the managed hosting they sell (2026).

Does Vendure's GPLv3 license affect a commercial store?

Usually not. Building plugins on Vendure's public APIs and self-hosting is free under GPLv3. The copyleft terms mainly matter if you modify the Vendure core itself and distribute that modified engine, in which case Vendure sells a separate commercial license to lift those obligations. Check with counsel if you plan to ship a modified core (2026).

Medusa vs Saleor: what is the main difference?

The base language. Medusa's core is a Node.js and TypeScript application, so it shares a runtime with your Next.js front end, while Saleor's core is Python and Django with a GraphQL-first API. For an all-JavaScript team, Medusa removes a language switch on every backend change; for a Python team, Saleor is the natural fit (2026).