Shopify charges you three separate meters every month: here's what you're paying for

Shopify is a well-engineered platform that earns its market position for the right store. But the plan price is only the first of three recurring costs running in the background: the monthly subscription, a cut of every transaction if you are not using Shopify Payments, and a stack of paid apps most stores accumulate over time to cover features the base plan deliberately leaves out. This comparison covers every dimension, including the cases where Shopify is the better answer.

Shopify vs. hand-coded custom: side by side

Both columns are written to be accurate. Where Shopify has an advantage, the table says so. Where a custom store has the edge, so does that column.

Factor Shopify Hand-coded custom (ArdinGate)
Upfront cost $0 to start (no build fee required) $2,800+ one-time, no recurring platform fee
Monthly platform fee $39–$399/month, required to keep the store live None (no subscription, ever)
Transaction fees 0.5%–2% per sale on top of processor rate (waived only with Shopify Payments) Processor rate only (no platform middleman)
App / feature costs $50–$400+/month in stacked third-party apps for common features Built into the codebase (no per-feature monthly rental)
Checkout control Locked on all plans below Shopify Plus ($2,300+/month) Fully custom: any flow, any fields, any logic
Page speed (mobile first paint) 1.5–2.5s clean; 3–5s with installed apps Under 1 second (HTML delivered directly, no JS runtime)
Google page speed and stability checks Passes when new; degrades measurably with each app installed Passes by default (no platform layer to fight)
Code and store ownership Rented (store runs on Shopify's infrastructure, can't be moved) Full codebase delivered on launch day; portable to any PHP host
Platform lock-in risk High (migrating away means rebuilding the store from scratch) None (move hosts, switch developers, modify anything)
SEO control Good basics; forced /products/ and /collections/ URL paths Full: URL architecture, schema, canonicals, server headers
Data ownership Exportable CSV (your data is accessible, store logic is not portable) Your database, your server, your files: move anywhere
Fulfillment network / POS Strong (native POS hardware and negotiated carrier shipping rates) Not included; third-party integrations possible
Multi-channel selling Native integrations with Amazon, Meta, TikTok Shop Possible via API integration; requires custom development
5-year total cost (estimate) $12,000–$35,000+ in plan + fees + apps Build + $1,800–$4,500 hosting: then you own it

When Shopify is the right call

Shopify built its position by solving a core problem: a fully functional online store with no developer required, live in days. For certain stores and certain operational models, the recurring cost buys platform value. These are the cases where staying on Shopify makes sense even after you run the full cost math.

High-volume fulfillment operations

Shopify's carrier partnerships give high-volume shippers discounted USPS, UPS, and DHL rates that are difficult to replicate independently. If you are shipping 200 or more orders per week and Shopify Shipping is materially reducing your per-package cost, that is a concrete operational advantage with dollar value. The math on staying vs. leaving looks completely different when shipping discounts are load-bearing. Factor those savings into the comparison before drawing conclusions.

Retail with Shopify POS

If you run a physical retail location and use Shopify's point-of-sale hardware to sync in-person and online inventory in real time, that integration is mature and replacing it adds friction. Shopify POS is one of the few places where the platform creates lock-in value beyond cost. A store that processes a significant portion of sales at a physical register has a much stronger case for staying on the platform than one selling exclusively online.

Multi-channel selling at scale

Shopify's native integrations with Amazon, eBay, Meta, and TikTok Shop centralize inventory and orders across those channels in a single dashboard, built in ways a custom store cannot replicate without significant API work. For stores where multi-channel is central to the business model, that infrastructure earns its keep. It's a different calculation than a store that sells through one channel and wants those fees to stop.

Early-stage stores validating a product idea

If you are testing whether a product sells and you may not be running this store six months from now, paying a developer to build a custom store is the wrong spend. Shopify lets you test the market quickly and cheaply. Once you know the product works and you are planning for the next three to five years, the cost math changes significantly in favor of custom. The platform is a good incubator; it is an expensive permanent address.

One factor that cuts across all four scenarios: Shopify raised its plan prices 38% in 2023 (Basic went from $29 to $39, Shopify mid-tier from $79 to $105, Advanced from $299 to $399). They can do it again. A store deeply integrated with Shopify POS, Shopify Shipping, and the app ecosystem has limited leverage when that happens. The cost of rebuilding to leave is high enough that most merchants absorb the increase. That is platform lock-in: the switching cost is what keeps the subscription price negotiable only in one direction. If none of the four operational scenarios above apply to your store, that dynamic is worth pricing into the comparison now rather than after the next price change.

