1. Home
  2. Blog
  3. Custom Software

Custom Software

What Is a Software Maintenance and Support Agreement (SLA)? Scope, Response Times and Fees

What is a software maintenance and support agreement? SLA, maintenance types, priority levels, uptime math, upkeep fee models and the clauses to include.

Contents 13 sections
  1. What Is a Software Maintenance and Support Agreement?
  2. What Types of Software Maintenance Are There?
  3. What Is an SLA and What Does It Cover?
  4. How Is Uptime Calculated?
  5. How Is the Maintenance Fee Set?
  6. Which Clauses Should a Maintenance and Support Agreement Contain?
  7. How Are Support Requests Opened and Managed?
  8. What Is Not Covered by Maintenance?
  9. When Should a Maintenance Agreement Be Reviewed?
  10. Why Should Software Maintenance Not Be Neglected?
  11. How Is the Maintenance Scope Compared Across Quotes?
  12. Maintenance and Support with İnovabil
  13. Frequently Asked Questions

The software went live and everyone was pleased. Three weeks later, one morning the order screen will not open, the person you call cannot say when they will get back to you, and the answer to "is this under warranty or charged separately?" is written nowhere. A software maintenance and support agreement is the contract that puts in writing, before the problem happens, what will be done after the software is delivered, by whom, how fast and at what fee; the service-level commitment inside it is called an SLA (Service Level Agreement).

In this guide we explain what a maintenance and support agreement is, the types of maintenance, what an SLA covers, how uptime is calculated, how the maintenance fee is set, the clauses the agreement should contain, how support requests are managed and what falls outside scope. Example times and amounts are illustrative; real commitments vary by contract. This article is not legal advice; for details, consult your legal advisor.

Key takeawayA good maintenance agreement does not say "we do everything"; it writes down what will be done, how fast and under which conditions. A commitment that cannot be measured is useless when a dispute arises.

What Is a Software Maintenance and Support Agreement?

A software maintenance and support agreement defines the work to be done after release to keep the software running, secure and current, along with the time and fee for that work. A warranty period is a short period in which defects found after delivery are fixed free of charge; a maintenance agreement is the regular service that continues after the warranty ends.

The agreement usually has three parts: scope (what work is done), service level (how fast it is done) and commercial terms (fee, term, termination). In custom software projects, settling the maintenance and support scope at the start of the project prevents disputes later.

We recommend reading: How to get custom software developed: choosing a company, quotes, contract and payment plan

What Types of Software Maintenance Are There?

There are four types of maintenance, and an agreement should state clearly which of them it covers. If "maintenance" means only bug fixing, the other three need separate work and a separate budget.

TypeWhat it doesExample
Corrective maintenanceFixes defects that appearAn order total that was calculated wrongly is corrected
Preventive maintenanceMonitors and acts before a problem appearsSecurity updates, a warning before the disk fills, backup checks
Adaptive maintenanceAdapts the software to a changing environmentUpdating an integration when a marketplace changes its API version
Enhancing maintenanceAdds new features and improvementsAdding a new report or approval step

Most maintenance agreements cover the first three; new features are usually priced as separate work. If the agreement explains with examples which request falls into which category, no uncertainty remains.

What Is an SLA and What Does It Cover?

An SLA is the part that commits, in numbers, to the level at which the service will be delivered. Four measures stand out: support hours, response time, resolution target and uptime.

  • Support hours and channels: On which days and hours, and through which channel (email, phone, ticket system), is support given?
  • Response time: The time to the first reply after a request is opened.
  • Resolution target: The target time for fixing the problem; it varies by priority level.
  • Uptime: The share of a period in which the system is available.

Times are tied to priority levels according to the impact of the problem. An example priority table (illustrative times):

PriorityDefinitionFirst responseResolution target
P1 CriticalThe system is completely down and work has stopped30 minutes4 hours
P2 HighAn important function is not working, a workaround exists2 hours1 business day
P3 MediumLimited impact, work continues1 business day5 business days
P4 LowA minor defect or a question3 business daysIn a planned release

