← Blog

Medusa.js vs Shopify: An Honest Comparison From an Agency That Builds Neither

Here’s the number that gets founders’ attention: at $1 million in annual GMV, Shopify takes between $31,000 and $55,000 in transaction fees and platform costs every year. Medusa.js charges zero transaction fees. That gap alone is why this comparison exists — and why developers and merchants keep searching for it. But the full picture is more complicated than a single number, and picking the wrong platform in either direction costs more than the fee differential. We’ve done 200+ ecommerce builds at Designodin. We work in WooCommerce, not Shopify or Medusa. That means we have no stake in where you land — only an interest in giving you an accurate analysis.

What You’re Actually Comparing

These are not two versions of the same thing. Understanding the structural difference matters before any cost comparison.

Shopify is managed SaaS. You pay a monthly subscription, get hosting, a checkout, an admin dashboard, a CDN, and an ecosystem of 8,000+ apps — all maintained by Shopify. You do not own the infrastructure. You do not have access to the core codebase. Your store runs on Shopify’s servers, and your checkout runs through Shopify’s system.

Medusa.js is an open-source headless commerce engine. You get a modular backend — product catalog, cart, orders, payments — that you build on top of. There is no hosted storefront. There is no built-in admin UI out of the box. You or your team writes the frontend, configures the integrations, and manages the infrastructure. The MIT license means the framework itself costs nothing. The production system costs considerably more.

This distinction matters because merchants sometimes frame the decision as “Shopify costs money, Medusa is free.” That framing is technically accurate and practically misleading. What you’re comparing is a subscription product with known costs against an infrastructure project with variable costs. Neither is inherently better. They solve different problems for different stages and team configurations.

The Real Cost Breakdown

Shopify Pricing at Different GMV Thresholds

Shopify’s published plan pricing is straightforward. The total cost is not.

Shopify Basic — $39/month, 2.9% + 30¢ per transaction. If you use a third-party payment gateway instead of Shopify Payments, add a 2% surcharge on every transaction.

Shopify Grow — $105/month, 2.6% + 30¢ per transaction. Third-party gateway surcharge drops to 1%.

Shopify Advanced — $399/month, 2.4% + 30¢ per transaction. Third-party gateway surcharge at 0.5%.

Shopify Plus — Starts at $2,000/month. Transaction fees negotiated individually. Typically chosen at $1M+ GMV or when enterprise features are required.

Here is the math at three GMV thresholds, assuming Shopify Payments (no third-party surcharge), Advanced plan, and $500/month in apps — which is conservative for an established store:

$10,000/month GMV on Advanced:

  • Plan: $399
  • Transaction fees (2.4% + 30¢): $240 + ~$90 fixed = ~$330
  • Apps: $500
  • Total: ~$1,229/month — roughly 12.3% of GMV

$50,000/month GMV on Advanced:

  • Plan: $399
  • Transaction fees: $1,200 + ~$150 fixed = ~$1,350
  • Apps: $500
  • Total: ~$2,249/month — roughly 4.5% of GMV

$500,000/month GMV on Advanced:

  • Plan: $399
  • Transaction fees: $12,000 + ~$1,500 fixed = ~$13,500
  • Apps: $1,500 (larger catalog, more tools)
  • Total: ~$15,399/month — roughly 3.1% of GMV

At lower volumes, the percentage looks tolerable. At scale, the absolute numbers become the story.

Medusa.js Real Costs

The framework is MIT-licensed and free. Everything else has a price.

Medusa Cloud (the managed hosting option) runs $29/month for the Starter tier and $299/month for the Professional tier. This handles the backend API — you still need to build and host your storefront separately.

Production build cost: A full Medusa.js production deployment — custom storefront, admin customizations, payment integrations, shipping logic, testing, and launch — runs a minimum of $50,000. Complex implementations with custom business logic, multi-region support, or B2B workflows run $100,000–$200,000+.

Ongoing maintenance: Medusa is actively developed. The framework receives regular updates, and your custom code requires ongoing attention. Expect 5–20 hours of developer time per month to maintain a production Medusa build. At $100–$175/hour for a capable developer, that’s $500–$3,500/month just for maintenance — before any new features.

