Not every business problem needs software. The trap of "we need an app for that" is that building software creates costs long after launch: hosting, updates, security patches, bug fixes, support and future changes. Before evaluating custom vs off-the-shelf software, the useful question is whether the problem needs code at all.
Start with the problem, not the software
A useful decision ladder asks: what is the minimum intervention that solves the business problem? Software is one answer. It is not always the best answer.
The ladder is:
- Do nothing — the current manual process may be fine.
- Improve the process — fix the workflow before automating it.
- Buy an existing tool — use off-the-shelf software.
- Integrate what you have — connect existing systems.
- Build custom software — when differentiation justifies the investment.
Working through the ladder often reveals that the business needs less code than originally planned.
Option 0: Do nothing
Some inefficiencies cost less to accept than to fix. A manual process that runs monthly, affects three people and takes an hour is probably fine. The cost of analysis, implementation, testing, training and future changes can exceed the labour cost saved.
When doing nothing works
- The task is infrequent (quarterly financial reports, annual reviews).
- Volume is low (processing five orders per week by hand may be faster than building an ordering system).
- The process will change soon (automating a workflow that may be replaced in six months is waste).
- Manual judgment is required (some decisions are not algorithmic).
- Compliance or audit trails require human oversight.
A ten-person company tracking expenses in a shared spreadsheet may not need expense management software. The annual cost of a SaaS tool, onboarding, training, integration and process change can be larger than the time cost of manually reviewing expense reports once per month.
The opportunity cost of building software is what you are not building instead. Choosing "do nothing" frees resources for higher-value work.
Option 1: Improve the process
Automating a broken process preserves the underlying problem. Mapping workflows before writing integrations often reveals unnecessary handoffs, duplicate data entry, unclear ownership or steps that exist only because "we've always done it this way."
Process improvements that remove the need for software
- Eliminate unnecessary approvals: if three people sign off on a routine purchase, reducing it to one can save more time than building an approval workflow.
- Clarify decision rules: unclear criteria create unnecessary back-and-forth. Documenting the rule may be enough.
- Consolidate sources of truth: duplicate records often signal unclear ownership rather than technical problems.
- Reduce handoffs: work that bounces between teams or systems creates delays. Redesigning ownership can fix latency without software.
A shipping workflow that required manual re-entry from one system into another was slow. The initial request was for integration software. The actual fix was giving the warehouse team direct access to the first system and removing a redundant approval step. No code required.
Option 2: Buy an existing tool
Standard business processes benefit from standard software. Accounting, payroll, email, calendars, project management, CRM and collaboration tools have mature off-the-shelf products. The vendor owns hosting, updates, security, support and maintenance.
When buying makes sense
- The process is common across thousands of businesses (invoicing, timesheets, email).
- Speed matters (need a working system this week).
- Budget is constrained (subscription costs spread over time).
- Maintenance burden would be high (security, compliance, infrastructure).
- The market already has strong products with active ecosystems.
The tradeoff is that the business accepts the product's workflow, pricing model and roadmap. Some SaaS products increase pricing as the business scales. Others remove features, change terms or get acquired. The business loses control but gains speed and reduced operational burden.
Hidden costs of off-the-shelf software
Total cost is not just the monthly subscription:
- Pricing increases: per-user or per-transaction pricing can grow faster than expected.
- Premium tiers: essential features may require expensive add-ons.
- Implementation: setup, configuration, data migration and training take time.
- Integration: connecting the tool to existing systems may require middleware, APIs or custom connectors.
- Process compromise: staff may work around the tool using spreadsheets and manual steps.
- Vendor lock-in: migration cost increases over time as data and workflows accumulate.
Option 3: Integrate what you already have
Many businesses accumulate good individual products that do not communicate well. Custom integration can sometimes create more value than replacing everything with a unified platform.
When integration wins over replacement
- Existing tools work well individually but create duplicate data entry.
- Staff use multiple logins and manual export/import workflows.
- Reporting requires pulling data from several sources manually.
- No single replacement product covers all existing functionality.
A business using separate CRM, accounting and inventory tools built a small custom dashboard that pulled key metrics from all three. The cost of integration was lower than migrating to a unified platform, retraining staff and accepting feature compromises.
Integration complexity
Integration is only simple when the systems have clean APIs, stable data models and compatible update cycles. Real-world integration often encounters:
- Rate limits, authentication changes and breaking API updates.
- Data that does not map cleanly between systems.
- Timing problems (one system updates hourly, another updates nightly).
- Error handling (what happens when the connector breaks?).
- Maintenance (APIs change, credentials expire, business rules evolve).
A three-system integration can create three points of failure. A six-system integration creates cascading complexity. Integration makes sense when the value is clear and the number of connections is small.
Option 4: Build custom software
Custom development becomes compelling when the workflow itself differentiates the business or when off-the-shelf products require excessive compromise.
When custom software is justified
- Unique workflow: the process is genuinely differentiated and central to the business model.
- Competitive advantage: the software encodes operational knowledge competitors do not have.
- Control over experience: customer-facing interactions must reflect specific brand or service decisions.
- Integration is the blocker: connecting existing systems has become more complex than building a unified tool.
- Long-term ROI is clear: savings or revenue gains justify the build and maintenance cost.
A logistics company built custom routing software because their delivery constraints (time windows, vehicle capacity, driver schedules, customer priorities) did not map to any off-the-shelf product. The software became a competitive moat.
For a detailed comparison of when custom software makes sense vs when to use existing products, see Custom Software vs Off-the-Shelf.
Compare total cost, not just build cost
Sticker price is misleading. A SaaS tool with a $500/month subscription costs $30,000 over five years before adding implementation, training, integrations and premium features. Custom software with a $50,000 build cost may also require $10,000/year in hosting, updates and changes.
What to include in total cost
| Cost Category | Off-the-Shelf | Custom Build |
|---|---|---|
| Initial | Subscription, setup, data migration | Discovery, design, development, testing |
| Recurring | Monthly/annual fees, user licenses | Hosting, monitoring, backups |
| Maintenance | Vendor-managed updates | Bug fixes, security patches, updates |
| Changes | Feature requests, premium tiers | New features, workflow changes |
| Integration | APIs, middleware, connectors | Built-in or custom integrations |
| Training | Staff onboarding, help resources | Documentation, user guides |
| Migration | Export data, move to new vendor | Refactor, rebuild, or replace |
Also estimate the business cost of delays, manual work, errors and missed decisions. A clunky process that costs ten hours per week of staff time has a real cost that compounds over years.
A practical decision framework
Use this checklist when evaluating whether to build, buy, integrate or do nothing:
- What is the actual business problem? Describe the pain without assuming a software solution.
- How often does it happen? Daily problems justify more investment than monthly ones.
- How many people are affected? Widespread pain has more leverage than isolated cases.
- What is the manual cost? Calculate labour hours, error rates, delays and missed decisions.
- Can we improve the process first? Remove unnecessary steps before automating.
- What existing tools are available? Check the market before assuming a custom build.
- What is the five-year cost? Include subscriptions, maintenance, hosting, changes and opportunity cost.
- Who will maintain it? Software is not a one-time expense.
- What is the business value? Measure in saved time, increased revenue, reduced errors or faster decisions.
- What is the smallest useful version? Start with the minimum that solves the core problem.
The goal is the business outcome
Software is a tool, not a goal. The useful question is not "Should we build this?" but "How do we solve this business problem with the least complexity and cost?"
Sometimes the answer is a spreadsheet, a process change, a $50/month SaaS product or a well-scoped custom project. Start with the problem, consider all options and choose the smallest intervention that works.
Published by the DSSS Engineering Team. For corrections or topic requests, use the contact page.