These times are only an example; real values are set by negotiation according to how critical the system is and the budget. Response time and resolution time are not the same: a response means "we have your request and are on it," while a resolution is the problem being fixed.

Support request flow: a request is opened, priority is set, it is assigned to a team, resolved and confirmed; four priority levels and their target times
The journey of a support request and the priority levels.

How Is Uptime Calculated?

Uptime shows, as a percentage, how much of the total time the system is available. The higher the percentage, the smaller the allowed downtime.

UptimeUptime (%) = (total time − downtime) ÷ total time × 100. Allowed downtime = total time × (1 − committed rate).

Example: a 30-day month is 30 × 24 × 60 = 43,200 minutes. If the commitment is 99.9%, allowed downtime is 43,200 × 0.001 = 43.2 minutes; at 99.5% it is 43,200 × 0.005 = 216 minutes (3 hours 36 minutes); at 99% it is 43,200 × 0.01 = 432 minutes (7.2 hours).

Allowed monthly downtime: 43.2 minutes at a 99.9 percent commitment, 216 minutes at 99.5 percent, 432 minutes at 99 percent
Allowed monthly downtime by committed rate.

The agreement should also state how downtime is measured: will the planned maintenance window count, and are outages caused by outside services (for example a payment provider) included? Without these definitions the percentage alone carries no meaning.

How Is the Maintenance Fee Set?

There are three common models: a percentage of the development fee, a fixed monthly fee and an hours package. Which suits depends on how much the software will change and how heavy support will be.

ModelHow it worksWhen it suits
Yearly percentageA set percentage of the development fee is paid every yearWhen regular upkeep and small improvements are expected
Fixed monthly feeA package with a defined scope for a fixed monthly amountWhen a predictable budget is wanted
Hours packageHours are drawn from a block bought in advanceWhen the upkeep need varies

Example (illustrative): for software with a development fee of ₺657,000, a yearly upkeep of 15% comes to 657,000 × 0.15 = ₺98,550. What this amount covers, that is, how many hours of work, which priority levels and which support hours, should be written in the agreement. Comparing the percentage alone misleads; even if two quotes have the same percentage, their scopes can differ widely.

We recommend reading: How to estimate software development cost

Which Clauses Should a Maintenance and Support Agreement Contain?

Eight clauses are where maintenance agreements most often run into disputes. Settle the details with your legal advisor.

