The IRR function calculates the internal rate of return for a series of positive and negative transactions. It can be used either with all transactions over a timescale, or with specified transactions on certain dates.
The internal rate of return is the annual rate of return an investment is expected to generate. You could use the IRR function to assess a number of investments and find the most effective investment.
Syntax
The IRR function has two different syntaxes. The syntax that applies depends on whether you use more or less than two arguments with the function.
IRR with time scale
IRR(Cash flow [, Estimate])
IRR with dates
IRR(Cash flow, Dates, Transactions [, Estimate])
Arguments
IRR with time scale
Argument | Data type | Description |
Cash flow (required) | Number | A line item that contains a series of positive and negative values that represent cash inflow and outflow. The line item used for this argument must have a time scale. |
Estimate | Number | An estimate of the IRR. This argument uses percentage format, so 0.1 is equal to 10%. This argument is optional and helps the IRR function to calculate a result more quickly. |
IRR with dates
Argument | Data type | Description |
Cash flow (required) | Number | A series of positive and negative values that represent cash inflow and outflow. Must have the list used for the Transactions argument as a dimension. |
Dates (required) | Date | The date associated with each value of the Cash flow argument. |
Transactions (required) | List | A list of transactions, which must be a common dimension of the Cash flow and Dates argument. |
Estimate of rate | Number | An estimate of the IRR. This argument uses percentage format, so 0.1 is equal to 10%. This argument is optional and helps the IRR function to calculate a result more quickly. |
The IRR function returns a number.
Calculation engine functionality differences
Financial functions are currently unavailable in Polaris. Learn more about the differences between Anaplan calculation engines.
Additional information
How IRR is calculated
IRR is the iterative solution to this equation:
In this equation:
- N is the total number of cash flows.
- Pi is the ith cash flow.
- di is the number of days from the start of the first period.
When used without the dates parameter, the IRR function calculates the internal rate of return for a series of periodic cash flows.
When used with a dates parameter, the IRR function can provide a more accurate estimate by mitigating against the affected leap years and non-equivalent time intervals cash flows may have on the calculation.
Use IRR with the Users list
You can reference the Users list with the IRR function. However, you cannot reference specific users within the Users list as this is production data, which can change and make your formula invalid.
Constraints
The Cashflow argument must contain at least one positive and one negative value.
Examples
Example of IRR with time scale
This example uses two modules. The first module, Annual cash flow, contains Cash flow line item with a Time Scale of Year. The Cash flow line item contains both a positive and negative value.
FY20 | FY21 | FY22 | |
Cash flow | -100,000 | 0 | 130,000 |
The second module contains a single Percent format line item, which contains a formula that uses IRR with the Cash flow line item from the first module. As the IRR function returns a single value, the result does not need a time dimension.
IRR of annual cash flow
| 14.0% |
Example of IRR with dates
In this example, two modules are used. One source module, Plant Transaction Data, is dimensioned by the Transactions and Plants lists. Transactions is on rows, and Plants is on pages, with Plant 1 selected.
The Plant Transaction Data module contains the values of transactions, dates of transactions, and a description for some transactions.
Description | Cash flow | Date | |
Transaction 01 | Land purchase | -100,000 | 1/1/2011 |
Transaction 02 | Turbine purchase | -850,000 | 1/1/2012 |
Transaction 03 | Energy generation revenue | 200,000 | 1/3/2013 |
Transaction 04 | Energy generation revenue | 200,000 | 1/3/2014 |
Transaction 05 | Energy generation revenue | 200,000 | 1/3/2015 |
Transaction 06 | Energy generation revenue | 200,000 | 1/3/2016 |
Transaction 07 | Energy generation revenue | 200,000 | 1/3/2017 |
Transaction 08 | Energy generation revenue | 200,000 | 1/3/2018 |
Transaction 09 | Energy generation revenue | 200,000 | 1/3/2019 |
Transaction 10 | Energy generation revenue | 200,000 | 1/3/2020 |
Transaction 11 | Energy generation revenue | 200,000 | 1/3/2021 |
Transaction 12 | Energy generation revenue | 200,000 | 1/3/2022 |
Transaction 13 | Energy generation revenue | 200,000 | 1/3/2023 |
Transaction 14 | Energy generation revenue | 200,000 | 1/3/2024 |
Transaction 15 | Energy generation revenue | 200,000 | 1/3/2025 |
Transaction 16 | Final energy generation revenue | 200,000 | 1/3/2026 |
Total | 1,850,000 |
The second module uses the data from the Plant Transaction Data module with the IRR function to calculate the internal rate of return for each plant. The column for Plant 1 contains the internal rate of return for data displayed in the Plant Transaction Data module.
Plant 1 | Plant 2 | Plant 3 | Plant 4 | |
Internal Return Rate for Plant
| 18.1% | 12.2% | 13.8% | 9.2% |