{
  "slug": "sla-uptime-downtime",
  "title": "SLA Uptime to Downtime Minutes Calculator",
  "heading": "SLA Uptime Percentage to Downtime Calculator",
  "category": "math",
  "url": "https://www.revenuelab.fyi/toolbox/sla-uptime-downtime",
  "summary": "Convert an uptime SLA percentage into allowed downtime minutes.",
  "description": "SLA percentages like 99.9% or 99.99% sound similar but represent very different amounts of allowed downtime once converted into actual minutes, and this is the single most common misunderstanding in vendor contract negotiations. This calculator converts any uptime percentage into allowed downtime per year, month, week, and day, so you can compare an SLA to your actual operational needs — a 99.9% SLA (three nines) allows 8.77 hours of downtime a year, while 99.99% (four nines) allows only 52.6 minutes, and 99.999% (five nines) allows just 5.26 minutes. It also computes the reverse: given actual downtime minutes over a period, what SLA percentage that represents, which is what you need when reporting real uptime against a contracted target.",
  "formula": "Allowed downtime = (1 − uptime%) × total minutes in period. Reverse: uptime% = 1 − (downtime minutes ÷ total minutes).",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=sla-uptime-downtime",
  "inputs": [
    {
      "id": "uptimePct",
      "label": "SLA uptime percentage",
      "kind": "number",
      "hint": null,
      "default": 99.9,
      "unit": "%",
      "min": 0,
      "max": 100
    },
    {
      "id": "actualDowntime",
      "label": "Actual downtime this month (optional)",
      "kind": "number",
      "hint": null,
      "default": 0,
      "unit": "minutes",
      "min": 0,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "downMonth",
      "label": "Allowed downtime per month",
      "format": "duration",
      "hint": null,
      "primary": true
    },
    {
      "id": "downYear",
      "label": "Allowed downtime per year",
      "format": "duration",
      "hint": null,
      "primary": false
    },
    {
      "id": "downWeek",
      "label": "Allowed downtime per week",
      "format": "duration",
      "hint": null,
      "primary": false
    },
    {
      "id": "downDay",
      "label": "Allowed downtime per day",
      "format": "duration",
      "hint": null,
      "primary": false
    },
    {
      "id": "actualUptimePct",
      "label": "Actual uptime % (if downtime entered)",
      "format": "percent",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "SLA uptime percentage: 99.9 %",
      "Actual downtime this month (optional): 0 minutes"
    ],
    "outputs": [
      "Allowed downtime per month: 43.8",
      "Allowed downtime per year: 526",
      "Allowed downtime per week: 10.1",
      "Allowed downtime per day: 1.44",
      "Actual uptime % (if downtime entered): 99.9000%"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter sla uptime percentage (%).",
      "Enter actual downtime this month (optional) (minutes).",
      "Read your allowed downtime per month on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "uptimePct": 59.94,
        "actualDowntime": 0
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "uptimePct": 99.9,
        "actualDowntime": 0
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "uptimePct": 100,
        "actualDowntime": 0
      }
    }
  ],
  "limitations": [
    "Results are rounded for display; the underlying calculation keeps full precision.",
    "Very large or very small inputs may hit floating-point limits in the browser.",
    "Inputs outside the accepted range are clamped rather than rejected."
  ],
  "faq": [
    {
      "q": "What's the practical difference between three and four nines?",
      "a": "99.9% allows 43.2 minutes of downtime a month; 99.99% allows only 4.3 minutes. That 10x tighter budget typically requires multi-AZ or multi-region failover, automated rollback, and sub-minute detection and paging — going from three to four nines is usually a multi-quarter engineering investment, not a config change, and it should be priced accordingly when negotiated into a contract."
    },
    {
      "q": "Does scheduled maintenance count against the SLA?",
      "a": "It depends entirely on the contract language. Most vendor SLAs explicitly exclude 'planned maintenance windows' announced with advance notice (commonly 24-72 hours) from the downtime calculation, so read the exclusions clause carefully — an SLA that looks strict on paper can have generous carve-outs that make it far weaker in practice."
    },
    {
      "q": "How do SLA credits typically work when the target is missed?",
      "a": "Most cloud and SaaS SLAs offer service credits, not cash refunds, calculated as a percentage of the monthly bill and scaled to how badly the target was missed — for example 10% credit for uptime between 99.0-99.9% and 25-30% credit below 99.0%. Credits are capped and require you to file a claim within a set window, so track downtime yourself; providers don't proactively issue credits in most cases."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/error-budget-burn-rate",
    "https://www.revenuelab.fyi/toolbox/incident-cost-per-minute",
    "https://www.revenuelab.fyi/toolbox/mttr-impact-calculator"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — SLA Uptime to Downtime Minutes Calculator (https://www.revenuelab.fyi/toolbox/sla-uptime-downtime)"
}