FV Function (Gnumeric)
Learn the FV function in Gnumeric: Future value. Returns the future value of an investment based on regular payments and a constant interest rate.
Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Gnumeric. How formula examples are checked
FV answers: How much might a present balance plus fixed deposits grow to after a defined number of equal intervals? It is a future-value calculation under a fixed per-period rate, not a projection of changing market rates. Gnumeric documents five arguments in the order rate, nper, pmt, pv, type [G1], and the upstream implementation treats the last two as optional [G3].
For a savings plan, negative payments represent cash leaving your account to be invested; the reported positive FV represents the amount returned to you at the endpoint. If you instead enter a positive payment and a positive starting value, the result is commonly negative: the signs are expressing opposite cash-flow directions, not a negative bank balance.
Scope, evidence and status
This is a Gnumeric-specific guide of a function registered in the Gnumeric Finance family. The official manual gives its exact argument order [G1], the project function catalogue calls its implementation Complete with Basic upstream testing [G2], and the current public GNOME source registers it in the finance plugin [G3]. Those are three different checks: a documentation entry, a catalogue classification, and source inspection. None establishes that the examples on this page were run in a native Gnumeric session.
The publicly listed 1.12.62 stable source release is dated 21 September 2026 [G4]. This article was researched 13 October 2026 against the accessible manual/catalogue and checksum-verified official GNOME Gnumeric 1.12.62 source. Source inspection is not a substitute for testing the installed package; availability can also depend on spreadsheet build and plugin configuration. Examples use English function names, decimal points and comma argument separators; a decimal-comma locale may require semicolons [G5]. Use the Function Selector to avoid guessing separators.
All example outputs below are independently calculated expected values, not screenshots or measured outputs from the application. Use the complete cell inputs to reproduce them, and check formatted rounding separately from stored precision.
Syntax and argument order
=FV(rate,nper,pmt,[pv],[type])
| Argument | Expected input | Required/default | Interpretation |
|---|---|---|---|
rate |
Number | Required | Interest rate per payment period, such as 6%/12 for nominal 6% with monthly payments. |
nper |
Number | Required | Number of equal periods, such as 12 months. |
pmt |
Number | Required | Fixed cash flow every period; negative for deposits/outgoing payments when the final value is displayed positive. |
pv |
Number | Optional; 0 | Starting balance or present-value cash flow. Follow the opposite-sign convention. |
type |
Number | Optional; 0 | 0 pays at period end; 1 pays at period beginning [G1]. |
Square brackets above are documentation notation for optional arguments; do not type square brackets into the actual formula. The authoritative argument order is from Gnumeric’s official Finance manual [G1] and the explicit required/optional separation is confirmed by the GNOME finance-plugin registration [G3].
What Gnumeric calculates
Gnumeric’s checked upstream calculation is equivalent to FV = -(pv × (1+r)^n + pmt × (1+r×type) × [((1+r)^n−1)/r]) for nonzero r. At r=0, its accumulation factor is n, giving FV=-(pv+n×pmt) [G3]. The type multiplier makes beginning-of-period payments earn one extra period of interest compared with end-of-period payments.
This formula is an interpretation of GNOME’s C implementation, not a statement that every other spreadsheet uses exactly the same coercion, rounding or special-case error behavior.
Reproducible worksheet examples
Worked example 1: save $200 at the end of each month
Create this small worksheet exactly; values in column B are inputs, not typed outputs.
| Cell | Label | Enter |
|---|---|---|
| A2 / B2 | Monthly rate | 0.5% |
| A3 / B3 | Months | 24 |
| A4 / B4 | Monthly deposit | -200 |
| A5 / B5 | Starting savings | 0 |
| A6 / B6 | When deposited | 0 |
| A8 / B8 | Expected future value | =FV(B2,B3,B4,B5,B6) |
Expected B8: 5,086.391048, or $5,086.39 when currency-formatted to cents. The deposits total 24 × 200 = $4,800; the difference (approximately $286.39) is the interest earned under a constant 0.5% monthly model. Do not enter 6% in B2 as if it were a monthly rate when your intended nominal rate was 6% annually.
Worked example 2: pay at the beginning instead
Set B6 to 1, leaving every other input unchanged. The formula =FV(B2,B3,B4,B5,B6) now has expected result 5,111.823003 ($5,111.82). The increase, about $25.43, is the value of one extra month of earnings on each deposit. [G1][G3]
Worked example 3: zero interest
=FV(0,24,-200,0,0) has expected result 4800. This is a useful independent sanity check: with zero interest, a series of 24 outflows of $200 becomes $4,800 at the end.
Worked example 4: test the loan payoff identity
With B11=6%/12, B12=12, and B13=12000, set B14 to =PMT(B11,B12,B13) (expected around -1,032.797156). Then =FV(B11,B12,B14,B13,0) is expected to be approximately zero, aside from floating-point rounding. This cross-check links FV to the existing Gnumeric PMT tutorial rather than trusting a displayed rounded payment.
Precision: expected results use independent arithmetic on underlying values; a currency format showing two decimals does not change the stored number. Values are not observations from a Gnumeric runtime.
Advanced use and model checks
Build a savings-target dashboard without hard-coded assumptions
Put a target in B16 (for example 6000) and display the surplus/shortfall with =FV(B2,B3,B4,B5,B6)-B16. A negative difference means the modelled plan is below target. Do not solve the missing monthly deposit by randomly changing rate; use PMT with consistent positive/negative signs and the same nper, pv, fv, type conventions [G1][G3].
When comparing two plans, keep the compounding interval consistent: a 6% nominal annual rate divided by 12 is not the same as a quoted 6% effective annual rate. For an effective annual 6% rate, use (1+6%)^(1/12)-1 as a comparable monthly effective rate; the distinction is an arithmetic conversion, not an assertion about financial product terms.
Check a mistaken sign or time convention
- Result negative? Confirm you did not make both deposits and the intended positive future balance positive.
- Beginning-versus-end amount different? That difference is expected for positive rates; confirm
typeat every stage. - Unexpectedly enormous result? Check that
nperis 24 for two years of monthly deposits, not 2, andrateis monthly rather than annual. - Target assumes variable interest? FV is a fixed-rate model; build a row-by-row schedule when rates vary. For different period rates without periodic deposits, look up FVSCHEDULE (documented separately [G1]).
Errors, unusual inputs and troubleshooting
| Symptom / edge | Supported explanation or check |
|---|---|
#VALUE! or a parsing failure |
Confirm English function name, argument separators and numeric cell values; upstream explicitly checks the payment-type helper, but its source converts a zero type to end-of-period and other nonzero numeric types to beginning-of-period [G3]. Enter only 0 or 1 for portable clarity. |
| A very large balance, or unexpected infinity-like output | Extremely high rates or large period counts can overflow floating-point arithmetic; neither source inspection nor documentation gives a reliable universal upper input range. Reduce magnitudes and inspect model assumptions. |
0 interest |
Unlike a naive formula dividing by rate, Gnumeric’s calculate_fvifa implements a zero-rate branch, so a valid zero-rate FV has a simple cash-flow sum [G3]. |
Blank pv or type |
Both are optional; upstream defaults pv to zero and type to end-of-period. Enter explicit zeros when teaching or sharing a workbook [G3]. |
rate <= -100%, negative nper, nonnumeric inputs |
These are not realistic standard savings scenarios; do not promise a particular error code without an application test. Check input validity and domain before using the output. |
For text or blank cells in required numeric arguments, the public manual alone does not establish every coercion or error for every installed build. Use numeric inputs, review Formula Error feedback in the actual software, and do not transplant undocumented Excel or LibreOffice rules into Gnumeric.
Gnumeric version, locales and compatibility
- Project evidence: public Finance manual plus GNOME finance-plugin source and public catalogue, all reviewed on 13 October 2026 [G1][G2][G3]. The upstream catalogue’s Complete / Basic label is a project classification, not an execution log for this tutorial.
- Release scope: 1.12.62 is listed in the upstream stable release archive (21 September 2026) [G4]. The code reviewed for behavior is from the checksum-verified official 1.12.62 source archive, not a native application run.
- Platform: Gnumeric is a GNOME desktop spreadsheet application. This research does not assert Windows/macOS package feature parity or test any packaged Linux distribution. Confirm your installed version and available functions.
- Formula input: the English documentation uses a period for decimals and a comma to separate arguments. In a decimal-comma locale, a semicolon separator may be required; a GNOME project contributor documents that distinction and recommends the function insertion UI [G5].
- Interchange: mathematical analogues may exist in Excel/LibreOffice, but no cross-import round-trip, XLSX rewrite or ODF execution was performed. Compare results and optional-argument behavior in both applications before relying on interoperability.
Related Gnumeric function guides
FV returns a future balance. PV computes the equivalent starting value for specified future flows. PMT solves for a constant payment. NPER solves for the number of periods; RATE solves for the rate. IPMT and PPMT split a loan payment into interest and principal. These are different unknowns in a related fixed-rate cash-flow equation [G1][G3].
Verification and evidence register
| Claim / check | What was actually checked | Evidence |
|---|---|---|
| Canonical name, documented arguments, related functions | Gnumeric official Finance manual | [G1] |
| Catalogue status | Official function catalogue: Complete / Basic | [G2] |
| Default arguments and formula/error branches | Official 1.12.62 plugins/fn-financial/functions.c |
[G3] |
| Stable release listing | GNOME download archive, 1.12.62 on 2026-09-21 | [G4] |
| Locale syntax caveat | GNOME project mailing-list answer about separators | [G5] |
| Numeric examples | Independent arithmetic/financial equations on these input values | Independent calculation from the displayed inputs |
| Native Gnumeric calculation / screenshots | Not performed | No runtime observations |
Dated official references
- [G1] Gnumeric official manual, Finance: https://gnome.pages.gitlab.gnome.org/gnumeric/manual/CATEGORY_Finance.html (checked 2026-10-13).
- [G2] Gnumeric official function catalogue: https://gnome.pages.gitlab.gnome.org/gnumeric-web/functions.shtml (checked 2026-10-13).
- [G3] GNOME Gnumeric source,
plugins/fn-financial/functions.c: https://download.gnome.org/sources/gnumeric/1.12/gnumeric-1.12.62.tar.xz (accessed 2026-10-13; official release archive checksum verified). - [G4] GNOME Gnumeric 1.12 stable release archive: https://download.gnome.org/sources/gnumeric/1.12/ (checked 2026-10-13; records version 1.12.62 dated 2026-09-21).
- [G5] Official Gnumeric mailing list, separator clarification: https://mail.gnome.org/archives/gnumeric-list/2010-June/msg00006.html (published 2010-06-07; checked 2026-10-13).