Publicité
ERP IMPLEMENTATION
🇫🇷 Lire en français

ERP Maintenance Audit: The Method to Identify and Recover 20–30% of Your Annual Budget

Dormant licenses, AMS contracts, SLA overcharge, hidden upgrade fees: 8 ERP maintenance cost categories rarely under control. 4-step audit method to recover 20–30% per year.

ERP Maintenance Audit: The Method to Identify and Recover 20–30% of Your Annual Budget

Your ERP has been live for two or three years. The implementation is behind you. Yet the annual bill keeps climbing, and nobody in the organisation knows exactly why — or how to bring it down.

This is a familiar situation. ERP maintenance costs are rarely managed with the same rigour as implementation costs, because they lack the visibility of a project with a project manager, a steering committee, and a budget approved at the executive level. They appear on invoices in a diffuse way, split between the publisher, the integrator, the hosting provider, and sometimes other vendors.

This guide maps the real cost categories, lays out a four-step audit method, and identifies the concrete levers to reduce your annual bill by 20–30% without destabilising the system in production.

ERP Maintenance: A Budget That “Always Runs Over”

Annual ERP maintenance represents, according to market analyses, between 18% and 25% of the initial licence cost for tier-one publishers. For SAP and Oracle, the standard rate under their Enterprise Support contract is 22% of the net licence fee per year (Elevatiq, ERP Maintenance Fee Negotiations). Microsoft Dynamics sits around 16–18%. Mid-market publishers (Sage UK, Access Group, Epicor, Odoo Enterprise) operate a range of models, typically 15–20% on integrated SaaS or 12–18% on pure software maintenance for perpetual licences.

The problem is not the rate itself. It is that this rate only covers part of what your organisation actually spends each year to keep its ERP running. The rest is scattered across IT budget lines, HR envelopes, service contracts, and cloud infrastructure that nobody has ever aggregated.

The 8 ERP Maintenance Cost Categories Rarely Visible

1. Publisher Maintenance: What Hides Behind “22% of Licence Cost”

The most visible line item is also the one with the least transparent content. Publisher maintenance covers — depending on the contract — security patches, minor updates, and access to the publisher’s phone or ticketing support. What many organisations discover after signing: major version upgrades (SAP ECC to S/4HANA, Sage X3 v12 to v13, Odoo 16 to 17) may be billed separately, or require a migration project with an entirely new consultancy budget.

In other words, you pay 22% per year to maintain your right to use and patch the current version. Moving to the next version is a separate commercial conversation.

2. The AMS Contract with Your Integrator: Tickets, Person-Days, Service Levels

AMS (Application Management Services) is the contract with your integrator for corrective and evolutionary post-go-live maintenance. It typically covers: level 2 and 3 ticket management, minor functional changes, functional helpline, and sometimes maintenance of custom developments built during the implementation phase.

For a mid-sized organisation on Sage X3, Dynamics 365 Business Central, or Epicor Kinetic, an AMS contract generally runs 5–15 person-days per month, equating to £6,000–£20,000 per month depending on day rates (£600–£1,200/day for functional profiles, £900–£1,400 for specialist technical profiles).

The trap: these contracts are often renewed by tacit rollover with no usage analysis. Many organisations pay for 10 days per month and actually consume 4–6.

3. Updates and Upgrades: Included or Charged Separately?

The distinction matters. Minor updates (patches, fixes) are generally included in publisher maintenance. Major version upgrades are almost always a separately billed project. In between: a grey zone of “semi-annual feature releases” that some cloud publishers include in their SaaS and others bill as “compliance upgrades.”

For cloud publishers on a SaaS model, the promise is no upgrade cost. In practice, every major update requires functional acceptance testing, non-regression tests on your customisations, and sometimes adaptation of your connectors and interfaces. This acceptance testing cost — borne by your internal teams or your integrator — is rarely budgeted in advance.

4. Dormant Licences: The Most Immediately Recoverable Cost

After three to four years in production, staff turnover creates a structural gap between the number of contracted licences and the number of actually active users. Software asset management studies consistently show that around 25% of SaaS spend is absorbed by unused licences (Flexera, 2024 State of ITAM Report).