Where a custom store outperforms Shopify

These are structural advantages that compound over time. They're not marginal improvements but different economics, different performance characteristics, and fundamentally different ownership of the asset.

The total cost of ownership inverts by year three

Shopify's Basic plan is $39 per month. The mid-tier Shopify plan is $105. Advanced is $399. On top of the plan, add the transaction fee: up to 2% per sale on non-Shopify-Payments processors. Add a realistic app stack of $75 to $150 per month for the tools most stores need: reviews, back-in-stock, subscription billing, advanced filtering, loyalty, and analytics beyond what the base plan exposes. A store on the Basic Shopify plan with a modest app stack pays $2,500 to $4,000 per year in platform costs before product costs, advertising, or operations. Over five years: $12,500 to $20,000 paid to Shopify and its app vendors, building no equity in the platform and no portability in the code.

A custom e-commerce build starts at $2,800 and runs $2,800–$5,000 for most stores. Add optional managed hosting at $30 to $75 per month. Total five-year cost: $3,600 to $8,500 depending on hosting tier, after which the site is yours indefinitely. The build cost is absorbed by year two or three on the Basic plan and somewhere around year one on Shopify mid-tier or above. After that crossover, every dollar saved compounds in your favor every month.

A checkout built for how you sell, not how Shopify sells

Every Shopify store below Plus runs the same checkout template. The field order, the upsell placement, the trust signals, the shipping option display: all controlled by Shopify, editable only within limits Shopify sets. Unlocking meaningful checkout customization requires Shopify Plus at $2,300 per month minimum. For reference, that is $27,600 per year in platform fees just to control what your checkout looks like.

Checkout is where the sale happens or doesn't. A custom checkout is built for your selling model: one-page flow for impulse purchases, multi-step for considered buys, guest checkout or required account creation, contextual upsells based on cart contents, gift message fields, subscription toggle at the product or cart level, local pickup selection, or any combination of those. A 1% improvement in checkout conversion rate on a $500,000-per-year store is $5,000 annually. The ability to optimize that flow without hitting a platform wall is critical.

Page speed that doesn't slow down as you add features

A clean Shopify store loads reasonably fast. The problem is what happens next. Every app you install adds code that your visitors have to download and run before they can use the page: the reviews widget, the loyalty bar, the exit- intent overlay, the live chat bubble. A product page that shows up in 1.8 seconds when new ends up taking 3.5 or 4 seconds after four or five apps are running. Each additional second means more visitors bouncing and leaving without buying. Google checks page speed and stability as part of your search ranking, and those checks get harder to pass as you add more apps because the extra code keeps piling up and can't be trimmed away.

A custom store sends the finished page directly to your visitors' browsers. There is no extra layer of code to load before the page appears. Features you add work behind the scenes (reviews pulled from the database, loyalty points calculated when needed, back-in-stock logic running on the server) and add no wait time for visitors. The page shows up in under one second no matter how many features run behind the scenes. What page speed means for rankings →

Search rankings built into your site structure, not a platform limitation

Shopify's web addresses are locked: products live at /products/, collections at /collections/, blog posts at /blogs/. You cannot change these. For a store selling handmade leather goods, Shopify produces /collections/wallets and /products/bifold-wallet: flat paths that look like every other Shopify store selling the same thing. A custom store lets you build site structures that reflect how people search and how your catalog is organized: /mens- accessories/wallets/bifold/, /leather-gifts/under-50/, /new-arrivals/spring- collection/. Those hierarchical paths tell Google how your products fit into categories and topics, which helps your pages rank higher than flat paths that all look the same.

Beyond just web addresses: Google uses behind-the-scenes labels to understand what your business is and what each page is about. On a custom store, those labels are written exactly how Google expects them. Every product page tells Google it's a product, shows review scores, lists the price, and confirms whether it's in stock. Every category page shows Google it's a list of items. Every breadcrumb navigation is labeled correctly. None of this requires paying for an app, none breaks when your platform updates, and none is hidden behind a higher subscription tier.

Owning the store, not renting access to it

