BEAM

Seedlight BEAM: one place to run your whole eCommerce, with AI agents that know your business →

← All articles
eCommerceSzymon Żynda12 min readUpdated:

12 signs your store has outgrown its SaaS platform

Twelve signs a SaaS platform is limiting your store, what each one really costs, and a simple framework for when to migrate and when to stay.

A store outgrows SaaS when the platform starts costing more than it returns and you cannot reverse that arithmetic from inside it: fees climb with every good month, the features you need call for workarounds, and your data, your checkout and your pace of change stop being yours to control. Below are twelve signs across three growth ceilings, each with two things: why it hurts and what it actually costs. What matters more than the number of signs is their class, so we start with the framework for reading them.

Key takeaways

  • The count of signs is not what decides, their class is. Friction costs hours and cash, drag costs sales you never see in a report, and a blocker makes a business model you have already planned impossible. One blocker outweighs eight frictions.
  • The signs fall into three ceilings: cost (transaction fees, apps, plan tiers), features and pace (checkout, B2B logic, API limits, the vendor roadmap), and data and exit (product data model, performance, export, nowhere to build an edge).
  • You can price your friction in half an hour from your own invoices and team hours. That number, set against a three-year TCO, is an argument. A catalogue of frustrations is not.
  • The same set of signs means different things before repeatable sales, during steady growth and ahead of expansion. Your stage is part of the decision, not background to it.

One caveat up front: SaaS is not an inferior kind of platform, it is a different trade-off between control, cost and speed. This article is not a push to leave. It gives you the vocabulary to name the friction and a threshold at which it is worth running the numbers instead of just sensing that something is off.

How to read this list: three classes of signal

Most lists on this topic stop at naming problems, and the decision still ends up being made on instinct. So before you walk the twelve signs, give each one a class. The class tells you what that sign actually takes from you, and that is the only thing you can honestly weigh against the cost of migrating.

CLASS DECIDES, NOT COUNTFRICTIONtakes hours and cashoptimise, do not migrateDRAGtakes sales that never happenedthree at once → run the TCOBLOCKERtakes the feasibility of the planone is enough → decideone blocker outweighs eight frictions: weigh the class, do not count the signs
  • Friction: costs team hours and cash but closes no doors. It accumulates quietly, spread across twelve invoices and hundreds of small tasks.
  • Drag: costs sales that never show up in a report, because they are sales that never happened. The hardest class to quantify and the one most often skipped.
  • Blocker: makes a business model you have already planned impossible. No budget and no better process gets around it.
ClassWhat it takesHow to measure itDecision threshold
FrictionHours and cashLast twelve months of invoices plus workaround hoursIt grows faster than revenue
DragSales that never happenedStep-by-step funnel, tests, the backlog of rejected ideasThree drags from different ceilings at once
BlockerWhether the plan is feasible at allA plain “not possible” from the vendor or the builderOne is enough

The class of a signal tells you what you are losing. The threshold belongs to the class, not to the number of signs.

Rule of thumb (our editorial practice, not a research finding): one blocker is enough to decide. Three drags from different ceilings is the moment to run a TCO. Friction alone, even eight items of it, calls for optimisation, not migration.

Ceiling one: costs grow faster than sales

The wallet speaks first, because its signals are the easiest to spot and the easiest to wave away. Taken separately, each looks like the ordinary price of success. Together they form a curve that rises faster than sales do.

Sign 1. The revenue share grows with every good month

Why it hurts: paying a percentage of sales is comfortable at the start, because the cost follows the result and you risk nothing going in. At scale the same mechanism turns against you: the better you sell, the more you hand over, even though the work on the vendor side has not changed.

What it costs: the amount is right there in your statements, which makes this the easiest sign on the list to price. Pull twelve months of platform and payment fees and set the total against the annual cost of running an owned platform, not against the price of building one. Class: friction that scales with your own success.

Sign 2. The app list grows, and the cost and risk grow with it

Why it hurts: every missing feature gets closed with an app. Cheap one by one, together they become a second budget and a second failure surface. Apps conflict with each other, add scripts to your pages, change their pricing, occasionally disappear, and their authors owe your store nothing.

