One of the most common questions we get asked is: when is the right time to start thinking about extensibility?
It’s a fair question. Early on, the pressure is to ship. Get the product out, validate the idea, find customers. Investing in hooks, APIs, and plugin architecture feels like a luxury when you’re still figuring out whether anyone wants what you’re building.
But here’s what we’ve seen over 15 years of working with startups and scaleups: the cost of not thinking about extensibility early is almost always higher than the cost of building it in.
The Case for Early
When you design with extensibility in mind from the start, you’re not building a plugin marketplace on day one. You’re making architectural choices that keep your options open. Modular components. Clear boundaries between services. A data model that can be extended without breaking what’s already there.
These choices cost very little when the codebase is small. They become enormously expensive to retrofit later when the codebase is large, the team has grown, and customers depend on the existing behaviour.
The Case for “Not Yet”
On the other side, there’s a real risk of premature abstraction. If you build extension points before you understand what people actually want to extend, you’ll abstract the wrong things. You’ll create flexibility where it isn’t needed and rigidity where it is.
The classic mistake is building a platform before you have a product. Nobody wants to extend software that doesn’t solve their core problem yet.
A Middle Path
What we’ve found works best is thinking in layers. At the exploration stage, extensibility means writing code that’s modular and disposable. You can throw away a failed experiment without pulling the rest of the system with it. At the traction stage, it means defending your core. New features and integrations are built through extension layers rather than bolted into the monolith. At scale, it means opening those layers up to your ecosystem.
The investment changes shape at each stage, but the mindset stays the same: build things that can grow without being rebuilt.
Where Do You Draw the Line?
This is where it gets interesting, and where we’d love to hear from people building products today:
- At what point did you (or would you) start investing in extensibility?
- Have you ever retrofitted extensibility into a product that wasn’t designed for it? What was the cost?
- Is there a stage where extensibility genuinely doesn’t matter yet?
Keen to hear your experiences.