Web Design · E-Commerce

Custom e-commerce vs Shopify: which one actually makes you more money?

An honest comparison for business owners who want to sell online without overpaying or under-building. No agenda — just math and trade-offs. // April 2026

The Real Question

This isn't about technology. It's about your business model.

Every "Shopify vs custom" article online is written by someone selling one or the other. We build custom sites — so let us be the ones to tell you when Shopify is the smarter choice. Because sometimes it is.

The real question isn't which platform is "better." It's which platform matches your revenue model, your growth trajectory, and your tolerance for ongoing costs. A business selling 50 handmade items doesn't need the same infrastructure as one processing 10,000 orders per month with custom pricing logic.

Here's what actually matters: total cost of ownership, transaction fees eating your margins, how much control you need over the customer experience, and whether you'll outgrow the platform before it pays for itself. Let's break each one down with real numbers.

Cost Comparison

Shopify isn't cheap. Custom isn't as expensive as you think.

Shopify's pricing looks simple on the surface: $39/month for Basic, $105/month for Shopify, $399/month for Advanced. But the real cost includes apps, themes, and transaction fees that add up fast.

The average Shopify store runs 6–8 paid apps. Reviews ($15/month), email marketing ($30/month), upsells ($20/month), advanced analytics ($30/month), subscription management ($50/month), custom fields ($10/month). That's $155/month in apps alone — on top of the platform fee.

Here's how the numbers actually look over three years:

  • Shopify Basic: $39/month platform + ~$100/month apps + premium theme ($350 one-time) + 2.9% + 30 cents per transaction. Three-year total at $30K/month revenue: $5,350 platform + $3,600 apps + $31,320 processing fees = ~$40,270
  • Shopify Advanced: $399/month platform + ~$150/month apps + 2.4% + 30 cents per transaction. Three-year total at $30K/month revenue: $14,364 platform + $5,400 apps + $26,280 processing fees = ~$46,044
  • Custom e-commerce: $15K–$30K build + $50/month hosting + Stripe at 2.9% + 30 cents (no additional platform fee). Three-year total at $30K/month revenue: $15,000–$30,000 build + $1,800 hosting + $31,320 processing = ~$48,120–$63,120

At $30K/month revenue, Shopify is cheaper over three years — but barely. And the gap narrows as revenue grows, because Shopify's percentage-based fees scale with your sales while custom hosting costs stay flat. At $100K/month revenue, custom wins decisively.

The crossover point is typically around $50K–$80K in monthly revenue. Below that, Shopify's lower upfront cost makes financial sense. Above that, you're paying a premium for a platform you may have already outgrown. Understanding what a business website actually costs helps you model this accurately for your specific numbers.

Transaction Fees

The fee you don't see until it's already gone.

Every e-commerce platform charges payment processing fees — that's unavoidable. Stripe, Square, and Shopify Payments all charge roughly 2.9% + 30 cents. That part is equivalent.

What's not equivalent: Shopify charges an additional transaction fee if you use any payment gateway other than Shopify Payments. That fee is 2% on Basic, 1% on Shopify, and 0.5% on Advanced — on top of whatever your payment processor charges.

This matters because Shopify Payments isn't available everywhere, doesn't support all business types, and locks you into their ecosystem. If you need PayPal, a specific gateway for B2B invoicing, or a regional payment method, you're paying double fees.

With a custom e-commerce website, you integrate whatever payment processor you want — Stripe, Square, Authorize.net, direct ACH — at their standard rate. No platform surcharge. No lock-in. If a better processor appears next year, you switch. On Shopify, switching means rebuilding your checkout workflow or accepting the penalty fee.

For a store doing $500K/year, that 1% Shopify surcharge on non-Shopify Payments transactions costs $5,000 annually — enough to fund a significant custom feature build.

Customization

Liquid templates vs writing whatever you want.

Shopify themes are built in Liquid — a templating language that sits between you and the actual HTML/CSS/JS. It's powerful for what it covers and completely limiting for what it doesn't.

Common customization walls Shopify users hit:

  • Custom product configurators: a car detailing shop needs customers to select vehicle make/model/year and see dynamic pricing. Shopify's product options are flat dropdowns — building a real configurator requires a custom app or embedded iframe.
  • Multi-step checkout flows: Shopify's checkout is locked down. You can't add custom fields, change the step order, or inject logic between steps unless you're on Shopify Plus ($2,300/month).
  • Custom pricing logic: volume discounts, contractor pricing tiers, subscription-with-one-time-add-ons — all require apps that each add monthly fees and page weight.
  • Non-standard product types: services with scheduling, digital products with license keys, or subscription boxes with rotating items all fight against Shopify's product model.