What it costs: the sum of the subscriptions is only part of the bill. The rest is the hours spent working out which plugin broke the cart after an update, plus the risk that a critical part of your sales process depends on a company you know nothing about. Class: friction with a tail of operational risk.

Sign 3. The one feature you need sits in a higher tier

Why it hurts: plans are bundles, so to get one thing you buy twenty you will never use. That is not a flaw in itself, until it happens every quarter and until you start designing processes around what your tier allows rather than around what sells.

What it costs: the gap between tiers times twelve, plus a quiet shift in how the team thinks: ideas start with “are we allowed to” instead of “will this work”. Class: friction, and drag when dropping the feature changes the way you sell.

Sign 4. Cost per order rises instead of falling

Why it hurts: this is not another sign but the test that sums up the whole cost ceiling. As scale grows, the cost of handling one order should fall, because fixed items spread across more transactions. If it rises, your bill is dominated by items tied to revenue rather than to work performed.

What it costs: the test itself costs nothing, but it changes how you read the three signs above. Without it, fees and apps look like the natural price of growth. With it, you can see the ceiling. Class: a metric rather than a sign; calculate it once a quarter.

Ceiling two: features and the pace of change

The second ceiling shows up when the team stops asking how to do something and starts asking whether it can be done at all. Signals in this group rarely appear in the cost line. They appear in the calendar and in the number of ideas that never shipped.

Sign 5. The checkout cannot work the way your sales process needs

Why it hurts: checkout is the last few dozen seconds in which a customer can change their mind, and it is also the most tightly sealed part of a SaaS platform. That makes sense from the vendor side, since payment security and system integrity depend on it. From your side it means the most sensitive stretch of the buying path is out of reach.

What it costs: sales that appear in no report, because they are orders that never happened. Before you call this a ceiling, run our ten-point checkout audit and count how many of those points you can actually fix on your current platform. If most of them come back as “not possible”, that is your sign. Class: drag.

Sign 6. Your B2B pricing rules cannot be expressed

Why it hurts: wholesale runs on per-customer prices, volume discounts, selling units, payment terms, credit limits and order approvals. Platforms designed for D2C build their pricing model around one list price and promotions, so contract logic has to be bolted on from outside or handled by hand.

What it costs: either you keep a second sales channel alive outside the store (spreadsheets, email, phone calls), or you turn away customers whose terms you cannot serve. What that logic looks like with a single source of truth we cover in the piece on B2B store and ERP integration. Class: a blocker if wholesale is on the plan for the next eighteen months, friction if it is a rounding error in revenue.

Sign 7. API limits close off the integrations you need

Why it hurts: request limits, missing events and no access to the layer you need to integrate are all rational from the vendor side, because they protect infrastructure shared by thousands of stores. The catch is that they are drawn around vendor priorities, not around your processes.

What it costs: middlemen in the bill and in the failure chain, and above all a sync rhythm set by the limit rather than by your sales. Stock refreshed less often than your order pace requires ends in overselling, cancellations and refunds. Class: drag, and a blocker when the ERP or the warehouse is the heart of operations.

Sign 8. Changes wait for the vendor or for a workaround

Why it hurts: on a boxed platform your roadmap is a subset of someone else’s. Things that are a one-day task in another architecture become a vote in a feature request tracker or a workaround through three plugins and a spreadsheet export. Nobody books it as a cost, because no invoice arrives for it.

What it costs: pace, meaning the number of experiments your team gets through in a quarter. A team that spends more time negotiating with the tool than building with it hands the advantage to competitors who test faster, even when their ideas are worse. Class: friction that quietly turns into drag.

Ceiling three: data, control and the cost of leaving

The third ceiling arrives last and hurts longest, because it covers what a demo never shows: the data model, behaviour under load, and the terms on which you could one day walk away.

Sign 9. The product data model does not fit your assortment

Why it hurts: a boxed platform models products around the intersection of what thousands of stores need: a product, variants, a handful of attributes. Goods sold by the metre, in bundles, with configuration, with technical files or with a price derived from parameters fall outside that model and end up in description fields.

What it costs: attributes buried in a description stop being data, so filters disappear, channel feeds break, and every change to a spec or a price list comes back as manual work. This sign is sneaky, because for a long time it looks like a content problem. Class: a blocker if your catalogue already looks like that, drag if you are only planning such an assortment.