A Shopify store is a subscription product in the most literal sense. Stop paying and the store goes offline. The code your developer "built" does not exist in portable form: it runs inside Shopify's infrastructure and cannot be moved. If you migrate to a different platform, you are rebuilding from scratch. If Shopify changes its pricing, you absorb it or rebuild. If Shopify discontinues a feature your checkout depends on, you adapt to what they decide. Every platform decision they make is a constraint you inherit as a tenant.

A custom store is files and a database you own outright: the PHP source code, the product catalog schema, the checkout logic, and the customer accounts table all on a server you control. Switch hosting providers because one is $20 cheaper per month. Hand the codebase to a different developer because you want to. Archive the store if the business pauses and bring it back online without starting over. The store belongs to you in the same way your business name and your inventory do. No platform permission is required to use it.

The common reasons people choose Shopify: addressed directly

Shopify costs nothing upfront

This is accurate and worth taking seriously. A custom e-commerce build requires upfront investment before any product sells. Shopify's $39/month gets you live with no build cost. That is an advantage when capital is constrained, when you are validating a product idea, or when you are uncertain the store will run long enough to amortize a build. None of that is wrong to weigh.

The frame that matters is not day one: it's the life of the store. Shopify's zero upfront cost does not mean zero total cost. It means the cost is spread differently — smaller payments that never stop, for a store you never own. If you are confident this store will be running in three years, the five-year comparison strongly favors a custom build. The upfront cost is a meaningful difference; the total cost comparison almost never favors Shopify.

I can manage Shopify myself without a developer

Shopify's admin interface is well-designed. Adding products, setting up discounts, updating shipping rules, processing orders, installing apps: a non-technical store owner can do all of it without touching code. That is DIY capability and one of Shopify's strongest competitive arguments. If independent self-management is a hard requirement, Shopify delivers it in a way a custom build does not fully replicate.

What a custom store provides instead: a managed hosting plan where routine operations (content updates, new product pages, configuration changes, seasonal adjustments) are handled by the same person who built the site, generally within a week of request. You are not managing the code yourself, but you are also not managing it. Day-to-day operations work without developer involvement. Structural changes require one. If true self-sufficiency without any developer dependency is the goal, that tradeoff is worth naming plainly.

Shopify can have me selling this week

Correct. A motivated person can have a Shopify store selling in a weekend. A custom e-commerce build takes six to ten weeks depending on catalog size and checkout complexity. If you need orders this Friday, Shopify wins on timeline: there is no version of a custom build that launches in five days without compromising on quality.

The follow-up question is what the store needs to do after this Friday. Six to ten weeks at the start of a store you plan to run for five years is a small fraction of its total life. Building it right once is cheaper than building it fast and rebuilding it later when the checkout becomes a constraint, the app fees compound past the point of sense, or a competitor with a faster, custom-built store starts ranking above you for the searches that drive your revenue.

The verdict

Bottom line on Shopify vs. custom

Shopify is the right choice when the platform is doing operational work: discounted shipping at high volume, synced POS inventory across retail and online, multi-channel selling orchestrated from one dashboard, or a product idea you are not sure will stick around. For those stores, the monthly cost buys infrastructure that earns its keep and the subscription is justified.

For a store you are building to own and run for years — a defined catalog, a customer who finds you through search, a business where the online store is a long-term asset rather than a rented experiment — the numbers consistently favor custom. The single most important deciding factor is the checkout. If Shopify's locked checkout template is acceptable for the life of your store and you are comfortable with a platform cut on every sale, you can make Shopify work. If you want a checkout built for how you sell, a store that loads fast as you add features, and a codebase that belongs to you and stops costing money every month after year three, custom is the answer.

Pricing

Custom e-commerce builds are quoted per project because catalog size, checkout complexity, and integration requirements vary too much for a flat price to mean anything. Standard stores — a defined catalog, Stripe checkout, customer accounts, discount codes, and an order management admin — fall in the $2,800–$5,000 range for most builds. Stores with subscription billing, complex variant logic, or third-party fulfillment integrations are scoped individually based on their needs.

After launch, optional managed hosting starts at $1,200/month and covers SSL renewal, nightly backups, uptime monitoring, security patches, and a monthly content edit allotment. If you would rather manage hosting yourself or move the site to an existing server, you take the source files and do exactly that — no lock-in contract, no transfer fee, no permission required. The store's recurring operating cost after launch is hosting. Nothing else.

