Introduction to IAS 36 and Impairment Testing
When companies prepare their financial statements, one crucial responsibility is ensuring that the value of their assets reflects economic reality. IAS 36, Impairment of Assets, plays a key role in that process. It requires entities to assess whether their assets are carried at more than their recoverable amount—and if they are, to recognize an impairment loss.
Impairment testing under IAS 36 isn’t just a box-ticking exercise. It has real financial implications. An impairment can significantly affect a company’s reported profit, return on assets, and even investor confidence. Especially during periods of economic downturn, rapid technological change, or shifting consumer demand, companies must be vigilant in evaluating whether the value of their assets—whether it’s goodwill, plant and equipment, or intangible assets—still holds up under scrutiny.
The standard applies broadly to most non-financial assets, with some exceptions (like inventories and financial instruments, which are covered under other standards). What makes IAS 36 particularly challenging is the judgment involved: estimating future cash flows, selecting appropriate discount rates, and defining what constitutes a cash-generating unit (CGU) all require careful consideration.
This tutorial is designed to take the guesswork out of the process. Whether you’re a financial analyst, accountant, or student, we’ll walk you through how impairment testing works under IAS 36—both conceptually and practically. You’ll learn not only the theory behind the requirements but also how to implement the test step by step in Excel and R, using real-life data models.
By the end of this guide, you should be able to confidently model an impairment test, justify your assumptions, and understand how such evaluations impact financial reporting.
Understanding the Key Concepts of IAS 36
Before diving into spreadsheets and coding, it’s crucial to understand the foundation of IAS 36. Impairment testing is not just about math—it’s about applying accounting judgment to determine whether an asset’s book value still makes sense given the current and expected future economic environment.
Cash-Generating Units (CGUs)
At the heart of IAS 36 is the concept of a Cash-Generating Unit (CGU). A CGU is the smallest identifiable group of assets that generates cash inflows largely independent of other assets or groups. For example, a retail chain might treat each store or group of stores as a CGU, depending on how it earns revenue.
Why does this matter? Because impairment is assessed at the CGU level. If you can’t test an individual asset on its own (like goodwill), you test the CGU it belongs to.
Recoverable Amount
The next key concept is Recoverable Amount, defined as the higher of:
- Fair Value less Costs of Disposal (FVLCD) – the price that could be received to sell an asset in an orderly transaction, minus selling costs.
- Value in Use (VIU) – the present value of expected future cash flows from the asset or CGU.
In practice, many companies focus on VIU since market-based fair values aren’t always available—especially for internally used assets or unique CGUs.
Indicators of Impairment
IAS 36 requires a review for impairment indicators at each reporting date. These can be external (e.g., market decline, adverse economic shifts) or internal (e.g., poor performance, restructuring plans). Goodwill and certain intangibles must be tested annually, regardless of indicators.
Recognizing and Reversing an Impairment
If the carrying amount exceeds the recoverable amount, an impairment loss is recognized. This is charged to profit or loss and reduces the asset’s carrying value. In later periods, if the reasons for impairment no longer exist, the loss (except for goodwill) may be reversed, but only to the extent of what the asset’s carrying amount would have been if no impairment had been recognized.
Step-by-Step Structure of an Impairment Test
Now that we understand the core concepts behind IAS 36, let’s walk through how an impairment test is actually performed in practice. Whether you’re applying this in Excel or R, the structure remains the same. Think of it as a logical flow: identify, estimate, calculate, and compare.
1. Identify the Asset or CGU
The first step is to determine what exactly you are testing. If it’s an asset that generates cash independently—like a standalone piece of equipment—you might test it individually. But often, especially for goodwill or support functions, you’ll need to define a Cash-Generating Unit (CGU).
Be consistent in your approach and document how you determined your CGUs. This is particularly important for auditors and stakeholders reviewing your analysis.
2. Estimate Future Cash Flows
Next, estimate the expected future cash flows from the asset or CGU. These projections should be based on:
- Reasonable and supportable assumptions
- Management-approved budgets or forecasts (usually up to 5 years)
- A terminal value if the asset generates cash indefinitely
Exclude financing activities and income tax payments—IAS 36 focuses on pre-tax cash flows.
3. Determine the Discount Rate
Apply a pre-tax discount rate that reflects current market assessments of:
- The time value of money
- The risks specific to the asset or CGU
This is usually derived from the entity’s Weighted Average Cost of Capital (WACC), adjusted if necessary for asset-specific risks.
4. Calculate and Compare
Finally, calculate the present value of future cash flows (Value in Use). Compare this with the carrying amount of the asset or CGU. If the carrying amount exceeds the recoverable amount (either VIU or FVLCD), recognize an impairment loss for the difference.
Setting Up the Model in Excel
Once you understand the logic behind impairment testing under IAS 36, the next step is to build a working model. Excel is a powerful tool for this, especially when dealing with discounted cash flows, comparisons, and sensitivity analysis. Let’s walk through how to build an impairment test step by step using Excel.
1. Define Your Input Variables
Start by organizing your key inputs in a clean, separate section of your workbook. These typically include:
- Projected annual cash flows (usually 3–5 years)
- Terminal growth rate
- Discount rate (pre-tax WACC)
- Carrying amount of the asset or CGU
It’s a good idea to use named ranges or clearly labeled cells to avoid confusion later on.
2. Project Cash Flows
Next, input the expected future cash flows for each year. These should align with internal budgets or forecasts. Use an additional row for the terminal value, which estimates cash flows beyond the forecast period.
The terminal value is often calculated as:
Terminal Value = Final Year Cash Flow × (1 + g) / (r – g)
Where:
g
= terminal growth rater
= discount rate
3. Apply the Discount Rate (DCF Calculation)
Use Excel’s NPV
or XNPV
functions to calculate the present value of your forecasted cash flows. The basic NPV
function assumes evenly spaced periods, while XNPV
allows for irregular timing using specific dates.
Example:
=NPV(discount_rate, cash_flow_year_1:cash_flow_year_5) + terminal_value_discounted
Make sure to discount the terminal value separately, as it’s a single cash flow occurring at the end of the final forecast year.
4. Calculate Value in Use (VIU)
Sum all the present values of forecasted cash flows and the terminal value to get your Value in Use (VIU). This represents the recoverable amount under IAS 36 (if you’re not using Fair Value Less Costs of Disposal).
= Present Value of Yearly Cash Flows + Present Value of Terminal Value
5. Compare with Carrying Amount
Now compare the VIU with the carrying amount of the asset or CGU. If:
Carrying Amount > Value in Use → Impairment Loss = Carrying Amount – Value in Use
Record the difference as an impairment loss in your output section.
6. Add Sensitivity Analysis
Since impairment tests involve a lot of assumptions, adding a sensitivity table is extremely helpful. Use Excel’s Data Table
function to assess how changes in discount rate or terminal growth affect your VIU.
Example: Vary discount rates across columns and growth rates down rows to see how VIU changes.
7. Visualization and Reporting
To make the analysis more digestible, consider adding:
- Line graphs showing discounted vs. undiscounted cash flows
- Tornado charts for key sensitivities
- Conditional formatting to highlight impairment scenarios
Make sure all key results (like the impairment loss, VIU, and key assumptions) are clearly presented in an executive summary section.
Replicating the Model in R
While Excel is great for building straightforward financial models, R offers powerful advantages when you want to automate, scale, or visualize your impairment tests—especially for complex scenarios or recurring evaluations across multiple CGUs.
In this section, we’ll walk through how to build an IAS 36 impairment model in R, step by step. We’ll use a few popular packages: tidyverse
, lubridate
, and ggplot2
.
1. Set Up Your Environment
First, load the required libraries:
library(tidyverse)
library(lubridate)
library(ggplot2)
Then, define your input parameters:
cash_flows <- c(50000, 55000, 60000, 63000, 66000) # Forecasted cash flows
terminal_growth <- 0.02
discount_rate <- 0.10
carrying_amount <- 320000
2. Calculate Terminal Value and Discounted Cash Flows
We’ll start by calculating the Terminal Value, then discount all cash flows including the terminal amount.
final_year_cash <- tail(cash_flows, 1)
terminal_value <- final_year_cash * (1 + terminal_growth) / (discount_rate - terminal_growth)
cash_flows_with_terminal <- c(cash_flows, terminal_value)
years <- 1:length(cash_flows_with_terminal)
discount_factors <- 1 / (1 + discount_rate) ^ years
present_values <- cash_flows_with_terminal * discount_factors
3. Compute Value in Use (VIU) and Test for Impairment
Now sum the present values and compare with the carrying amount:
value_in_use <- sum(present_values)
impairment_loss <- ifelse(carrying_amount > value_in_use,
carrying_amount - value_in_use,
0)
print(paste("Value in Use:", round(value_in_use, 2)))
print(paste("Impairment Loss:", round(impairment_loss, 2)))
4. Add a Sensitivity Analysis (Discount Rate)
To test how sensitive your model is to changes in the discount rate, create a function:
calculate_viu <- function(rate) {
df <- 1 / (1 + rate) ^ years
pv <- cash_flows_with_terminal * df
sum(pv)
}
sensitivity_rates <- seq(0.06, 0.14, by = 0.01)
sensitivity_viu <- map_dbl(sensitivity_rates, calculate_viu)
sensitivity_df <- tibble(
Discount_Rate = sensitivity_rates,
Value_in_Use = sensitivity_viu
)
5. Visualize Results
Use ggplot2
to graph the sensitivity analysis:
ggplot(sensitivity_df, aes(x = Discount_Rate, y = Value_in_Use)) +
geom_line(color = "steelblue", size = 1.2) +
geom_point() +
geom_hline(yintercept = carrying_amount, linetype = "dashed", color = "red") +
labs(title = "Value in Use vs Discount Rate",
y = "Value in Use", x = "Discount Rate") +
theme_minimal()
This gives you a clear visual of how different rates impact VIU and at what point impairment occurs.
6. Document and Reuse
One of R’s greatest strengths is reproducibility. You can:
- Export results to CSV or PDF
- Wrap the whole model into a reusable function
- Schedule runs or integrate it into reporting workflows
For larger firms or audit environments, this level of transparency and automation is a major plus.
Case Study: End-to-End Example
Let’s apply everything we’ve covered so far with a real-world-style case study. This will help solidify your understanding of how IAS 36 impairment testing works from start to finish—both conceptually and through modeling.
Scenario
Imagine a mid-sized manufacturing company, BlueTech Ltd., which owns a production facility that constitutes a single Cash-Generating Unit (CGU). Due to increased competition and supply chain disruptions, management suspects that the value of the facility may be impaired and decides to conduct an impairment test at year-end.
Key details:
- Carrying amount of CGU: $420,000
- Forecast horizon: 5 years
- Projected cash flows:
Year 1: $75,000
Year 2: $78,000
Year 3: $82,000
Year 4: $85,000
Year 5: $88,000 - Terminal growth rate: 2.5%
- Discount rate (pre-tax): 9%
Step 1: Estimate Value in Use (VIU)
We calculate the terminal value as follows:
Terminal Value = Final Year Cash Flow × (1 + g) / (r – g) = 88,000 × 1.025 / (0.09 – 0.025) ≈ $1,386,154
The present value of each year’s cash flow and the terminal value is then calculated (in Excel or R) using the discount factor:
When summed, the total Value in Use (VIU) comes out to approximately $390,800.
Step 2: Compare with Carrying Amount
We now compare VIU with the carrying amount of the CGU:
- Carrying Amount: $420,000
- Value in Use: $390,800
Since the VIU is less than the carrying amount, the asset is impaired.
Step 3: Recognize Impairment Loss
An impairment loss of $29,200 is recorded:
Impairment Loss = Carrying Amount – VIU = 420,000 – 390,800 = $29,200
This amount would be recognized in the company’s profit or loss statement and reflected as a reduction in the carrying value of the CGU on the balance sheet.
Step 4: Visualize Sensitivities (Optional)
Using either Excel’s Data Table or R’s ggplot2
, BlueTech’s finance team also visualizes how changes in the discount rate (from 7% to 11%) affect the VIU. This analysis supports management’s judgment and helps auditors understand the assumptions’ impact.
This case study brings together the mechanics of IAS 36 with practical tools like Excel and R. The model’s clarity and flexibility make it a valuable asset not just for compliance, but also for strategic financial planning.
Common Challenges and Practical Insights
While impairment testing under IAS 36 is conceptually straightforward, it presents several practical challenges that require judgment, transparency, and communication.
1. Estimating Reliable Cash Flows
Forecasting future cash flows is inherently uncertain, especially in volatile markets or for long-lived assets. Overly optimistic projections can lead to underreporting impairment, while being too conservative may trigger unnecessary losses. To manage this, align projections with board-approved budgets, and document the rationale behind every key assumption.
2. Choosing an Appropriate Discount Rate
Selecting a pre-tax discount rate is another sticking point. Many entities mistakenly use a post-tax WACC or a rate inconsistent with market realities. The rate must reflect the time value of money and specific risks associated with the asset—not just the company as a whole. If in doubt, consult with valuation experts or cross-reference industry benchmarks.
3. Aggregation of Assets into CGUs
Defining CGUs can be subjective. Avoid aggregating unrelated assets just to avoid impairment—regulators are increasingly skeptical of such practices. Instead, justify the CGU boundaries with evidence (e.g., how cash inflows are generated and monitored).
4. Audit Trail and Documentation
Finally, build a strong audit trail. Ensure your model (Excel or R) is well-documented, with clear inputs, formulas, and sensitivity checks. This builds trust with auditors and improves future reproducibility.
Conclusion and Further Resources
Impairment testing under IAS 36 is more than a technical task—it’s a critical process for ensuring asset values reflect economic reality. By combining conceptual understanding with practical tools like Excel and R, you can build transparent, flexible, and audit-ready models that support both compliance and decision-making.
We’ve walked through key definitions, modeling steps, and a real-world case. To dive deeper, consider exploring:
- IFRS Foundation’s official IAS 36 guidance
- Valuation literature on DCF and WACC
- R packages like
finreportr
orvaluation
Remember: good modeling is as much about clear thinking as it is about correct formulas.