Services AI automation & agentsWebsite developmentMobile applicationsCustom softwareBots & integrations Work Pricing About Insights Contact Start a project
2026-09-27 · Architecture · 5 min read

Automation or custom software? A decision rule

When to wire tools together, when to build a system of record, and why the wrong choice costs more than either option.

By Prosenjit Kar

Clients usually arrive with a solution in mind: "we need a CRM" or "we need to automate WhatsApp". The useful question is one level down — is this a process problem or a data ownership problem?

Automate when the system of record already exists

If your CRM, ERP or accounting package already holds the truth, and the pain is the manual movement between them, you need automation. Triggers, transformations, retries, an alert when a step fails. It ships in days, costs a fraction of a platform build, and it does not create a second database that disagrees with the first.

Build when nothing owns the data

If three people maintain the same list in three spreadsheets, no amount of glue will fix it. You need one schema, one set of permissions and one audit trail. That is custom software, and its cost is mostly in the modelling, not the screens.

The rule we use

  1. Can an existing system be the source of truth? If yes, integrate.
  2. Is the workflow identical every time, with no judgement? Automate it with code, not an agent.
  3. Does it require reading unstructured input and deciding? Add a model, with a confidence threshold and a human fallback.
  4. Does no system own the data? Build the system of record first, then automate on top of it.

Step four is where budgets explode, because teams try to automate a process that has never been defined. Automating chaos produces faster chaos.

A useful smell test

Ask what happens when the new tool is down for two hours. If the business stops, you are building a system of record and it needs backups, monitoring and a rollback plan. If work simply queues, you are building automation and it needs retries and an alert. Both are fine. Confusing the two is not.