ClauseWhy it matters
Scope and exclusionsDefines which work is maintenance and which is separate development
Support hours and channelsDefines whom to reach, and where, in a critical problem
Priority, response and resolution timesMakes expectations measurable
Uptime and how it is measuredDefines how downtime is counted
Planned maintenance windowSets when and how updates will be announced
Backup and recoveryWrites how data is protected and the restore targets
Security, access and personal dataRegulates access, logging and KVKK (Turkey's personal data protection law) obligations
Reporting, term and terminationSets regular reports, the contract term and the exit terms

What happens when the service level is missed should also be clear: consequences such as a service credit, a fee reduction or a right to terminate, written out plainly, turn an SLA from a wish into a commitment.

How Are Support Requests Opened and Managed?

Support should run through a single channel and on record. Requests sent separately by phone, message and email get lost, and time cannot be measured.

  1. A request is opened: The user sends the problem to the ticket system with a screenshot and the steps.
  2. Priority is set: A P1-P4 level is assigned by impact.
  3. It is assigned: The request lands with the responsible person and the first-response clock starts.
  4. A fix is applied: The problem is fixed or, if needed, work continues with a workaround.
  5. Confirmation is obtained: The requester confirms the fix, the request closes and the record is kept.

The requester also needs a good notification flow: they should be informed when the request is received, when its priority is set and when it is resolved. A monthly report shows the number of requests opened and closed, the average response and resolution times and recurring problems.

What Is Not Covered by Maintenance?

Knowing the exclusions up front prevents the later argument "we thought this was included." Typical exclusions are:

  • New features and modules: A new screen, report or integration is priced as separate work.
  • User-caused errors: Problems caused by wrong data entry or unauthorized changes.
  • Third-party service outages: A failure in a payment, shipping or marketplace service; what can be done on the software side is written down, but the service itself is outside scope.
  • Training and consulting: New user training is planned separately.
  • Infrastructure change: Moving servers or renewing infrastructure can be a separate project.

When Should a Maintenance Agreement Be Reviewed?

A maintenance agreement is not a document to sign once and forget; its scope should change as the software and the business change. Review it at least once a year, and straight away in the situations below:

  • When users and transactions grow noticeably: As load grows, support hours and the uptime commitment may fall short.
  • When the software becomes more critical to the business: If a system that began as a side tool has moved to the center of the order flow, priority times should be tightened.
  • When a new integration is added: A newly connected marketplace, shipping or payment service should be written into the maintenance scope.
  • When the same kinds of requests repeat: If the monthly report shows recurring problems, the answer is not closing requests one by one but fixing the root cause.
  • When support times are missed: If target times are constantly exceeded, either the scope or the resources should be replanned.

At the yearly review, the request counts, the average response and resolution times and the downtime records from the monthly reports are put on the table; the agreement is updated based on this data.

Why Should Software Maintenance Not Be Neglected?

Unmaintained software accumulates security holes and incompatibilities. If security updates of the components in use are not applied regularly, the holes stay open; when marketplaces and payment services change their API versions, an integration that is not updated stops working one morning. Postponing maintenance does not remove the cost; it moves it to a later date and usually to a more expensive intervention.

Part of maintenance is also backup and restore testing; it is not enough to be sure a backup was taken, you must try that you can go back.

We recommend reading: How to back up business data: RPO, RTO and the 3-2-1 rule

How Is the Maintenance Scope Compared Across Quotes?

Compare not the maintenance fee in two quotes but what the fee covers: which maintenance types are included, what are the support hours and channels, are response and resolution times written, is there an uptime commitment, how many hours of work does it include and how is the excess priced? Even if the percentage is the same, the scope can differ twofold. We explained the general method for comparing quotes in our guide on getting custom software developed.

We recommend reading: What is help desk software? Ticket life cycle, priority matrix, SLA compliance and team sizing guide
Recommended reading: What Is Technical Debt?
Recommended reading: Cloud vs On-Premise Software

Maintenance and Support with İnovabil

At İnovabil we stay with you after the software goes live for upkeep, bug fixing, updates and new needs; the last of our process steps is upkeep and support. We settle the support scope with you at the start of the project and put it in writing, clarifying with examples which work is upkeep and which is new development.

Because we run our own products Faprika, NetKasam and Shopiyz live every day, we know how to keep software running for years, not only how to deliver it. If you would like to review the maintenance scope for an existing or planned system together, write to us.

We recommend reading: Our software development process: step by step from analysis to release

Frequently Asked Questions

What is a software maintenance and support agreement?

It is the contract that defines the maintenance and support work to be done after the software is released, along with its time, scope and fee. A warranty period covers the short period after delivery; a maintenance agreement is the regular service that continues after that.

What is an SLA and what is it for?

An SLA (service level agreement) contains measurable commitments such as support hours, response time, resolution target and uptime. It sets, in numbers, the level at which the service will be delivered and makes clear what happens when a commitment is missed.

How many minutes of downtime does 99.9% uptime mean per month?

A 30-day month is 43,200 minutes; at a 99.9% commitment, allowed downtime is 43,200 × 0.001 = 43.2 minutes. At 99.5% it is 216 minutes and at 99% it is 432 minutes.

How is the maintenance fee set?

Common models are a yearly percentage of the development fee, a fixed monthly fee and an hours package. Compare the fee not on its own but with what it covers: the maintenance types, support hours, times and included hours of work.

Are a warranty period and a maintenance agreement the same thing?

No. A warranty period is the short period in which defects found after delivery are fixed free of charge, and it does not cover new features. A maintenance agreement is a service that continues after the warranty ends and covers updates, monitoring, support and small improvements within a regular framework.

Let's talk about your project

Tell us briefly about the software you have in mind; we'll listen and prepare a tailored roadmap and proposal.

Get a quote