Macrs Depreciation Calculator

MACRS Depreciation Calculator

3-Year Property 5-Year Property 7-Year Property 10-Year Property 15-Year Property 20-Year Property 27.5-Year Residential Rental Property 39-Year Nonresidential Real Property
Half-Year Convention Mid-Quarter Convention Mid-Month Convention (Auto for Real Property)
Q1 (Jan-Mar) Q2 (Apr-Jun) Q3 (Jul-Sep) Q4 (Oct-Dec)

Depreciation Schedule

Year Depreciation Rate (%) Annual Depreciation Accumulated Depreciation Ending Book Value

Understanding MACRS Depreciation

The Modified Accelerated Cost Recovery System (MACRS) is the primary method for depreciating most tangible property placed in service after 1986. It allows businesses to recover the cost of certain property over a specified number of years, reducing their taxable income. Unlike traditional depreciation methods, MACRS generally ignores salvage value, meaning the entire cost basis of an asset can be depreciated.

Key Components of MACRS:

  • Asset Cost (Basis): This is the original cost of the asset, including purchase price, shipping, installation, and any other costs necessary to get the asset ready for its intended use. This is the amount that will be depreciated.
  • Recovery Period (Class Life): The IRS assigns a specific recovery period (or class life) to different types of assets. Common periods include 3, 5, 7, 10, 15, and 20 years for personal property, and 27.5 or 39 years for real property. This calculator uses these standard periods.
  • Depreciation Method: MACRS typically uses an accelerated depreciation method (200% or 150% Declining Balance) for most personal property, switching to the Straight-Line method when it yields a larger deduction. Real property (27.5 and 39-year) always uses the Straight-Line method. This calculator automatically applies the correct method based on the recovery period.
  • Convention: This rule determines how much depreciation can be claimed in the year an asset is placed in service and in the year it is disposed of.
    • Half-Year Convention (HYC): This is the most common convention. It assumes all property is placed in service in the middle of the year, regardless of the actual date. This means you get half a year's depreciation in the first year and the remaining half in the last year of the recovery period.
    • Mid-Quarter Convention (MQC): This convention applies if more than 40% of the total depreciable basis of property (excluding real property) is placed in service during the last three months of the tax year. It treats property as placed in service in the middle of the quarter it was acquired.
    • Mid-Month Convention (MMC): This convention is exclusively used for real property (27.5-year and 39-year property). It treats property as placed in service in the middle of the month it was acquired. Our calculator automatically applies this for real property and requires you to select the quarter for accurate first-year depreciation.

How to Use the Calculator:

  1. Enter Asset Cost: Input the total cost of the asset you wish to depreciate.
  2. Select Recovery Period: Choose the appropriate recovery period for your asset from the dropdown menu. Refer to IRS Publication 946 for detailed class lives.
  3. Choose Convention: For personal property, select either Half-Year or Mid-Quarter. For real property (27.5 or 39 years), the Mid-Month Convention is automatically applied.
  4. Select Placed in Service Quarter: If Mid-Quarter or Mid-Month Convention applies, select the quarter in which the asset was placed in service.
  5. Click "Calculate Depreciation": The calculator will generate a detailed depreciation schedule showing annual depreciation, accumulated depreciation, and the ending book value for each year.

Example Calculation:

Let's say you purchase a piece of machinery (5-year property) for $100,000 and place it in service in Q1 under the Half-Year Convention.

  • Asset Cost: $100,000
  • Recovery Period: 5-Year Property
  • Convention: Half-Year Convention
  • Placed in Service Quarter: Q1 (not relevant for HYC, but selected for completeness)

The calculator would then use the IRS-provided MACRS rates for 5-year property under the Half-Year Convention to generate a schedule similar to this:

Year Rate (%) Annual Depreciation Accumulated Depreciation Ending Book Value
1 20.00% $20,000.00 $20,000.00 $80,000.00
2 32.00% $32,000.00 $52,000.00 $48,000.00
3 19.20% $19,200.00 $71,200.00 $28,800.00
4 11.52% $11,520.00 $82,720.00 $17,280.00
5 11.52% $11,520.00 $94,240.00 $5,760.00
6 5.76% $5,760.00 $100,000.00 $0.00

Note: The rates used in this calculator are based on IRS Publication 946 tables for the Modified Accelerated Cost Recovery System (MACRS). Always consult with a tax professional for specific tax advice.

