The most expensive mistake: building what already exists
One of the most common mistakes we encounter when entering new projects is an internal webapp that reinvents functionality available in any SaaS for €30/month: user authentication, permission management, email notifications, PDF generation or invoicing.
Each of those features takes days to develop and weeks to debug. A company that builds its own invoicing system when it could use Stripe, Holded or Factura Directa is spending between €20,000 and €60,000 on something that doesn't differentiate it from any competitor.
When it makes sense to build custom
Building makes sense when the process you're going to automate is the source of your competitive advantage. If your order assignment algorithm, your data analysis methodology or your client workflow is what differentiates you, a standard SaaS limits you, or forces you to adapt to how they think you should work.
It also makes sense to build when usage volume makes SaaS costs unsustainable. A company with 500 active users might pay €3,000/month in SaaS licenses that their own webapp would resolve for €500/month in infrastructure.
Total cost of ownership (TCO) analysis over 3 years
The fair comparison is not 'development cost' vs 'monthly SaaS price'. It's total cost of ownership over 3 years:
- SaaS: (monthly price × 36) + customization cost + integrations + data migration + vendor lock-in risk.
- Custom: initial development + hosting/infrastructure × 36 + maintenance + security updates + team cost for product evolution.
- In most cases we analyze, the custom solution starts being cheaper than SaaS between 18 and 30 months of use.
The hybrid model: build on top of SaaS APIs
The smartest strategy in most cases is neither 'buy all SaaS' nor 'build everything custom'. It's building unique business logic on top of SaaS APIs for standard functions: Stripe for payments, Supabase for authentication and database, SendGrid for emails, Mux for video, Twilio for SMS.
This way you get full control over the experience and business logic while delegating commodity infrastructure to providers who maintain and scale it better than any small internal team.
Frequently asked questions
The maintenance cost of a well-built webapp ranges from 15% to 25% of the annual development cost. A webapp that cost €40,000 should be maintained for between €6,000 and €10,000/year including security updates, dependencies and minor improvements. If maintenance cost exceeds 30%, it's a sign of technical debt or poor initial design.
An internal webapp to automate a specific process takes between 8 and 16 weeks. A platform with client access, payments and an admin panel takes between 16 and 28 weeks. These timelines assume a team of 2-3 people and clear scope definition before starting.
Data migration is the biggest hidden cost when switching from SaaS to custom development. Before committing to any SaaS, verify: can I export my data in CSV or JSON at any time? Is there an API to access all my data? If the answer is no to both, vendor lock-in should be a determining factor in the decision.