Every growing business eventually hits the wall where spreadsheets become untenable and a proper system becomes necessary. The traditional advice is to buy an off-the-shelf ERP — SAP, Oracle NetSuite, Microsoft Dynamics 365, or the open-source Odoo. Having designed and built bespoke ERP systems from scratch for manufacturing, distribution, and professional services companies, I've developed a more nuanced view.
What an ERP Actually Is
ERP stands for Enterprise Resource Planning. At its core, an ERP integrates the information flows across an organisation's core business processes into a single system: inventory and warehouse management, purchase and sales orders, invoicing and accounting, HR and payroll, production planning, and CRM. The key value is data centralisation — a sales order automatically affects inventory levels, triggers a purchase order if stock is low, and flows into accounting without re-keying.
The Case for SaaS ERP
The major SaaS ERP platforms have genuine strengths that bespoke systems struggle to match out of the box:
- Regulatory compliance: SAP and Dynamics include region-specific tax rules, audit trails, and financial reporting standards built in.
- Best-practice workflows: decades of accumulated industry knowledge are baked into default configurations.
- Ecosystem: hundreds of certified integration partners, pre-built connectors to banks, logistics providers, and payment gateways.
- Vendor SLAs: guaranteed uptime, security patching, and disaster recovery — your IT team doesn't have to own any of that.
For a mid-market company with straightforward processes and the budget for enterprise software, a correctly configured SaaS ERP is often the right call.
Where SaaS ERP Breaks Down
The problems typically emerge between 12 and 36 months after go-live:
- Per-seat licensing compounds as the team grows. NetSuite's base licence plus full-access user seats can reach six figures annually for a 50-person team.
- The system imposes its process model on the business rather than the other way around. Workarounds accumulate — custom fields, complex approval chains and manual export-reimport steps defeat the point of integration.
- Customisation is expensive and fragile. SAP ABAP developers and Dynamics ISV partners quote high day rates; custom code breaks on vendor upgrades.
- Data is locked in the vendor's schema. Generating a non-standard report often means exporting to Excel, which is exactly the behaviour the ERP was supposed to replace.
The Bespoke Alternative
A modern bespoke ERP is built specifically for a company's exact processes and data model. The technology choices have matured considerably: Next.js with TypeScript for the frontend, Supabase (managed Postgres) for the database with row-level security enforcing multi-tenant access control, and Supabase Realtime for live dashboard updates across the team.
Typical bespoke ERP stack (2025):
Frontend: Next.js + TypeScript + Tailwind CSS + AG Grid (data tables)
Backend: Supabase (Postgres + Row Level Security + Realtime + Storage)
Auth: Supabase Auth (email/password + SSO via SAML)
Notifications: WhatsApp Business API / Twilio for mobile alerts
Hosting: Vercel (frontend) + Supabase cloudWith this stack, a small engineering team can deliver a full-featured ERP with inventory management, purchase and sales orders, role-based access control, and mobile notifications in under three months — as we did for a manufacturing client whose entire production workflow is now automated end-to-end.
Bespoke ERP Trade-offs
Bespoke isn't free of downsides. The main risks:
- Vendor dependency shifts to the engineering partner. If the relationship breaks down and the code isn't well-documented, you have a problem. Mitigate this with clean architecture, comprehensive docs, and an escrow arrangement for the source code.
- You own the compliance burden. Tax rules, audit log requirements, and data retention policies must be implemented explicitly. Third-party libraries and Supabase's Postgres audit extension help, but it's not automatic.
- Time to first deploy is longer than signing up for NetSuite. Expect a proper discovery phase, not a two-week sprint.
Decision Framework
After a number of these projects, here's the rough heuristic I use:
- Standard processes (generic CRM, basic invoicing, payroll): use SaaS — HubSpot, Xero, QuickBooks handle these better than anything bespoke will.
- Highly specific processes that won't fit a standard template (custom manufacturing workflows, real-time logistics tracking, multi-warehouse allocation rules): bespoke.
- Data-intensive operations requiring custom reporting and analytics: bespoke, or a SaaS ERP with a separate data warehouse and BI layer.
- Fewer than 10 users, early-stage business: spreadsheets and Notion until you actually know what you need. Building an ERP for a business model that's still changing is expensive.
Tip
The best bespoke ERP projects I've worked on started with a thorough process-mapping exercise before a single line of code was written. Understanding the actual data flows and decision points in the business is worth more than any technology choice.
The Direction of Travel
The gap between SaaS and bespoke is narrowing. Platforms like Supabase, Neon, and PlanetScale have commoditised the database layer. Component libraries like ShadCN and AG Grid have closed the UI quality gap. AI-assisted code generation accelerates routine CRUD development. The result is that what would have cost $300k to build five years ago can be built for a fraction of that today — which changes the ROI calculus for bespoke significantly.