Sign 10. Peak performance depends on architecture you do not control

Why it hurts: at a sales peak a store does not fail for one reason, it breaks layer by layer, and on SaaS most of those layers are out of your hands. You can slim down the theme and cut a few apps, but you cannot change how the platform renders pages and caches data.

What it costs: conversion on exactly the days when traffic is most expensive, which is during campaigns and at seasonal peaks. What breaks and in what order we break down in the article on what breaks at 10x traffic. Class: drag, and a severe one seasonally.

Sign 11. The export is lossy and the exit cost grows every month

Why it hurts: data you cannot export intact (order history, variant relationships, content, redirects, customer consents) turns into a deferred cost. It grows with every new product, every new customer and every year of search visibility, and you only pay it on the day you decide to leave.

Here the law has moved in the customer direction. The EU Data Act (Regulation 2023/2854) has applied since 12 September 2025 and requires providers of data processing services, including Software as a Service, to make open interfaces available and to export data in a commonly used, machine-readable format. Switching charges are due to be withdrawn from 12 January 2027, with cost-covering charges allowed during the transition (European Commission, as of August 2026).

Two caveats, because this is law and not a guarantee. First, whether and how far a specific platform falls under those provisions is a question for your contract and your lawyer, not for an article. Second, the Digital Omnibus package proposed amendments to these rules, and as of July 2026 they were still working their way through the legislative process.

What it costs: the regulation lowers one component of the exit cost, the charges and the data format, but leaves the largest one untouched: rebuilding integrations, processes and search positions. Class: a deferred blocker, since the longer you wait the more it costs.

Sign 12. There is nowhere to build a product advantage

Why it hurts: when an entire category runs on the same box, the digital product stops being a differentiator. Same paths, same mechanics, same checkout. What is left to compete on is price and ad budget, two things where the bigger player wins.

What it costs: concrete ideas stay on the “someday” list: a configurator, loyalty wired into pricing, a subscription with your own rules, post-purchase service inside the customer account. This is the one sign easily confused with a whim: if you cannot name the mechanic and the number it should move, it is not a sign. Class: drag when the mechanic is named, and nothing at all when it is not.

Price your friction: a half-hour worksheet

Signs without a number are an opinion, and opinions do not win budget conversations. This calculation turns them into an argument, and it needs nothing but your own data: no benchmarks from the internet, no industry averages borrowed from someone else.

  • Fees: twelve months of platform and payment gateway fees, straight from the statements.
  • Subscription and tier: the annual plan cost, and separately the gap to the lower tier if you bought the higher one for a single feature.
  • Apps: the annual total of every subscription, including the ones the team has forgotten about.
  • Workaround hours: monthly hours of manual work that a capable platform would remove, times a real hourly rate, times twelve.
  • Sales lost to drag: do not guess. Measure the funnel step by step, estimate a range, and write it down as a range.

The first four lines give you a hard annual friction cost in euro. The fifth stays a range, and present it as a range to your board as well, because one number pulled out of thin air undermines the credibility of everything else. Set the total against a three-year TCO, not against the build price alone.

Practical takeaway: if your annual friction cost is lower than a year of running an owned platform, and none of your signs is a blocker, the decision is to stay and optimise. That is the most common outcome of this calculation and there is nothing embarrassing about it.

Same signs, different decision: your stage

The number and class of signs is only half the answer. The other half is the stage your company is at, because the same set means different things in three different situations.

  • Before repeatable sales: even a blocker can be worth working around. A migration freezes capital and team attention for months, and you need both to find out whether the product sells.
  • In steady growth on one channel: friction and drag matter most, because they multiply against revenue. This is the stage where the friction worksheet speaks loudest.
  • Ahead of expansion (new markets, wholesale, marketplace, a new sales model): blockers matter most, because they decide whether the plan is feasible at all, not what it costs.

Add one correction for horizon. Read the signs on an eighteen-month view rather than against today, because that is roughly how long it takes from the first conversation about changing platforms to running calmly on the new one. A blocker that arrives a year from now is part of the decision you make today, not a problem for later.

When staying on SaaS is the honest answer

