{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://askcalculators.com/calculator/variable-declining-balance-depreciation-calculator/schema.json",
  "title": "Variable Declining Balance Depreciation Calculator inputs",
  "description": "Calculate declining-balance depreciation with an optional switch to straight line when that produces more depreciation.",
  "type": "object",
  "properties": {
    "cost": {
      "title": "Asset cost",
      "type": "number",
      "default": 50000,
      "minimum": 0.01,
      "x-step": 100,
      "multipleOf": 100,
      "x-unit": "currency"
    },
    "salvageValue": {
      "title": "Salvage value",
      "type": "number",
      "default": 5000,
      "minimum": 0,
      "x-step": 100,
      "multipleOf": 100,
      "x-unit": "currency"
    },
    "usefulLife": {
      "title": "Useful life in periods",
      "type": "number",
      "default": 8,
      "minimum": 1,
      "maximum": 500,
      "x-step": 1,
      "multipleOf": 1
    },
    "decliningFactor": {
      "title": "Declining-balance factor",
      "type": "number",
      "default": 2,
      "minimum": 0.000001,
      "maximum": 100,
      "x-step": 0.1
    },
    "switchToStraightLine": {
      "title": "Switch to straight line when advantageous",
      "type": "string",
      "default": "yes",
      "enum": [
        "yes",
        "no"
      ],
      "x-optionLabels": {
        "yes": "Yes",
        "no": "No"
      }
    },
    "startPeriod": {
      "title": "Start period for selected total",
      "type": "number",
      "default": 0,
      "minimum": 0,
      "maximum": 500,
      "x-step": 1,
      "multipleOf": 1
    },
    "endPeriod": {
      "title": "End period for selected total",
      "type": "number",
      "default": 3,
      "minimum": 0,
      "maximum": 500,
      "x-step": 1,
      "multipleOf": 1
    }
  },
  "required": [
    "cost",
    "salvageValue",
    "usefulLife",
    "decliningFactor",
    "switchToStraightLine",
    "startPeriod",
    "endPeriod"
  ],
  "additionalProperties": false,
  "x-askcalculators": {
    "version": "1.0.0",
    "calculatorUrl": "https://askcalculators.com/calculator/variable-declining-balance-depreciation-calculator/",
    "queryExample": "https://askcalculators.com/calculator/variable-declining-balance-depreciation-calculator/?cost=50000&salvageValue=5000&usefulLife=8&decliningFactor=2&switchToStraightLine=yes&startPeriod=0&endPeriod=3",
    "migrationStatus": "new",
    "reviewStatus": "pending",
    "pageStatus": "live",
    "workStatus": "pending",
    "formula": {
      "expression": "declining depreciation = opening book value × factor ÷ life; optionally switch to remaining straight-line depreciation"
    },
    "quality": {
      "availability": "live",
      "technicalReviewRecord": "/reviews/variable-declining-balance-depreciation-calculator.json",
      "qualifiedReview": "pending",
      "qualifiedReviewer": null,
      "qualifiedReviewDate": null,
      "formulaVersion": "1.0.0",
      "referenceCoverage": "references-pending",
      "releaseTestScope": "Catalog and regression checks are not a professional formula audit; consult release evidence.",
      "historicalMetadataDate": "2026-09-01",
      "historicalMetadataNotice": "The imported date is not evidence of a completed human review."
    },
    "outputs": {
      "selectedRangeDepreciation": {
        "title": "Depreciation in selected range",
        "type": "number",
        "x-format": "currency",
        "x-primary": true
      },
      "firstPeriodDepreciation": {
        "title": "First-period depreciation",
        "type": "number",
        "x-format": "currency"
      },
      "totalDepreciation": {
        "title": "Total scheduled depreciation",
        "type": "number",
        "x-format": "currency"
      },
      "endingBookValue": {
        "title": "Ending book value",
        "type": "number",
        "x-format": "currency"
      },
      "switchPeriod": {
        "title": "Straight-line switch period",
        "type": "string",
        "x-format": "text"
      }
    }
  }
}
