- Most ERP failures are people and process failures, not software failures.
- Clean and agreed data matters more than any feature.
- Pilot one department before rolling out across the company.
- Name a business owner with authority to make process decisions.
Why ERP projects go wrong
An ERP replaces the habits of the whole company: how stock is counted, how orders are approved, who may change a price, when a payment is recorded. Software is the easy part of that change. The hard part is getting departments that have worked around each other for years to agree on one version of events.
Projects typically fail quietly. There is no dramatic crash. The system goes live, staff keep their spreadsheets, reports disagree with reality and the owner concludes the software was wrong. In practice the cause was usually visible months earlier: unclear scope, no decision maker, rushed data migration or too little training.
The mistakes below, which are really about people and process, are grouped roughly in the order they appear in a project. If you are still choosing a platform, our comparison of Odoo, ERPNext and custom ERP is a better starting point.
Mistakes at a glance, with fixes
What goes wrong, what it looks like and the fix.
Mistake | Symptom | Better approach |
|---|---|---|
No business owner | Decisions stall, IT is blamed | Appoint a director-level sponsor and process owners |
Vague scope | Endless change requests | Write modules, branches, reports and exclusions down |
Dirty data migration | Wrong stock and balances at go-live | Clean, reconcile and sign off opening data |
Over-customising | Slow, fragile upgrades | Keep the standard flow where it fits |
Weak training | Staff keep spreadsheets | Role-based training with real scenarios |
Big-bang go-live | Chaos in every department at once | Pilot, then expand in phases |
Ignoring local compliance | Reports and invoices need rework | Test tax, invoice and reporting formats early |
Scope: the document that protects you
A good scope document is boring and specific. It lists the legal entities and branches, the modules in the first release, the reports management needs, the integrations with banks, couriers or your website, and the items left out on purpose. It names who approves changes and how an extra request is priced and scheduled.
Without it, every meeting adds a wish, the vendor absorbs or resents the extra work, and the go-live date moves. With it, both sides can say yes, later or no without an argument. Review the scope with each department head, not only the person who signed the contract.
The mistakes in order of appearance
Watch for these at each stage of the project.
- Before the contractChoosing on a demo, not on your own hardest process. Ask for a trial with your real items and a typical month of transactions.
- During scopingLetting every department list wishes with no priority. Rank requirements and cut anything that does not affect cash, stock or compliance in the first release.
- During buildCustomising to copy the old spreadsheet. Ask whether the process itself should change, and keep custom code small and documented.
- During migrationImporting everything. Archive old records and move only clean, active items, customers, suppliers and opening balances.
- During trainingTeaching menus instead of jobs. Train each role on the tasks they do daily, using realistic examples.
- At go-live and afterSwitching off the old system too early, or never. Set a parallel run period and a clear cut-off date.
Data, the quiet killer
Dirty data does more damage than any missing feature. If your item list has three spellings of the same product, if customer balances do not match the ledger or if stock counts are months old, the ERP will faithfully report wrong numbers, only now with more authority. Staff stop trusting the system and revert to private spreadsheets.
Spend real time on item codes, units of measure, supplier and customer records, opening balances and bills of material. Do a physical stock count close to go-live. Reconcile balances with your accountant and have a named person sign off the opening position. It is slow work that nobody finds exciting, which is why it is skipped, and why projects fail later.
Inventory-heavy firms should also read our guide to inventory management software features to decide what data structure they need up front.
Customisation: how much is too much
A useful rule is to customise reports, forms and one or two key workflows, and leave the core accounting, stock and approval logic alone. Every deep change creates a debt that comes due at the next version upgrade, when someone has to retest and rewrite it. Companies that stay on old versions for years usually did so because upgrading became too risky.
Before approving any custom feature, ask four questions. Does it affect cash, stock or compliance? Could a process change achieve the same result? Who will maintain it? What happens if the vendor changes the underlying screen? If the answers are weak, defer the feature until after go-live, when you will know whether staff actually want it.
Pre-go-live readiness checklist
If you cannot tick most of these, delay the date.
- Scope signed offA written list of modules, branches, reports and integrations, with exclusions.
- Opening data reconciledStock, receivables, payables and bank balances agreed by finance.
- User acceptance tests passedReal transactions tested end to end by the people who will do them.
- Roles and permissions setApproval limits and access rights reviewed by management.
- Training completedEach role has practised their daily tasks in a test company.
- Support plan agreedWho staff call on day one, and who fixes issues in month three.
- Backup and hosting confirmedTested restore, offsite backup, and a plan for power or connectivity problems.
Pakistan-specific traps
Local compliance is often discovered late. Sales tax invoices, withholding records and reporting formats vary by sector, and requirements for retailers and distributors can differ. Test invoice formats and reports in a sample company early, and confirm current rules with your tax adviser instead of assuming the software is automatically correct.
Multi-branch businesses face connectivity and power issues. Decide how point of sale works when the internet drops, where the server or cloud sits, and how often you back up. Hosting that cannot survive a day of load-shedding is not hosting for a business system.
Cash on delivery, courier reconciliation and agent commissions are common operating realities that standard templates may not cover. If you need them, plan the custom piece deliberately, perhaps through ERP module customization, rather than patching it in a week before launch.
Training that people remember
One lecture on a Friday is not training. Build short sessions around daily jobs: raising a purchase order, receiving goods, issuing an invoice, closing the month. Give each person a test company where mistakes cost nothing, and let them practise with last month's real documents.
Pick a few champions in each department who learn first and help colleagues in the first weeks. Keep a simple log of questions, since repeated questions show where screens or processes confuse people. Plan for refresher sessions after a month, when real problems have appeared.
Warning signs during the project
Catch these early and you save months.
The sponsor stops attending
A sign that the project is seen as IT work. Reset ownership.
Scope keeps growing
Every new wish pushes the date. Put a change control process in place.
Staff are not testing
If users ignore test environments, expect problems on day one.
Custom code outweighs standard
You may be rebuilding the old system in a new package.
Vendor cannot show a plan
Ask for milestones, owners and acceptance criteria in writing.

Junaid's take
In my experience, ERP projects succeed when one senior person on the business side cares enough to make decisions quickly and to say no to unnecessary changes. Technology choices matter, but they are rarely the reason a project stalls.
If I were advising a mid-size Pakistani company, I would start with one function, usually inventory or accounting, go live properly, learn from it and then expand. I would cut the first scope by a third, keep custom code small and demand a pilot. I would also budget real time for training and data clean-up, because that is where timelines slip.
If you are already midway through a troubled project, an outside review can save it. Our ERP development services include audits of existing implementations, and you can talk to us about a rescue plan.

