Contact

CUMPRINC Function (Gnumeric)

Financial Intermediate Gnumeric

Calculate total loan principal repaid across selected payment periods with Gnumeric CUMPRINC and verify remaining balances.

Verification status: Official documentation referenced; example outcomes independently reasoned or arithmetically checked where stated. Not executed in Gnumeric. How formula examples are checked

Validation scope: Results are independently calculated expectations, not outputs observed in a running Gnumeric session.

Gnumeric support and notation

This page concerns Gnumeric (GNOME’s spreadsheet application), not the identically named feature in another spreadsheet. The official Gnumeric Finance reference documents the signature and behaviour, and the public function catalogue lists the function’s implementation as Complete with Basic upstream testing (both checked 2026-10-13). The Gnumeric 1.12.62 release announcement confirms the target release exists, but this manuscript does not establish that every supported operating-system package ships identical binaries or that our examples ran in that version. Consult your distribution’s Gnumeric package and function list. These are finance functions, not optional add-ins asserted to be available on every platform.

Formula syntax below uses the English function name, decimal point and comma-separated arguments shown by the English Gnumeric reference. Some installations use a localized decimal separator and/or argument delimiter; check the on-screen Function Selector and adapt syntax rather than pasting commas blindly. Put percentage values in cells as numbers formatted as percentages (for example, 6% = 0.06); do not type the number 6 when you mean six percent.

What CUMPRINC measures

CUMPRINC calculates the signed principal component of a regular loan’s repayments between chosen payment numbers. It answers how much of the original borrowed amount has been paid down, rather than how much interest has been charged. Typical uses include annual debt-reduction reports, balance forecasts and checking whether principal repayment accelerates over a fixed-rate amortization. The official Gnumeric Finance manual explicitly identifies CUMPRINC as cumulative principal. Official Gnumeric manual — CUMPRINC, checked 2026-10-13.

CUMPRINC is not the sum of entire instalments (PMT), not the cost of borrowing (CUMIPMT), and not automatically the remaining balance. For the latter, compare the original positive loan value against the absolute principal repaid to date.

Exact Gnumeric syntax and required arguments

=CUMPRINC(rate,nper,pv,start_period,end_period,type)
Order Parameter Input type Meaning / default
1 rate Numeric interest rate per scheduled repayment period Required; monthly for monthly payments.
2 nper Numeric total repayment periods, normally positive whole number Required.
3 pv Numeric loan’s starting present value Required; borrower receives positive pv in our example.
4 start_period Numeric first included payment, conventionally starting at 1 Required.
5 end_period Numeric last included payment Required; include both interval endpoints.
6 type Timing flag 0 (end) or 1 (beginning) Required in 1.12.62 registration: 0 for end, 1 for beginning. The shared help note calls 0 the default, but do not omit this argument.

The manual documents these argument names; its shared default-type note differs from the 1.12.62 registry, which requires all six arguments. It does not provide exhaustive coercion/error semantics for each type, so no undocumented assumptions about fractional nper values are presented as native Gnumeric facts. Gnumeric Finance manual.

Shared worksheet setup: twelve monthly loan payments

These examples use a $12,000 initial loan, 6% nominal annual interest, 12 equal monthly repayments, and payment at the end of each month. Gnumeric’s finance manual calls the first argument rate and explicitly defines it as per period; therefore use 6%/12, not 6%, when payments are monthly. Use the conventional finance signs: the loan received is positive, while payments made by the borrower are negative. Gnumeric manual — CUMIPMT, CUMPRINC, PMT.

Cell Meaning Input / formula Expected interpretation
A2 / B2 Nominal annual interest 6% Six percent yearly
A3 / B3 Monthly interest rate =B2/12 0.005 = 0.5% per month
A4 / B4 Number of monthly payments 12 12 periods
A5 / B5 Amount borrowed (PV) 12000 Positive $12,000
A6 / B6 Payment timing (type) 0 End of each month
A7 / B7 Monthly instalment =PMT(B3,B4,B5,0,B6) -1032.797156485

Keep full precision in B7 for follow-on calculations; formatting a cell to two decimals is different from manually rounding intermediate values. The PMT expression is consistent with the constant-payment annuity identity -12000*(0.005)/(1-(1.005)^-12). Independent calculation finds -$1,032.80 per month to cents.

Create an independent amortization check: put periods 1 through 12 in A12:A23. In B12 enter =IPMT($B$3,A12,$B$4,$B$5,0,$B$6); in C12 enter =PPMT($B$3,A12,$B$4,$B$5,0,$B$6); fill both down to row 23. This produces a proposed formula-by-formula comparison, not a recorded Gnumeric run. The first expected row is interest -60.00, principal -972.797156485; each row’s signed interest + principal should equal $B$7. Official Gnumeric manual — IPMT and PPMT.