For comparison: Shopify Basic at $39/month is $2,340 over five years — for a store you still don't own. Add a $100/month app stack and that climbs to $8,340 over five years. A custom build at $2,800 plus $30/month hosting runs $4,600 over the same period, for a store you own outright and can take anywhere.

Full pricing breakdown →

Questions about Shopify vs. a custom store

Yes, unless you use Shopify Payments exclusively. On the Basic plan, Shopify adds 2% to every transaction processed through an external gateway like PayPal or Stripe. That drops to 1% on the mid-tier Shopify plan and 0.5% on Advanced. Those percentages layer on top of whatever your payment processor already charges — so if Stripe takes 2.9% plus 30 cents, a Basic Shopify merchant using Stripe pays closer to 4.9% plus 30 cents per transaction. On a $50,000/year store, the Shopify-specific fee alone runs $1,000 before you count the monthly plan. Switch to Shopify Payments and the Shopify cut disappears, but you are locked to their processor and their rates with no leverage to negotiate independently. A custom store connects directly to Stripe or PayPal — no platform middleman, no percentage skimmed off each sale.
Shopify's base plans are deliberately lean. Features most stores actually need — customer reviews, notifications when products are back in stock, subscription billing, product bundles, advanced filtering so customers can narrow down what they see, popup overlays that appear as they leave, loyalty programs, and detailed sales analytics — almost always require paying for third-party apps. Each app costs $10 to $50 per month, and an established store typically runs four to eight of them. That's $40 to $400 per month in app fees on top of the plan price and on top of any sales fees. In a custom store, these features are built into the code once. There's no per-feature monthly rental, no app that breaks when Shopify updates its system, and no download-time penalty from four extra pieces of code running on every product page. The app fees are where Shopify's actual monthly cost becomes much higher than what you see in the advertised plan price.
For most small-to-mid-volume stores, yes — but the math depends on your specific plan and app spend. The Shopify plan alone costs $468 to $4,788 per year, Basic through Advanced. Add transaction fees if you are not on Shopify Payments, and a modest app stack of $100 per month, and a five-year total of $15,000 to $30,000 in Shopify operating costs is realistic. A custom build is a one-time project cost plus optional hosting. Most stores recoup the build cost relative to their Shopify spend by year two or three. The key calculation: add up your real annual Shopify spend — plan plus apps plus fees — multiply by five, and compare that number to a custom build estimate. For stores where Shopify's logistics network or POS integrations are critical to operations, the math is different because the platform is doing work beyond hosting the store.
For the features most stores use, yes: product catalog with variants and options, cart and checkout, discount codes and promotions, inventory tracking, shipping rate calculation, customer accounts and order history, and payment processing through Stripe or PayPal. Where Shopify's ecosystem is harder to replicate: its mature carrier network for merchants shipping hundreds of orders per day with negotiated rate discounts, built-in POS hardware with synced in-store and online inventory, and the breadth of its App Store for very niche third-party integrations. If your operation depends on Shopify Shipping rates at high volume or Shopify POS at a physical retail location, those are meaningful factors to weigh before moving. For a store with a defined catalog and a clear customer purchase journey, a custom build covers the full functional scope without any platform dependency or monthly subscription.
On Shopify, the checkout is locked. The flow, the fields, the layout, and the upsell mechanics are all controlled by Shopify and editable only within the limits they define — unless you are on Shopify Plus at $2,300 per month minimum. Every Shopify store below Plus runs the same checkout template with minor cosmetic differences. On a custom store, checkout is built for how you specifically sell: one-page or multi-step, guest checkout or required account creation, custom upsell logic tied to what is in the cart, gift message fields, subscription toggle at the product or cart level, local pickup selection, and any other flow your customer journey requires. Checkout is the highest-leverage part of an e-commerce funnel. Restricting it unless you spend $27,600 per year on a platform plan is a constraint that deserves to be named plainly when you are comparing options.
Shopify product pages carry the overhead of a shared platform: extra code, theme templates, and one additional script loaded per installed app. On a clean Shopify store with few apps, the page appears on mobile in about 1.5 to 2.5 seconds. Add four or five apps and that climbs to 3 to 5 seconds because each app adds code that has to run before your visitors can interact with the page. A custom store sends the finished page directly to your visitors' browsers: there is no extra layer to load before the page appears. The page shows up in under one second on mobile, no matter how many features run behind the scenes, because behind-the-scenes features don't add weight to the visitor's download. Every additional second of load time on a mobile product page means more visitors leaving without buying. Google also checks page speed and stability as part of your search ranking. The gap between Shopify and custom is structural: the more features you add, the slower Shopify gets.
Shopify handles the basic SEO checklist: page titles and descriptions you can edit, automatic sitemaps Google can read, and signals to Google about duplicate pages. For most stores selling in moderate-competition categories, those basics are enough to rank. The constraints are structural. Shopify forces products into /products/ paths and collections into /collections/: you cannot change these regardless of how your catalog would benefit from a different web address structure. For a store that sells running shoes, Shopify produces /collections/mens-running-shoes/; you cannot build /mens/shoes/running/ or any grouped path that tells Google your categories are related. Beyond web addresses: telling Google exactly what your products are (a product page), what's in stock, the price, and review scores requires app subscriptions on Shopify or code additions. On a custom store that information is built into the page itself, per product, with no app to break and no subscription to maintain. In competitive searches, that level of control over what Google sees is a measurable ranking advantage.
Shopify lets you export your product list, customer names, and order records as spreadsheets. You can get your data out: that's not the problem. The problem is your store won't go with it. The way your store looks, how the checkout works, which apps you installed, and all the custom touches you built into how it operates don't transfer anywhere. Leaving Shopify means you have to rebuild the store from scratch on the new platform. The spreadsheet export gives you your list of products and customers; it does not give you a working store you can run anywhere else. On a custom store, you own everything from day one: the source code that runs the site, the product list in a database, the checkout code, the customer records, the order history. To move to a cheaper host, give the site to a different developer, or change how it works, you don't need Shopify's permission or to keep paying Shopify. The store belongs to you outright.
A straightforward migration — importing your product list, customer records, and order history, rebuilding the site, and making sure old product links automatically forward to the new ones — usually takes six to ten weeks depending on how many products you have and how many features need to be rebuilt. Your product data comes from Shopify as a spreadsheet so bringing it in is mostly automated; the manual work is organizing your catalog in the new structure and making sure every web address that Google and your customers bookmarked automatically sends them to the right place on the new store. Stores with subscription products, tricky product options, or sales through multiple platforms take longer to plan and build. The new store launches only after it's fully built and tested: your current store stays live until the new one is ready, so there's no downtime. Your search rankings almost always hold through a careful migration and often improve because the new store loads faster.
When your operation depends on Shopify's ecosystem doing work beyond hosting the catalog and processing orders. High-volume fulfillment through Shopify's carrier network with negotiated shipping rates that materially reduce per-package cost. In-person retail through Shopify POS with real-time synced inventory across physical and online channels. Multi-channel selling across Amazon, eBay, Meta, and TikTok through Shopify's native integrations, managed from a single dashboard. Specific apps that run a critical part of your business with no clean equivalent on another platform. At that operational level, the recurring cost buys infrastructure that earns its keep. The case for moving is strongest when you are paying for plan, apps, and transaction fees and the platform is primarily functioning as a host for a catalog and a checkout processor: both of which a custom build covers without the monthly overhead and without the percentage taken from every sale.
A custom e-commerce store is a one-time project cost: quoted per store based on catalog size, checkout complexity, and the integrations required. After launch, the only ongoing cost is hosting. Optional managed hosting starts at $1,200/month and covers SSL, nightly backups, uptime monitoring, and content updates. Compare that to Shopify's Basic plan at $39/month, transaction fees on every sale if you are not using Shopify Payments, and a typical app stack of $50 to $150/month for features most stores need. A store on Basic Shopify with modest app spend pays $2,000 to $4,000 per year in platform costs before touching product, advertising, or operations. Over five years: $10,000 to $20,000 paid to Shopify and its app vendors, with no portable asset at the end. A custom build at $2,800–$5,000 plus $30/month hosting runs $3,600 to $8,800 over five years: for a store you own outright, that no platform can take offline, and that costs only hosting every month after the build is paid.

Know your actual Shopify number before you decide.

Tell me your monthly order volume, your current plan, and which apps you are paying for. I will show you the five-year cost comparison and whether a custom build pencils out for your store.

Get a free cost comparison