For an ERP, the phenomenon is amplified by the nature of licences: they are named or tied to functional profiles (accountant, stock manager, buyer). When an employee leaves or changes scope, their licence stays active unless someone deactivates it. On a 80-user SAP or Dynamics 365 estate, finding 12–20 unused licences is not exceptional.

Each licence deactivated is a direct annual saving with zero functional impact.

5. Under-Used Modules: Paid For But Never Deployed

During initial negotiation, it is common to purchase a broader functional scope than the immediate need, in order to “keep the door open” for future rollouts. These paid but unused modules represent spend with no operational return.

The most frequent cases: project management modules, integrated CRM, advanced planning, or analytical reporting — activated in the contract but never deployed due to a lack of internal sponsorship or prioritisation.

6. Hosted Infrastructure: Off ERP Scope but Linked

For ERPs hosted on private cloud or IaaS, the infrastructure bill (virtual machines, storage, backups, bandwidth) is separate from application maintenance. It tends to grow over time as data volumes increase and test environments accumulate.

A production environment, a UAT environment, a development environment, and sometimes a training environment: four times the same virtual machine, of which only production is strictly necessary around the clock.

7. Custom Development Maintenance

Customisations built during the implementation phase do not disappear once the system goes live. They accumulate technical debt: every ERP update can introduce incompatibilities; every regulatory change may require modification. The maintenance cost of these custom developments is often absorbed into the AMS retainer without being itemised, making it difficult to measure the true long-term cost of your customisations.

8. Ongoing Training: Recurring but Rarely Budgeted

Initial training is in the project budget. Recurring training for new joiners, refresher sessions after updates, onboarding to new features: nobody budgets for it, but everyone pays — in time spent by internal super-users, in productivity loss from new starters, or in training sessions billed on demand by the integrator.

4-Step Audit Method

Step 1: Map All Active Contracts

The first step is the simplest and the most frequently neglected: build an exhaustive inventory of everything you pay in relation to your ERP.

This includes: the publisher maintenance contract and its amendments, the AMS contract with the integrator, hosting or cloud infrastructure contracts, licences for connectors or middleware (integration platforms, ETL tools, BI tools), subscriptions to interfaced third-party tools (document management, e-signature, legal archiving), and training payments.

For each contract, the inventory must record: the supplier, the annual amount, the expiry date, tacit renewal clauses, and the notice period for termination.

Step 2: Measure Actual Usage

For each cost category, compare what you pay against what you actually consume.

For licences: extract login logs for the past six months. Most modern ERPs (SAP, Dynamics, Odoo, Sage X3) provide activity reports by user. Identify accounts with no login activity in that period.

For the AMS contract: obtain the ticket and person-day consumption report for the past twelve months. Compare actual volume against the contracted retainer.

For modules: audit the modules activated in the publisher configuration and compare against the list of modules actually used by business teams. A module “activated” with no transactions recorded in the past six months is a candidate for deactivation.

For infrastructure: examine consumption metrics for non-production environments. A UAT environment running 24/7 when it is only used one week per month before each release can be shut down outside testing windows.

Step 3: Benchmark Market Rates

Once the inventory is built and usage measured, compare your rates against market reference points.

For publisher maintenance: the standard rate is 22% for SAP and Oracle. Any rate above that threshold deserves a contractual explanation. Some long-standing customers with un-renegotiated contracts pay historical rates of 25–27% that no longer reflect current market practice.

For AMS: the day rate for a mid-market ERP functional consultant is £600–£1,100, and £900–£1,400 for specialist technical profiles. A monthly retainer whose implicit day rate exceeds those thresholds warrants a conversation.

For cloud infrastructure: hyperscaler rates (AWS, Azure, GCP) are public and drop regularly. An infrastructure quote two years old likely has margin to recover.

Step 4: Prepare the Negotiation

Negotiation starts six to nine months before contract expiry. Waiting for the renewal notice at 30 days strips you of all leverage: urgency works in the supplier’s favour.

Your main levers: actual vs. contracted volume (if you consume 60% of the AMS retainer, that is a negotiating position), comparative analysis of competing offers (even if you have no intention of migrating, knowing what an alternative would cost lends credibility to the negotiation), and relationship history (a customer with no payment incidents in five years has more weight than a new customer).