Infrastructure: You’ll need hosting for the backend API, a separate hosting environment for your frontend (Next.js or similar), a database (typically PostgreSQL), a search service (MeiliSearch or Elasticsearch), object storage for media, and a CDN. Assembled thoughtfully, this runs $200–$800/month for mid-size stores.

Total ongoing cost for a $50K/month Medusa store:

  • Medusa Cloud or equivalent hosting: $299–$800
  • Developer maintenance: $1,000–$3,000
  • Infrastructure: $300–$600
  • Third-party services (search, email, etc.): $200–$500
  • Total: ~$1,800–$4,900/month

At $50K GMV, Medusa’s monthly carrying cost is comparable to or higher than Shopify Advanced — before recovering the initial build investment. The economics shift meaningfully above $500K/month GMV.

The Hidden Shopify Cost Nobody Mentions: Transaction Fees at Scale

Shopify’s transaction fee structure deserves its own section because the numbers compound in ways that are easy to underestimate.

The 2% third-party gateway surcharge on Shopify Basic applies to every transaction processed through a non-Shopify payment processor. At $100,000/month GMV on Basic, that surcharge alone is $2,000/month — $24,000/year — on top of the 2.9% processing rate. Many merchants don’t notice this cost clearly because it’s bundled into their payment reconciliation rather than appearing as a separate line item.

Even on Shopify Payments, the math at scale is significant. Take a real example: $100,000/month GMV on Shopify Advanced.

  • Plan: $399/month
  • Transaction fees at 2.4%: $2,400/month
  • Fixed per-transaction fees (~500 orders at 30¢): $150/month
  • Apps (conservative for this volume): $500/month
  • Total: ~$3,449/month — $41,388/year

Scale that to $1,000,000/month GMV:

  • Shopify Advanced plan: $399/month
  • Transaction fees at 2.4%: $24,000/month
  • Fixed per-transaction fees (~5,000 orders at 30¢): $1,500/month
  • Apps: $1,500/month
  • Total: ~$27,399/month — $328,788/year

At this volume, most merchants would move to Shopify Plus at $2,000/month with negotiated rates. Even so, annual platform costs at $1M GMV land between $31,000 and $55,000 depending on plan, transaction volume, and app stack.

Medusa.js charges zero platform transaction fees. The payment processor (Stripe, Adyen, etc.) still charges their processing rate — typically 2.7–2.9% + 30¢ — but there is no additional layer going to the platform. At $1M annual GMV, that difference is $31,000–$55,000 staying in your business instead of going to Shopify.

Shopify is excellent software. It’s also a subscription. Your store lives on their servers, your checkout runs through their system, and their transaction fees scale with your revenue. When Shopify changes its pricing — which it did in 2023 — your cost structure changes with it, and you have no option but to accept it or rebuild.

Feature Comparison: Where Each Platform Wins

Where Shopify Wins

Speed to market. A competent merchant can launch a functional Shopify store in a weekend. The admin, checkout, payment processing, tax calculation, shipping integrations, and storefront theme are all ready to configure — no code required.

Managed hosting and reliability. Shopify handles uptime, security patches, PCI compliance, and Black Friday traffic spikes. You don’t think about server capacity or CDN configuration. For most merchants, this is worth significant money even if it’s invisible.

App ecosystem. Over 8,000 apps cover nearly every commerce use case — subscriptions, loyalty programs, reviews, upsells, returns management, inventory sync, email marketing. Most integrate in minutes.

Non-technical operation. Your team can manage products, collections, discounts, and orders without touching code. The admin interface is polished and intuitive.

Lower upfront cost. A well-configured Shopify store with a premium theme runs $2,000–$8,000 to set up professionally. That’s a fraction of a custom Medusa build.

Where Medusa Wins

Full code ownership. Every line of your store’s logic belongs to you. No platform can change your checkout flow, deprecate a feature you depend on, or raise fees unilaterally.

Custom business logic. Complex pricing rules, multi-currency inventory management, B2B quote workflows, custom fulfillment routing — Medusa handles these natively because you write the logic yourself. Shopify can approximate some of these with apps and Scripts, but the limits are real.

No vendor lock-in. Your data lives in your database. Your frontend is your codebase. Moving off Medusa means migrating data, not negotiating platform exports.

