Business

Setting Credit Caps and Exclusions for a Vendor Remedy Table

Antonio Evans10 min read

A clean black and white line drawing of a remedy table on paper.
Key points

Key points

  1. 1A per-incident credit is the easy part of a remedy table; the quarterly cap, the maintenance exclusion and the invoice anchor rule decide whether the credit pays out at all.
  2. 2Setting the cap as a percentage of quarterly fees keeps the remedy proportional to what the buyer actually pays that quarter, rather than to the annual headline number.
  3. 3Scheduled maintenance must be defined in advance, with notice and a duration limit, or the exclusion quietly absorbs unrelated outages.
  4. 4Tying each credit to a named invoice line stops credits from being calculated on the whole subscription when only one component failed.

The per-incident credit is only the top layer

Most vendor remedy tables are drafted around one sentence: if monthly availability falls below the committed target, the customer receives a credit of a stated percentage of the monthly fee. That sentence gets argued over for weeks. The limits around it often get signed without a second look, and those limits decide whether the credit is ever paid.

A service credits clause is the operative remedy portion of an SLA, defining credit percentages by breach tier, the claim procedure and window, the exclusions that prevent accrual, and how the clause interacts with termination rights for chronic failure (ContractKen's service credits guide). Each of those elements is a lever. Pull one too far and the per-incident percentage becomes decoration.

The practical framing is this: a remedy table has three layers. The trigger layer is the availability target and how it is measured. The remedy layer is the per-incident credit. The boundary layer is the cap, the exclusions and the anchor. This article is about the boundary layer, because that is where most of the negotiating risk sits and where most teams have no drafting habit at all.

Consider what a generous-looking table can hide. A 25% monthly credit sounds meaningful until you read that credits cannot exceed 50% of a single month's fees and that claimed credits expire if not requested in writing within 30 days. Now the remedy is real but capped, gated and time-limited. None of those three constraints is unreasonable on its own. Together, they set the expected value of the clause far below its headline.

Cap the credit against quarterly fees, not the headline contract value

The first decision is the denominator. A cap expressed as four months' fees per year is common in published schedules, and it is far too loose for a service that matters. A sample clause limits aggregated annual credits to four months of monthly service fees and caps any single billing month at 50% of that month's fees (Law Insider's sample credit calculation). That structure protects the vendor against a catastrophic quarter far more than it protects the buyer.

Work from what the buyer pays, not from the annual contract value as a headline. Annual contract value is the annualized value of a multi-year contract, typically calculated by subtracting one-time fees from total contract value and dividing by contract length (Growth Equity Interview Guide on ACV). That is a sales and finance metric. It is useful for budgeting a renewal, and it is the wrong basis for a credit cap, because credits are applied against invoices and invoices are issued monthly or quarterly.

Here is a worked example that shows why the denominator matters.

Take a contract with total contract value of $180,000 over three years, plus $30,000 of one-time onboarding. Annual contract value is ($180,000 − $30,000) ÷ 3 = $50,000 (Wall Street Prep's ACV formula). Quarterly recurring fees are $50,000 ÷ 4 = $12,500.

Now suppose the availability target is 99.9% monthly, and the credit schedule pays 10% of the affected monthly fee at 99.0% to 99.9%, and 25% below 99.0%. In a bad quarter the buyer lands at 98.6%, 99.4% and 97.9%. Applying the schedule to the monthly recurring charge of $4,167 gives credits of roughly $1,042, $417 and $1,042, about $2,500 in total.

Cap formulationCap value for the quarterCredit paid on the worked quarterWhat it rewards
50% of one month's fees$2,083$2,083 (capped)Vendor absorbs almost nothing
25% of quarterly fees$3,125$2,500 (uncapped)Proportional to what the buyer paid
100% of quarterly fees$12,500$2,500 (uncapped)Full quarter at risk, rarely conceded
Four months per year, no quarterly limit$16,667 annual$2,500 (uncapped)Caps fail to bind at all

A 25% quarterly cap is the pragmatic middle. It binds only when the quarter is genuinely bad, it is easy to forecast for both sides, and it keeps the maximum remedy proportional to the fees paid for those three months.

The second decision is whether the cap limits credits or limits liability. Keep them separate. Credits are an offset against future invoices, not a payment. Damages for data loss, security breach or chronic failure should sit outside the credit cap, and mature clauses carve those out of the sole-and-exclusive-remedy language (ContractKen).

A rule of thumb for the cap level: set it so a single incident cannot exhaust the quarter, but a systemic failure can. If your second-tier credit is 25% of a month's fee, a 25% quarterly cap allows exactly one such incident before further credits stop. Run that arithmetic before you agree the tier table.

A quick calculator for the cap conversation

You can settle most of the cap argument in a spreadsheet. This snippet takes the recurring monthly fee and a list of availability figures, applies a two-tier schedule, and reports the uncapped credit and the credit after a quarterly cap.

def quarterly_credit(monthly_fee, availabilities, cap_pct=0.25):
    total = 0.0
    for a in availabilities:
        if a < 0.990:
            total += monthly_fee * 0.25
        elif a < 0.999:
            total += monthly_fee * 0.10
    cap = monthly_fee * 3 * cap_pct
    return {"uncapped": round(total, 2), "cap": round(cap, 2),
            "payable": round(min(total, cap), 2)}

print(quarterly_credit(4167, [0.986, 0.994, 0.979]))
# {'uncapped': 2500.8, 'cap': 3125.25, 'payable': 2500.8}

Set all three months to 0.985 and the uncapped total reaches $3,125.25, which is where the cap starts to bind. That threshold is the number worth negotiating over, because it tells both parties exactly how bad a quarter has to be before the cap does any work. A vendor that offers a high cap and a low per-incident percentage has conceded very little, since the cap never engages.

Exclude scheduled maintenance, defined in advance

Scheduled maintenance is a legitimate exclusion. An exclusion that is not defined, not notified and not time-limited is an escape hatch. Both sides should be able to answer four questions before the quarter starts: when the window is, how long it lasts, how much notice the buyer gets, and who can move it.

Published SLA templates treat notification of scheduled maintenance as a provider obligation alongside response times (By Design Law's SLA template). The clause should state the notice period in business days, the maximum duration of a window, the maximum number of windows per quarter, and a requirement that the schedule live in a shared calendar the buyer's operations team can subscribe to. Then decide what happens when the vendor misses its own notice. The sensible rule is that an unannounced window is not an exclusion; it counts as downtime and is credit-eligible.

The scale makes this concrete. A 30-day month contains 43,200 minutes, so a 99.9% monthly target permits 43.2 minutes of downtime for the entire month, and a single incident with ordinary coordination delays can consume all of it (All Quiet's SLA guide). Against an error budget that small, an unbounded maintenance exclusion is not a margin. It is the whole remedy.

ElementSuggested draftingWhy it matters
DefinitionPre-planned suspension for maintenance, patching or infrastructure changeSeparates planned work from unplanned failure
NoticeAt least 5 business days in writing to named contactsBuyer can shift dependent workloads
DurationNo single window longer than 2 hours in productionKeeps one window from consuming the monthly allowance
FrequencyNo more than 4 windows per monthStops the exclusion swallowing the quarter
Unnotified workCounts as downtime, credit-eligibleRemoves the incentive to skip notice
Emergency patchingExcluded only for documented security advisories, with notice within 24 hours after the factSeparates genuine urgency from convenience

The other standard exclusions need the same treatment. Third-party network failures, customer-caused outages and force majeure are reasonable, but each needs a definition and a recording method rather than a vague exception clause (SupportGPT's support SLA guide). A vendor that cannot say which exclusion applied to which incident is asking to be believed rather than audited.

For AI-based services, add one entry. Model provider changes, tool availability and evaluation-set drift should be treated as production release events with a defined review process, not as background noise that never triggers a remedy (Wavect's AI agent SLA template). The provider's own SLA does not cover the behavior of an agent built on top of it.

Anchor every credit to the invoice line it compensates

The third boundary is the anchor. A credit calculated on the whole subscription when one component failed is over-generous in theory and, in practice, endlessly argued. Published schedules solve this by calculating credits on the monthly recurring charges of the affected service only, using a pro rata share of the affected component (Law Insider).

Two calculation methods dominate in sample clauses. The percentage method applies the tier directly to the affected line: if that line bills $10,000 and the tier is 20%, the credit is $2,000. The hourly method prorates against hours in the month: $10,000 multiplied by 3.5 over 720 hours gives $48.61. The same sample caps annual credits at four months' fees and monthly credits at 50% of the affected service's fees.

The anchor rule should specify five things:

  1. The invoice line identifier printed on every invoice.
  2. A versioned appendix mapping each service component to an invoice line.
  3. The rule that the credit base is the affected line's charge for the period, exclusive of taxes and one-time fees.
  4. The rule that credits apply to the next invoice for that same line, not another line.
  5. The rule that unused credits survive termination and are paid or offset.

Point five is the one buyers forget. Credits applied only against future invoices are worth nothing if the contract ends first. A cash-out or final-offset provision closes that gap and costs the vendor little, because it only matters at exit.

The anchor also disciplines reporting. If every incident is recorded against an invoice line, the monthly service report becomes a reconciliation document rather than a narrative, which matches how mature templates describe reporting: recurring reports with centrally accessible data, so performance is verified rather than assumed (By Design Law). One detail deserves its own line. Where a service has many components, apply the credit pro rata. If ten units are contracted and one fails, calculate on that unit's charge, not all ten, exactly as the sample clause does for bare metal blades and branch circuits (Law Insider).

Write the carve-outs so both sides can apply the table

The boundary layer only works if it is self-executing. The table, the exclusions, the cap formula, the anchor mapping and the claim procedure must fit in a schedule that a procurement analyst, an account manager and a finance controller apply the same way.

The largest source of friction is the claim window. Vendors commonly require written credit requests within a short period, often 30 days from the incident, and customers who fail to track incidents forfeit credits even when the breach is uncontested (ContractKen). Do not spend the negotiation removing the window. Remove the need for the buyer to remember. Require the vendor to issue a monthly report that states, for each invoice line, measured availability, incidents and the credit applied automatically. Automatic application is the key sentence, because it turns the claim window into a fallback for disputes rather than the mechanism the remedy depends on.

Handle chronic failure separately. Credits compensate for a bad month; termination compensates for a bad pattern. Mature clauses include a chronic-failure termination right triggered by repeated breaches in a rolling period or a single outage above a defined duration (ContractKen). Keep it outside the cap and outside the sole-remedy language.

CheckPass condition
Cap denominatorQuarterly recurring fees, not annual contract value
Cap levelBinds at one bad incident, not at zero
Cap scopeApplies to credits only, not to data loss or security damages
Maintenance exclusionDefined, notified, duration-limited, unnotified work treated as downtime
Other exclusionsEach has a definition and a recording method
AnchorEvery credit maps to a named invoice line and a versioned appendix
Claim procedureAutomatic application, with a fallback window for disputes
ExitUnused credits survive termination and are paid or offset
Chronic failureSeparate trigger, outside the cap and outside sole remedy

Two governance habits keep the table evergreen. Version the schedule: every change to a tier, cap, exclusion or appendix gets a version number and an effective date in the header. Then rehearse the calculation once a year using the buyer's real invoice data and a real incident from the report history. If both sides cannot reproduce the same figure from the schedule alone, the schedule is not finished.

That rehearsal is also where a review of the underlying stack pays for itself. If the remedy table sits over a service that assembles several model providers, the mapping from component to invoice line must match the architecture rather than the sales deck. Teams reconciling that across a multi-model stack often route the work through a single interface instead of a dozen vendor contracts; Quanta Inference exposes text, image, video, audio and embedding models through one OpenAI-compatible key with prepaid US dollar pricing, which simplifies the invoice line the anchor rule depends on. When the drafting needs a second pair of eyes on the commercial terms, Quanta Consulting runs a free 30-minute discovery call to map goals to a recommendation.

FAQ

FAQ

Should the cap be a percentage of quarterly fees or a multiple of monthly fees?

Percentage of quarterly fees, because it matches the billing cycle the credits apply against and it is easy to forecast. A multiple of monthly fees tends to be larger than it looks and often fails to bind at all: four months per year, as in a published sample, leaves an annual exposure far above any realistic quarterly claim (Law Insider). A 25% quarterly cap binds at roughly two second-tier incidents and keeps the maximum remedy proportional to the three months actually paid for.

Does scheduled maintenance always count as excluded downtime?

Only when the window is defined in advance, notified to named contacts, limited in duration and frequency, and recorded. Published templates treat notification of scheduled maintenance as a provider obligation (By Design Law). Add a sentence that unannounced maintenance counts as downtime and the exclusion stops being discretionary. At a 99.9% monthly target the entire allowance is 43.2 minutes in a 30-day month (All Quiet), so one four-hour window is many times the monthly budget.

How do we stop credits being calculated on the whole subscription?

Anchor each credit to a named invoice line and publish a versioned appendix mapping service components to those lines. Sample clauses calculate credits on the affected service's monthly recurring charges and apply them pro rata when only part of a service fails (Law Insider). Without that anchor, a single failed component can generate a credit larger than the monthly fee for the component that broke.

What happens to credits we never used before the contract ends?

Nothing, unless you negotiate otherwise. Most clauses apply credits against future invoices only, so unused credits are lost on termination unless there is a cash-out or final-offset provision. Add a short exit sentence that unused credits survive termination and are payable in cash or offset against final amounts due. It is a cheap concession and it closes the last gap in the boundary layer.

Can the vendor still exclude third-party failures and customer-caused outages?

Yes, and it should, provided each exclusion has a definition and a recording method rather than a vague exception clause (SupportGPT). The test is reproducibility: if the vendor cannot say which exclusion applied to which incident, in a monthly report the buyer can audit, the exclusion is doing more work than the parties agreed.

Sources

Sources

  1. Service Credits Clause: Tiers, Claims & Exclusions
  2. SLA Credit Calculations Sample Clauses
  3. Annual Contract Value (ACV) in SaaS: What You Need To ...
  4. Annual Contract Value (ACV) | Formula + Calculator
  5. Service Level Agreement Template for Startups
  6. What is an SLA (Service Level Agreement)? - All Quiet
  7. Support Service Level Agreement Guide for 2026
  8. AI Agent SLA Template: Accuracy, Latency & Handoff | Wavect
About the author

About the author

Antonio Evans
Antonio Evans

Antonio Evans is the founder of Quanta Intelligence and a fractional CTO who builds HIPAA-ready AI systems for health and life-science companies. Before that he was technical co-founder of FriendsEAT for twenty years, CEO of Socialdraft, and a data engineer at IBM. Antonio lives with his dog Santino in Lisbon, Portugal.

All articles