Practical Renegotiation Levers

The Credible Migration Threat

The most effective lever is a costed comparison with an alternative. This does not mean you must genuinely plan to migrate. It means you need to know what a migration to a competitor would cost, and be able to present that as a credible figure to your current supplier.

A publisher that knows its customer has conducted a serious comparison has more reason to make a commercial gesture than a customer who simply says “it costs too much.”

Contract Consolidation

If your publisher maintenance contract and your integrator AMS contract are managed separately, consider a single framework agreement with one commercial counterpart. Some integrators can offer volume discounts when the relationship is formalised globally rather than fragmented across multiple contracts.

Third-Party Maintenance: Significant Savings, Risks to Quantify

Specialists such as Rimini Street offer an alternative to official publisher maintenance, with savings of up to 50% on annual SAP or Oracle support fees (CIO, Rimini Street cuts half off Oracle and SAP maintenance fees).

The model relies on support delivered by third-party teams, without access to the publisher’s future automatic regulatory updates. For accounting or payroll functions subject to frequent regulatory changes (IFRS updates, payroll legislation, tax reform), this choice carries a compliance risk that must be precisely evaluated before any decision.

Third-party maintenance is appropriate for stable modules (manufacturing, supply chain) on mature versions. It is less suitable for finance and HR functions subject to frequent legislative changes.

SLA Renegotiation by Criticality

Umbrella AMS contracts often apply a uniform SLA to all ticket types: 4-hour acknowledgement time whether the issue blocks production or is a functional question about a report.

Negotiating a differentiated SLA by criticality (P1: production blocked, 4-hour response; P2: critical functionality, 24 hours; P3: functional query, 5 business days) often reduces the retainer cost in exchange for a more realistic priority management framework. It also reduces the overload on support from level-3 queries disguised as emergencies.

Expected Gains: Concrete Examples

Three scenarios illustrate what these levers deliver in practice:

Dormant licence removal: on a 80-user Dynamics 365 estate, a usage audit reveals 18 accounts with no login in over six months. Immediate deactivation. At average Dynamics 365 Business Central Essentials rates (approximately £60/user/month), the annual saving exceeds £13,000 with zero functional impact.

AMS renegotiation with competitive tendering: a fixed AMS contract at £10,000/month (10 theoretical person-days) for actual consumption of 5–6 days/month. A formal competitive tender involving two other qualified integrators results in a revised retainer at £7,000/month for 7 guaranteed days, with a mechanism to roll over unused days. Annual saving: £36,000.

Infrastructure right-sizing: two UAT and development environments running continuously when their usage is concentrated over 10 days per month. Implementation of automated stop/start orchestration. Reduction of the cloud bill by 35–40% on those environments.

Pitfalls to Avoid

Cutting SLA too aggressively: negotiating P1 response from 4 hours to 8 hours to save on the retainer may seem reasonable. In the event of a blocking incident at month-end close, the consequences of a doubled response time will far exceed the annual saving.

Changing integrator mid-contract: the temptation can be strong when AMS feels overpriced. But the transition cost (knowledge transfer, custom development documentation, overlap period, regression risk) almost always exceeds the savings expected in year one. A formal competitive tender at renewal time is healthier than a mid-contract break.

Publisher “loyalty offers”: when you ask your publisher for a price review, they will often propose to “enhance your investment” by adding modules or services. Evaluate these offers at real market price, not the “catalogue value” the publisher promotes. A module you have no immediate need for, offered for free to maintain the billing level, is not a discount: it is a cost shifted to a hypothetical future use case.

In Practice: Where to Start

An ERP maintenance audit is not a six-month project. The four steps described here can be completed in four to six weeks with two people involved (a CIO lead and a CFO lead) and without an external consultancy.

The prerequisite: gather all active contracts into a single folder before starting. This is the step that takes the longest in most organisations, because these documents are scattered across IT, procurement, and finance.

If this consolidation reveals grey areas (missing contracts, unclear pricing clauses, untracked tacit renewals), that is itself a result: those grey areas are precisely where the savings are hiding.

To go further, see our complete ERP TCO guide with 5-year multi-vendor comparison, our ERP maintenance contract guide (TMA/AMS post-go-live), and our article on ERP cost optimisation after go-live.