No transaction fees at scale. Beyond a certain GMV threshold, eliminating the platform fee layer saves enough money to cover Medusa’s maintenance costs multiple times over.

Developer experience. Medusa’s codebase (30,970+ GitHub stars) is actively maintained and well-documented. Developers who have worked with it describe the architecture as coherent. The modularity means you can swap out components — swap Stripe for Adyen, add a new fulfillment provider — without rebuilding from scratch.

Multi-region and multi-currency natively. Medusa was designed for international commerce from the start. Separate pricing by region, multi-currency cart, localized tax rules, and region-specific shipping logic are all first-class concepts in the data model. On Shopify, international commerce requires Shopify Markets (introduced in 2021, still maturing) or third-party apps with their own limitations. At scale, the architectural difference matters.

Who Should Use Medusa.js

Medusa is the right choice for a specific type of business. If you don’t fit this profile, the platform will cost you more than it saves.

You need custom commerce logic that platforms can’t handle. Multi-vendor marketplaces, complex B2B pricing with approval workflows, rental commerce, subscription bundles with custom billing — these require a foundation you control. Medusa gives you that foundation.

You have a dedicated development team or a committed agency relationship. Medusa requires ongoing technical attention. If your team can’t maintain a Node.js backend, you’ll spend more on emergency fixes than you saved on platform fees.

Your GMV is above $500,000/year and growing. Below this threshold, the transaction fee savings rarely justify the build and maintenance investment. Above it, the math starts to shift — especially above $1M.

You want infrastructure ownership. Some businesses — particularly in regulated industries, or those with strong data sovereignty requirements — need their commerce infrastructure on their own terms. Medusa enables that. Shopify doesn’t.

You’re building a commerce-adjacent product. If ecommerce is a feature of a larger platform rather than a standalone store, Medusa’s headless architecture integrates cleanly into existing applications. Shopify does not.

Who Should Stay on Shopify

Shopify is the right choice for a substantial portion of ecommerce businesses. The managed SaaS model solves real problems.

Your GMV is under $500,000/year. At this volume, the transaction fee savings from Medusa don’t recover the build investment within a reasonable timeframe. Shopify’s lower upfront cost and faster launch timeline make more financial sense.

You have no in-house developers. Medusa requires technical resources. If you’re a founder-led business without engineering staff, maintaining a custom backend is a liability, not an asset.

You need to launch in weeks, not months. Shopify can have you processing orders in days. A Medusa build takes 5–8 months minimum. That time has a cost — in delayed revenue, in market timing, in opportunity.

Your commerce needs are standard DTC. Sell products, process payments, manage inventory, fulfill orders, run promotions. Shopify does all of this extremely well, and the app ecosystem fills most gaps. If you don’t need custom logic, the flexibility of Medusa doesn’t add value — it adds complexity.

You want to focus on your product, not your infrastructure. This is a legitimate business preference. Shopify’s managed model is valuable if engineering bandwidth is better spent elsewhere. Not every business should own its commerce infrastructure.

You want predictable, auditable costs. Shopify’s pricing, while escalating at volume, is knowable in advance. You can model your platform cost at any GMV scenario without uncertainty. For businesses where financial predictability matters more than fee optimization, the managed subscription is a feature, not a limitation.

The Middle Path: WooCommerce

This comparison would be incomplete without addressing the platform that holds 33.4% of the global ecommerce market and powers over 4.5 million stores: WooCommerce.

WooCommerce is open source, like Medusa. It runs on WordPress, which means it inherits the world’s largest plugin ecosystem — 68,000+ plugins, including commerce-specific tools for subscriptions, memberships, bookings, B2B pricing, and nearly every other use case. It charges zero transaction fees. Your data lives in your database. You own the code.

The build economics are fundamentally different from Medusa. A custom WooCommerce store — purpose-built for your specific requirements — runs $15,000–$30,000 through an agency like Designodin. That’s a fraction of a Medusa production build. The GMV crossover point — where the transaction fee savings justify the build investment — arrives much earlier with WooCommerce than with Medusa.

At $100,000/month GMV, the annual saving from eliminating Shopify’s transaction fees runs $12,000–$20,000. A $20,000 WooCommerce build pays for itself in 12–20 months. A $75,000 Medusa build takes 45–75 months to break even on platform fees alone — and that doesn’t account for ongoing maintenance costs.