Custom code has no walls. Your checkout can do anything your business needs. Your product pages can display exactly the information that converts your specific audience. Your pricing logic can match whatever deal structure you've negotiated with your suppliers or customers.

This is where a web design team that writes code from scratch creates the most value — not in making things look different, but in making things work differently than any template allows.

SEO Control

Shopify's SEO is good enough — until it isn't.

Credit where due: Shopify handles basic SEO reasonably well. Automatic sitemaps, canonical tags, mobile responsiveness, and decent page titles out of the box. For most small stores, it's sufficient.

Where Shopify's SEO falls short:

  • URL structure: Shopify forces /collections/ and /products/ prefixes. You can't have /ceramic-coating-los-angeles/ — you get /products/ceramic-coating-los-angeles. That extra directory level dilutes topical relevance and wastes URL authority.
  • Duplicate content: Shopify creates duplicate URLs for products in collections (/collections/all/products/item AND /products/item). Canonical tags help, but crawl budget gets wasted on duplicates.
  • Blog limitations: Shopify's blog engine is bare-bones. No category pages, limited schema control, no custom post types. If content marketing drives your traffic, you'll outgrow it fast.
  • Page speed: Shopify's average Lighthouse performance score is 40–60, dragged down by their mandatory scripts, app injections, and theme bloat. A custom store routinely scores 90+.
  • Schema markup: limited to what apps provide. Proper on-page SEO requires Product, Offer, AggregateRating, BreadcrumbList, FAQ, and HowTo schemas — most Shopify setups cover one or two of these.

For businesses where organic search is a primary acquisition channel, these limitations compound over time. You can't build a competitive technical SEO foundation when the platform dictates your URL structure and page speed ceiling.

Speed & Performance

Every app you install makes your store slower.

Shopify's infrastructure is solid — global CDN, managed hosting, 99.99% uptime. No complaints there. The performance problem is the app ecosystem.

Each Shopify app injects its own JavaScript and CSS into your storefront. Reviews app: +200KB. Upsell popups: +150KB. Loyalty program: +300KB. Analytics: +100KB. Chat widget: +250KB. Suddenly your "fast" Shopify store is loading 1MB+ of third-party scripts before your product images even appear.

You can audit and remove apps, but then you lose the functionality you installed them for. It's a constant trade-off between features and speed.

Custom e-commerce sites don't have this problem because every feature is part of the codebase. Reviews, upsells, analytics, and chat are implemented as lean, purpose-built components — not generic SaaS widgets loading their own frameworks. The result:

  • Custom store: 200–400KB total page weight, 0.8–1.5s load time, Lighthouse 90–100
  • Shopify (optimized, few apps): 600KB–1MB, 2–3s load time, Lighthouse 60–75
  • Shopify (typical, 6+ apps): 1.5–3MB, 3–6s load time, Lighthouse 35–55

Google's data shows that mobile conversion rates drop 20% for every additional second of load time. If your Shopify store loads in 4 seconds instead of 1.5 seconds, you're losing roughly 50% of mobile conversions to abandonment — and mobile is over 70% of e-commerce traffic.

Scalability

Shopify scales up. Custom scales in every direction.

Shopify handles traffic spikes well. Black Friday, viral moments, flash sales — their infrastructure absorbs load without you thinking about it. That's a genuine advantage for businesses with unpredictable traffic patterns.

But scaling isn't just about traffic. It's about business complexity:

  • Multi-location inventory with different pricing per warehouse — possible on Shopify Plus, awkward on standard Shopify, trivial with custom code.
  • B2B and B2C on the same platform with different catalogs, pricing tiers, and checkout flows — requires Shopify Plus ($2,300/month) or two separate stores. Custom handles it in one codebase.
  • Integration with existing systems — your ERP, your warehouse management, your custom CRM. Shopify has APIs, but you're limited to what they expose. Custom code talks to anything.
  • International expansion with multiple currencies, tax rules, and localized experiences — Shopify Markets exists but imposes its own constraints. Custom code gives you full control over every market's experience.

The pattern: Shopify scales vertically (more products, more traffic) but struggles to scale horizontally (more complexity, more business logic, more integrations). If your growth plan is "sell more of the same stuff," Shopify scales fine. If your growth plan involves new business models, custom logic, or deep integrations, you'll hit walls.

Plugin Dependency

Your store runs on software you don't control.

The average Shopify store depends on 6–12 third-party apps. Each one is a business that can raise prices, change features, get acquired, or shut down. When any of those things happen, your store breaks until you find a replacement and migrate your data.