var MACRS_RATES = { "HYC": { // Half-Year Convention (IRS Pub 946, Table A-1) "3": [33.33, 44.45, 14.81, 7.41], "5": [20.00, 32.00, 19.20, 11.52, 11.52, 5.76], "7": [14.29, 24.49, 17.49, 12.49, 8.93, 8.92, 8.93, 4.46], "10": [10.00, 18.00, 14.40, 11.52, 9.22, 7.37, 6.55, 6.55, 6.56, 6.55, 3.28], "15": [5.00, 9.50, 8.55, 7.70, 6.93, 6.23, 5.90, 5.90, 5.91, 5.90, 5.90, 5.91, 5.90, 5.90, 5.91, 2.95], "20": [3.75, 7.22, 6.68, 6.18, 5.71, 5.28, 4.89, 4.52, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 4.46, 2.23] }, "MQC": { // Mid-Quarter Convention (IRS Pub 946, Table A-2) "Q1": { "3": [58.33, 27.78, 9.25, 4.64], "5": [35.00, 26.00, 15.60, 11.01, 11.01, 1.38], "7": [25.00, 21.43, 15.31, 10.93, 8.44, 8.43, 8.44, 2.02], "10": [17.50, 15.00, 12.00, 9.60, 7.68, 6.14, 5.53, 5.53, 5.53, 5.53, 1.96], "15": [8.75, 8.08, 7.27, 6.55, 5.90, 5.31, 5.00, 5.00, 5.00, 5.00, 5.00, 5.00, 5.00, 5.00, 5.00, 1.64], "20": [6.56, 6.35, 5.88, 5.44, 5.04, 4.66, 4.31, 3.99, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 3.90, 1.00] }, "Q2": { "3": [41.67, 33.33, 16.67, 8.33], "5": [25.00, 30.00, 18.00, 10.80, 10.80, 5.40], "7": [17.86, 23.47, 16.76, 11.97, 8.55, 8.54, 8.55, 4.30], "10": [12.50, 16.50, 13.20, 10.56, 8.45, 6.76, 6.06, 6.06, 6.06, 6.06, 3.79], "15": [6.25, 8.88, 7.99, 7.19, 6.47, 5.83, 5.50, 5.50, 5.50, 5.50, 5.50, 5.50, 5.50, 5.50, 5.50, 2.75], "20": [4.69, 6.94, 6.42, 5.94, 5.49, 5.08, 4.70, 4.35, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 4.28, 2.14] }, "Q3": { "3": [25.00, 41.67, 25.00, 8.33], "5": [15.00, 34.00, 20.40, 12.24, 12.24, 6.12], "7": [10.71, 26.53, 18.95, 13.54, 9.68, 9.67, 9.68, 4.84], "10": [7.50, 19.50, 15.60, 12.48, 9.98, 7.99, 7.16, 7.16, 7.16, 7.16, 3.58], "15": [3.75, 9.88, 8.89, 8.00, 7.20, 6.48, 6.13, 6.13, 6.13, 6.13, 6.13, 6.13, 6.13, 6.13, 6.13, 3.06], "20": [2.81, 7.44, 6.89, 6.37, 5.89, 5.45, 5.05, 4.67, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 4.59, 2.30] }, "Q4": { "3": [8.33, 41.67, 33.33, 16.67], "5": [5.00, 38.00, 22.80, 13.68, 13.68, 6.84], "7": [3.57, 29.59, 21.14, 15.10, 10.79, 10.78, 10.79, 5.41], "10": [2.50, 22.50, 18.00, 14.40, 11.52, 9.22, 8.28, 8.28, 8.28, 8.28, 4.14], "15": [1.25, 10.88, 9.79, 8.81, 7.93, 7.14, 6.75, 6.75, 6.75, 6.75, 6.75, 6.75, 6.75, 6.75, 6.75, 3.38], "20": [0.94, 7.94, 7.35, 6.79, 6.28, 5.81, 5.38, 4.98, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 4.90, 2.45] } }, "MMC": { // Mid-Month Convention (IRS Pub 946, Table A-6 & A-7) "27.5": { "Q1": [3.485, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 0.151], "Q2": [2.626, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 1.010], "Q3": [1.768, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 1.869], "Q4": [0.909, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 3.636, 2.728] }, "39": { "Q1": [2.461, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 0.107], "Q2": [1.923, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 0.641], "Q3": [1.385, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 1.179], "Q4": [0.846, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 2.564, 1.718] } } }; function updateConventionFields() { var recoveryPeriod = document.getElementById("recoveryPeriod").value; var conventionSelect = document.getElementById("convention"); var quarterGroup = document.getElementById("quarterGroup"); var placedInServiceQuarterSelect = document.getElementById("placedInServiceQuarter"); if (recoveryPeriod === "27.5" || recoveryPeriod === "39") { // Real property always uses Mid-Month Convention conventionSelect.value = "MMC"; conventionSelect.disabled = true; conventionSelect.style.display = 'none'; // Hide the dropdown quarterGroup.style.display = 'block'; // Show quarter for MMC placedInServiceQuarterSelect.disabled = false; document.querySelector('label[for="convention"]').style.display = 'none'; // Hide label } else { // Personal property uses Half-Year or Mid-Quarter conventionSelect.disabled = false; conventionSelect.style.display = 'block'; // Show the dropdown document.querySelector('label[for="convention"]').style.display = 'block'; // Show label if (conventionSelect.value === "MQC") { quarterGroup.style.display = 'block'; placedInServiceQuarterSelect.disabled = false; } else { // HYC quarterGroup.style.display = 'none'; placedInServiceQuarterSelect.disabled = true; } } } function calculateMACRS() { var assetCost = parseFloat(document.getElementById("assetCost").value); var recoveryPeriod = document.getElementById("recoveryPeriod").value; var convention = document.getElementById("convention").value; var placedInServiceQuarter = document.getElementById("placedInServiceQuarter").value; var errorMessage = document.getElementById("errorMessage"); var depreciationTableBody = document.getElementById("depreciationTableBody"); errorMessage.textContent = ""; depreciationTableBody.innerHTML = ""; if (isNaN(assetCost) || assetCost quarter -> recoveryPeriod if (MACRS_RATES["MQC"][placedInServiceQuarter] && MACRS_RATES["MQC"][placedInServiceQuarter][recoveryPeriod]) { rates = MACRS_RATES["MQC"][placedInServiceQuarter][recoveryPeriod]; } else { errorMessage.textContent = "MACRS rates not found for selected mid-quarter convention, period, and quarter."; return; } } else { // HYC if (MACRS_RATES["HYC"][recoveryPeriod]) { rates = MACRS_RATES["HYC"][recoveryPeriod]; } else { errorMessage.textContent = "MACRS rates not found for selected half-year convention and period."; return; } } var accumulatedDepreciation = 0; var remainingBasis = assetCost; var totalDepreciationCalculated = 0; for (var i = 0; i assetCost) { annualDepreciation = assetCost – totalDepreciationCalculated; } accumulatedDepreciation += annualDepreciation; remainingBasis = assetCost – accumulatedDepreciation; totalDepreciationCalculated += annualDepreciation; var row = depreciationTableBody.insertRow(); row.insertCell(0).textContent = year; row.insertCell(1).textContent = rate.toFixed(2) + "%"; row.insertCell(2).textContent = annualDepreciation.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); row.insertCell(3).textContent = accumulatedDepreciation.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); row.insertCell(4).textContent = remainingBasis.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); if (remainingBasis = assetCost – 0.01) { // Account for floating point inaccuracies break; } } // Final adjustment for any remaining small amount due to rounding if (totalDepreciationCalculated < assetCost) { var lastRow = depreciationTableBody.rows[depreciationTableBody.rows.length – 1]; var lastAnnualDepreciation = parseFloat(lastRow.cells[2].textContent.replace(/[^0-9.-]+/g,"")); var adjustment = assetCost – totalDepreciationCalculated; lastAnnualDepreciation += adjustment; accumulatedDepreciation += adjustment; remainingBasis = 0; lastRow.cells[2].textContent = lastAnnualDepreciation.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); lastRow.cells[3].textContent = accumulatedDepreciation.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); lastRow.cells[4].textContent = remainingBasis.toLocaleString('en-US', { style: 'currency', currency: 'USD' }); } } // Initialize fields on load window.onload = function() { updateConventionFields(); calculateMACRS(); // Perform an initial calculation with default values };

Leave a Comment