WooCommerce also operates at a different technical complexity level than Medusa. A capable WordPress developer can maintain and extend a WooCommerce store. Medusa requires a Node.js backend developer with API design experience. The talent pool is different, and the hourly rates reflect that difference.

The hosting story is also more straightforward. WooCommerce runs on standard PHP hosting — managed WordPress environments from WP Engine, Kinsta, or Pressable start at $30–$100/month and handle most mid-size stores without additional infrastructure engineering. Medusa requires assembling and managing multiple services: a Node.js API server, a PostgreSQL database, a search engine, object storage, and a separately hosted frontend. Each adds configuration overhead and failure surface.

For businesses that want open-source ownership, zero transaction fees, and custom commerce functionality — but don’t need Medusa’s architectural flexibility or have the development budget for a full headless build — WooCommerce is the option that gets overlooked in this comparison.

If you want to explore what custom WooCommerce development looks like for your specific situation, that’s where most of our client conversations start.

Migration Considerations

If you’re currently on Shopify and evaluating a move, the migration cost is part of the total cost equation.

Shopify to Medusa

A Shopify-to-Medusa migration involves replatforming everything: product catalog, customer data, order history, integrations, storefront, checkout, and any custom logic currently handled by apps or Shopify Scripts. Timeline: 5–8 months minimum. Cost: $50,000–$150,000+, depending on catalog complexity, custom requirements, and your existing tech stack.

During the migration, you’re maintaining the Shopify store while building the Medusa replacement in parallel — which means carrying both sets of costs until cutover. For most businesses, this is a 6–12 month period of elevated spend.

Post-launch, you’re also absorbing the ongoing maintenance cost that didn’t exist on Shopify. Factor in $1,000–$3,500/month in developer time against the transaction fee savings to determine your actual breakeven.

Shopify to WooCommerce

A Shopify-to-WooCommerce migration is more contained. The scope is narrower — WordPress with WooCommerce is an established platform, and the migration tooling is mature. Timeline: 2–3 months. Cost: $10,000–$30,000 through an experienced agency.

The reduced complexity translates to faster ROI. If your primary driver is eliminating transaction fees and gaining ownership without a multi-year payback period, WooCommerce migration is usually the more practical path.

A custom WordPress build for commerce also opens the door to integrating your store more tightly with content, SEO, and marketing infrastructure — an area where WordPress’s breadth genuinely outperforms Shopify’s walled garden.

How to Make the Decision

The right platform depends on three variables: your current and projected GMV, your development resources, and your commerce complexity.

At under $300,000/year GMV: Shopify is almost always the right answer. The managed model, fast launch timeline, and lower upfront cost outweigh the transaction fee costs at this volume. Medusa’s overhead doesn’t pay off. WooCommerce is worth considering if you have a developer relationship and want to establish open-source infrastructure before you need it.

At $300,000–$1,000,000/year GMV: The calculation becomes genuinely competitive. Shopify’s fees are significant but not crippling. WooCommerce starts to look attractive on economics. Medusa is viable if you have development resources and complex commerce requirements, but the ROI case is tighter than it appears.

At $1,000,000+/year GMV: Transaction fees are a real cost center. If you’re on Shopify Advanced, you’re spending $31,000–$55,000/year in platform fees. WooCommerce eliminates that. Medusa eliminates that and adds architectural flexibility. The question shifts from “can I afford to migrate?” to “which migration serves my 3-year roadmap?”

With custom commerce logic: Medusa becomes more compelling the more your business diverges from standard DTC. B2B pricing, marketplace functionality, custom fulfillment, rental or subscription models — these justify the build cost in ways that transaction fee savings alone might not.

Neither platform is universally correct. Shopify has earned its market position by being genuinely good software for a wide range of merchants. Medusa.js has earned its 30,970+ GitHub stars by solving real problems for teams that need architectural freedom. The honest answer is that most businesses asking this question will be better served by running the actual numbers — not the headline comparison — before making a decision.

If you want to run a quick store audit against your actual GMV and transaction volume, that’s a faster way to get to the right answer than reading more comparisons.

Evaluating a move away from Shopify? We’ll run the numbers for your actual GMV — no platform agenda. Get in touch