Reproducible CUMPRINC examples

Enter these functions with the common B2:B7 loan setup:

Formula Payment interval Independently calculated signed principal amount
=CUMPRINC($B$3,$B$4,$B$5,1,1,$B$6) Month 1 -972.797156485
=CUMPRINC($B$3,$B$4,$B$5,1,3,$B$6) Months 1–3 -2933.007746731
=CUMPRINC($B$3,$B$4,$B$5,4,6,$B$6) Months 4–6 -2977.223205139
=CUMPRINC($B$3,$B$4,$B$5,1,6,$B$6) Months 1–6 -5910.230951870
=CUMPRINC($B$3,$B$4,$B$5,1,12,$B$6) Full term Approximately -12000.00

Since the original pv is positive (money received by borrower), principal paid out is negative. To present positive debt reduction, negate the result. A cumulative principal of -5910.230951870 at month 6 corresponds to approximately $5,910.23 repaid, not a negative remaining debt. These are independent expectations; there was no native Gnumeric session during this review.

Advanced use: build a remaining-balance report

The expected outstanding principal after month 6 is:

=$B$5+CUMPRINC($B$3,$B$4,$B$5,1,6,$B$6)

That is $12,000 + (-5,910.230951870) = $6,089.769048130 remaining, before any fees or additional unmodeled activity. This sign-preserving formula is more reliable than blindly using absolute values when auditing accounting cash-flow records.

To calculate principal repaid during months 4–6 in a selection table, set E2=4, E3=6, then enter =CUMPRINC($B$3,$B$4,$B$5,E2,E3,$B$6). Expected result -2977.223205139. Check against =SUM(C15:C17) after populating C12:C23 with the PPMT expressions in the shared setup. Record interval endpoints alongside financial reporting periods to avoid claiming an arbitrary three-payment interval exactly matches calendar-quarter dates.

Cross-check interest + principal = payments

A reliable expected reconciliation for months 1–3 is:

Quantity Independent amount
=CUMIPMT($B$3,$B$4,$B$5,1,3,$B$6) -165.383722724
=CUMPRINC($B$3,$B$4,$B$5,1,3,$B$6) -2933.007746731
Sum of interest + principal -3098.391469455
=3*$B$7 -3098.391469455

Thus both cumulative functions should reconcile to three fixed instalments, allowing small numeric differences from floating-point evaluation. Documented Gnumeric companions: CUMIPMT, PMT, IPMT, PPMT.

Troubleshooting and limits

  • Treating principal as interest: CUMPRINC is the debt repayment component. For financing cost, use CUMIPMT instead.
  • Using 6% directly for monthly payments: input a period rate consistent with your repayments, not the annual nominal quote. Here that is =6%/12.
  • Wrong interval: verify 1 <= start_period <= end_period <= nper for the conventional schedule. Documented function help defines start and end periods, but exact native error text for invalid bounds was not verified.
  • Wrong payment timing (type): beginning-of-period 1 differs from end-of-period 0. Do not pair a type=1 result with a type=0 PMT schedule.
  • Unexpected negative number: under positive pv, principal repayment is a borrower cash outflow. Negate only for a clearly labeled positive repayment report.
  • Not matching a bank statement to the cent: lender-specific rounding, fees, nonmonthly accrual or extra payments can invalidate the fixed-annuity assumptions. Test the schedule’s contractual terms before drawing conclusions.
  • Input bounds: The 1.12.62 source returns a NUM-kind error for nonpositive rate, principal or period count, or bounds outside 1 <= start_period <= end_period <= nper. Period counts are converted to integers. The timing helper maps zero to end-of-period and nonzero numeric values to beginning-of-period; use explicit 0 or 1. Exact UI rendering and text coercion remain untested; use positive numeric values and whole periods.
  • Locale differences: some installations need localized separators; follow Gnumeric’s Function Selector rather than assuming Excel settings.

Evidence and validation

Official sources were checked on 2026-10-13:

  1. Gnumeric manual — Finance function reference: exact Gnumeric signature, argument names, purpose and documented defaults; relevant function heading CUMPRINC. This is documentation evidence, not an execution trace.
  2. Gnumeric official function catalogue: lists cumprinc as Complete / Basic; catalogue classification is not a guarantee that this manuscript’s test values passed a native session.
  3. GNOME Gnumeric 1.12.62 release announcement: version context. The web reference is updated separately from specific installed builds, and the reviewed implementation is scoped to the checksum-verified official 1.12.62 source archive. No native application execution was performed.

Validation scope: Official documentation and checksum-verified Gnumeric 1.12.62 source were reviewed; example arithmetic was independently recalculated. Native Gnumeric execution, screenshots, locale/platform regression tests and workbook round-trips were not performed.