IRR Function (OpenOffice Calc)
Find equal-period cash-flow returns with Apache OpenOffice IRR. Check the initial investment, zero periods, guesses and a discounted-cash-flow residual.
Verification status: Eight ordinary reference formulas were recalculated in Apache OpenOffice 4.1.16 on Linux x86-64, Build 9816, through generated native ODF and GUI hard recalculation. Saved identities, inputs and results were checked. How formula examples are checked
Quick answer: =IRR(F10:F14) returned 0.128257269002 in the tested Apache OpenOffice 4.1.16 build. Use the numeric worksheet setup below for these range addresses.
Availability and version history
- Introduced: First release not established; documented by OpenOffice.org 3.3.
- Supported in: Apache OpenOffice 4.1.16; this is a verified release, not a final supported version.
- Scope: Desktop Calc, English function names and semicolon-separated formulas.
- Checked: October 14, 2026. Eight ordinary reference formulas were recalculated from generated ODF in 4.1.16 on Linux x86-64, Build 9816. Source and independent arithmetic were checked.
What IRR returns
IRR seeks a rate per equal cash-flow period that makes the discounted sum of the supplied values zero. The first numeric flow is at time zero. It uses the order of the numeric values, not their adjacent calendar dates. This release accepts a worksheet range for Values. Release implementation.
Syntax and arguments
=IRR(Values[;Guess])
- Values: range of numeric cash flows in chronological, equally spaced order; use opposite signs for payments and receipts.
- Guess: optional starting rate, default 0.1. A guess is a starting point for an iterative search, not a promised answer.
- Keep an actual numeric zero for a period with no cash flow.
Numeric worksheet setup
Enter the values in the stated cells. G contains numeric date serials with the December 30, 1899 origin. A dash marks an unused cell, not a zero to enter.
| Row | F: ordinary flows | G: date serial and interpretation | H: delayed receipt | I: two investments | J: two flows | K: three receipts |
|---|---|---|---|---|---|---|
| 10 | −1000 | 45292 (2024-01-01) | −1000 | −1000 | −1000 | −1000 |
| 11 | 200 | 45474 (2024-07-01) | 0 | −100 | 1100 | 400 |
| 12 | 300 | 45658 (2025-01-01) | 0 | 300 | — | 400 |
| 13 | 400 | 45839 (2025-07-01) | 0 | 500 | — | 400 |
| 14 | 500 | 46023 (2026-01-01) | 1500 | 700 | — | — |
IRR treats successive numeric entries as equal periods; XIRR uses their actual paired dates. Keep the timing models distinct.
Eight reproducible examples
The native column contains saved 4.1.16 results; independent references use high-precision arithmetic and the stated source rules. Values are shown to twelve decimal places where needed. The range examples use the numeric setup above.
| Formula | Native 4.1.16 result | Independent reference |
|---|---|---|
=IRR(F10:F14) |
0.128257269002 |
0.128257269002 |
=IRR(F10:F14;.05) |
0.128257269002 |
0.128257269002 |
=IRR(F10:F14;.2) |
0.128257269002 |
0.128257269002 |
=IRR(H10:H14) |
0.1066819197 |
0.1066819197 |
=IRR(I10:I14) |
0.103470730417 |
0.103470730417 |
=IRR(J10:J11) |
0.1 |
0.1 |
=IRR(K10:K13) |
0.097010257403 |
0.097010257403 |
=IRR(K10:K13;.05) |
0.097010257403 |
0.097010257403 |
Practical worksheet
The five ordinary flows in F10:F14 give a periodic return approximately 0.128257269002, or 12.8257269002%. The first −1000 is the initial investment; receipts 200, 300, 400 and 500 occur at periods 1, 2, 3 and 4. Guess values 0.05 and 0.2 reach the same root for this particular schedule.
H10:H14 contains three intervening numeric zeros and a final 1500 receipt. Its return is the fourth root of 1.5 minus 1, approximately 0.106681919700. Deleting those zero periods would change the timing and the meaning of the result.
Advanced interpretation and checks
Check a candidate r by evaluating −1000+200/(1+r)+300/(1+r)^2+400/(1+r)^3+500/(1+r)^4. An accurate root makes that residual close to zero. Calc NPV discounts its first supplied value by one period, so the corresponding worksheet check is F10+NPV(r;F11:F14), with r in a numeric cell or replaced by the calculated rate.
A single payment of −1000 followed one period later by 1100 has return 10%. The irregular calendar dates in column G are irrelevant to IRR; use XIRR when those actual dates are part of the model. Do not compare a monthly IRR directly with an annual quoted return.
Boundaries and troubleshooting
The retained implementation uses Newton iteration with a limit of twenty iterations and a convergence test. A failure to converge does not establish that no mathematical root exists. Cash-flow patterns with several sign changes can have multiple roots, so a returned value is not a uniqueness certificate.
Use a contiguous numeric range with deliberate zero entries. The source iterates numeric values; text and genuinely empty cells are not reliable placeholders for elapsed periods. The examples contain only explicit numeric flows. These ordinary schedules were recalculated; missing arguments, nonconvergence and unusual guesses were not executed.
Related functions
Official evidence and checking scope
The generated ODF produced the informational load warning “Not all attributes could be read.” The sheet was hard-recalculated and saved separately. All eight ordinary function identities, inputs and results were reconciled; a stale SUM cache changed from 999999 to 3 and an uncached SUM returned 7. This establishes the stated examples, not every workbook style or invalid input. Other explanatory identities are independent calculations. The authoring-tool XLSX was not executed in OpenOffice, and its preview values are not the native results reported here.