We build owned platforms and we will still say it plainly: in several situations migrating is the wrong call, even when the list of signs looks alarming.

  • Your catalogue and processes fit the platform standard, and sales run through one predictable channel.
  • You have neither a team nor a partner to maintain an owned platform. A platform nobody looks after is a worse problem than fees.
  • All of your signs are friction, and the annual friction cost is lower than a year of running your own solution.
  • You are before repeatable sales, or in the middle of another large project that is already taking up the team’s attention.
  • The only argument for changing is that “the bigger players do it this way”.

In each of those cases the cheapest good decision is often to change nothing and redo the calculation in a year, with the same list and the same worksheet. If the signs shift towards drag and blockers, you will see it in the numbers rather than in the mood.

What does not count as a sign

A few things regularly pass for a reason to migrate without being one:

  • A bad week: a failed plugin update and a frustrated team is an incident, not a ceiling. You recognise a ceiling because it comes back every month.
  • Headless without a named problem: fashion costs the same as a genuine need and returns nothing. What actually settles the choice we lay out in the piece on nine criteria for choosing a platform.
  • Weak marketplace sales: that is usually a diagnosis of the channel, not the platform. Before starting a migration, check your listings, content and logistics inside the channel itself; our sister agency has gathered that in a guide on how to start selling on Amazon.
  • Advice from a builder who earns on builds: that includes us. Run every such recommendation, ours included, through the friction worksheet.
  • How the store looks, with no mechanic named: “we want to look different” is a job for a designer, not a reason to change platforms.

What we do when the numbers say build

If this list and the worksheet leave you with a blocker or three drags, that is where we come in. Seedlight builds eCommerce platforms with the BEAM framework, and the signs in this article are exactly what we work on: a data model designed around your catalogue, control over checkout and integrations instead of API ceilings, and performance assumed during the Engineering stage rather than rescued after the first peak.

Changing platforms does not have to mean pausing sales: how we sequence that is covered in migration without stopping sales, and the scope and ranges live on our eCommerce platform service pages. We also hold to the section above: if the numbers say stay on SaaS, we will say so plainly instead of selling a build that will not pay for itself.

In our process that decision is made during the Blueprint: we test your signs and your numbers against the arithmetic, and the recommendation comes out of that, not the other way around.

Outgrowing SaaS is not a failure of the platform or of you. It is a natural stage: a tool that was perfect at the start stops being perfect at scale. The skill is recognising that moment with the worksheet in hand, rather than a year after it, once the exit cost has grown along with your catalogue and your customer base.

FAQ

How many signs mean it is time to change platforms?

The count alone does not decide. One blocker, meaning a limitation that makes your planned sales model impossible, is enough. Three drags from different ceilings is the moment to run a TCO. Friction alone, even eight items of it, means optimisation rather than migration.

Is a rising revenue share reason enough to migrate?

Usually not on its own. It is friction worth pricing across a full year and setting against the annual cost of running an owned platform, not against the price of building one. It becomes a reason when cost per order rises instead of falling and drags from other ceilings come with it.

Does the Data Act mean I can leave a SaaS vendor at no cost?

Not in that simplified form. The EU Data Act has applied since 12 September 2025 and sets obligations on open interfaces and data export in a commonly used format, with switching charges due to be withdrawn from 12 January 2027. How far it applies to a specific contract is a question for a lawyer, and the largest part of the exit cost, rebuilding integrations and search positions, still sits with you.

Which ceiling will hit me first?

It depends on the model. D2C brands usually feel the cost ceiling first, because fees rise with every good campaign. Companies with a wholesale arm hit the feature ceiling, because contract pricing and order approvals rarely fit the standard. Marketplace operators run into a ceiling almost from day one.

How do I work out whether migrating pays off?

Add up annual fees, subscription, apps and workaround hours, and record sales lost to drag as a range rather than a single figure. Set the result against a three-year TCO. In our process that calculation happens during the Blueprint, together with a recommendation on whether changing is worth it at all.

Journal

Szymon Żynda

Co-founder of Seedlight · eCommerce platforms, AI, SEO and GEO

More by this author

Newsletter

The Journal, straight to your inbox

New articles and lessons from real builds, every now and then. No spam, unsubscribe with one click.