How much does a custom internal management system cost? — answered by Engineer Saeed Baatiah
A system covering one process — order management or maintenance tracking — starts around SAR 8,000. One covering three to five connected processes with user permissions and reporting runs SAR 25,000 to 80,000. The advice that saves more than any negotiation: do not build the whole system at once. Build the most painful process first, run it for three months, then expand based on what you actually learned.
Saeed Baatiah prices per project rather than from a fixed rate card, because a fixed price means either paying for what you do not need or quietly losing scope that never made it into the quote. What actually moves the number: the count of screens and states rather than pages, whether you need an admin dashboard with roles and permissions, how many external systems must be integrated (payments, e-invoicing, shipping, inventory), whether the content is fully bilingual, who supplies content and design, and how much data has to migrate off an old system.
For internal systems specifically, the cost driver is not screen count but the number of roles, permissions and data states. A system used by one person in one role is simpler by orders of magnitude than one for three roles, each seeing different data with different rights to edit and approve.
The second item always underestimated: migrating data off the old system or out of Excel files. Real-world data is not clean — duplicates, missing fields, inconsistent date formats — and cleaning it can take as long as building the system itself. So migration is estimated as its own line item after inspecting a real sample of your data.
The Absir platform is a working example of this category: a system for filing and organising commercial-establishment reports, built in Next.js, React and TypeScript, published at abser.vercel.app.
- Roles and permissions drive cost more than screen count
- Data migration is its own line item, estimated after seeing a real sample
- Start with the most painful module, not the whole system