Real scenarios that happen constantly in the Shopify ecosystem:

  • Your reviews app gets acquired and the new owner raises prices 300%. Your 5,000 customer reviews are locked in their database.
  • A critical app pushes an update that conflicts with your theme. Your product pages display incorrectly during your busiest sales week.
  • Shopify changes their API. Half your apps break for days while developers scramble to update.
  • An app you depend on shuts down with 30 days notice. You need to find, evaluate, install, and migrate to an alternative while keeping your store running.

With a custom e-commerce build, every feature is part of your codebase. You own it. No third-party dependencies, no surprise price increases, no forced migrations. If a library needs updating, it happens on your schedule, with your testing, and your rollback plan.

This is the hidden cost of the Shopify app ecosystem: not the monthly fees (though those add up), but the operational risk of building your business on a stack of software you don't own and can't control.

When Shopify Wins

Honestly? Shopify is the right choice for a lot of businesses.

We build custom — but we'd rather tell you the truth than sell you something you don't need. Shopify wins when:

  • You're validating a product idea. You need to be live in a week, test demand, and iterate fast. A $39/month Shopify store with a free theme gets you selling in days. Custom code for an unvalidated idea is premature optimization.
  • Your budget is under $10K. A meaningful custom e-commerce build starts around $15K–$20K. If your total budget is $5K–$8K, Shopify plus a premium theme gives you a professional store at that price point.
  • You sell standard physical products with simple logic. T-shirts, candles, supplements, jewelry — if your products have sizes and colors and that's it, Shopify's product model fits perfectly. Don't over-engineer.
  • You need non-technical team members to manage products daily. Shopify's admin panel is genuinely excellent. Adding products, managing inventory, processing orders — the UX is polished and requires zero technical knowledge.
  • You want to launch now and migrate later. Start on Shopify, validate your market, build revenue, then invest in custom when your needs outgrow the platform. This is often the smartest path.

The businesses that shouldn't start with Shopify: high-volume stores where transaction fees eat margins, companies with complex pricing or product logic, brands where page speed and SEO are primary growth channels, and businesses that need deep integrations with existing systems.

Hybrid Approaches

You don't have to choose one or the other.

The "custom vs Shopify" framing is a false binary. Smart businesses often use both:

  • Custom frontend + Shopify as backend: Shopify's Storefront API lets you build a completely custom frontend while using Shopify for inventory, orders, and payments. You get full design and SEO control with Shopify's operational backbone. This is called "headless Shopify" and it's increasingly popular.
  • Custom site + Shopify Buy Button: build your marketing site and content hub with custom code for maximum speed and SEO, then embed Shopify's checkout for the transaction layer. Best of both worlds for content-driven brands.
  • Start Shopify, migrate the frontend: launch on Shopify standard, then progressively replace the frontend with custom code as your revenue justifies the investment. Your backend stays on Shopify; your customer experience becomes custom.
  • Custom everything except payments: build a fully custom store but use Shopify's payment infrastructure (Shopify Payments) or Stripe's hosted checkout for PCI compliance without handling card data yourself.

The headless approach is particularly compelling for businesses in the $50K–$200K/month revenue range. You eliminate Shopify's frontend performance penalties and URL structure constraints while keeping their battle-tested order management, inventory sync, and fulfillment integrations.

This hybrid model typically costs $20K–$40K for the custom frontend build, with ongoing Shopify costs for the backend. It's the sweet spot for serious e-commerce businesses that want both performance and operational reliability.

The Verdict

Total cost of ownership decides this — not preference.

Strip away opinions and look at the three-year math for your specific situation:

  • Revenue under $30K/month, simple products: Shopify wins. Lower upfront cost, sufficient features, faster launch.
  • Revenue $30K–$80K/month, growing complexity: it's a toss-up. Model both scenarios with your actual numbers. Consider headless Shopify as a middle ground.
  • Revenue over $80K/month or complex business logic: custom wins. Transaction fee savings alone justify the build cost within 12–18 months, and you gain full control over the customer experience.

The mistake most businesses make is choosing a platform based on today's needs and ignoring where they'll be in two years. If you're at $20K/month now but growing 15% monthly, you'll hit the Shopify ceiling within a year. Plan for that.

The other mistake: over-building. If you're launching your first product line and haven't validated demand yet, spending $25K on a custom store is a gamble. Spend $2K on Shopify, prove the market, then invest in the infrastructure your validated business deserves.

Either way, the platform is a tool — not an identity. Choose the tool that makes your business the most money over the timeframe that matters to you.

Not sure which path fits your business?

We'll run the numbers with you — Shopify, custom, or hybrid — and give you an honest recommendation based on your revenue, products, and growth plan.

botless.systems encrypted · los angeles
Botless Systems_