Dax Function: CUMPRINC

Category: Financial Functions

The CUMPRINC function in Power BI calculates the cumulative principal paid on a loan between two specified periods. It is commonly used for loan amortization analysis and financial modeling.

Purpose

  • Determines total principal repayment within a specified period.

  • Useful for analyzing loan repayment schedules and financial forecasting.

  • Helps in budgeting and financial planning.

Type of Calculations

  • Computes principal payments (excluding interest) made over a range of loan periods.

  • Uses loan amortization formulas to calculate the total principal paid.

Practical Use Cases

  • Loan Amortization Tables: Analyze how much of a loan’s principal is repaid over time.

  • Debt Repayment Tracking: Evaluate how much principal has been paid at different stages of a loan.

  • Financial Dashboards: Create visuals showing total principal vs. interest payments.

CUMPRINC(rate, nper, pv, start_period, end_period, type)
 
ParameterTypeDescription
rateScalar (decimal)The interest rate per period (e.g., monthly interest rate).
nperScalar (integer)The total number of payment periods in the loan.
pvScalar (decimal)The present value (principal) of the loan.
start_periodScalar (integer)The first period in the calculation range.
end_periodScalar (integer)The last period in the calculation range.
typeScalar (integer)Determines when payments are made:
0 = End of the period (default)
1 = Beginning of the period

 


How Does
 Dax Function Works

The function calculates the principal component of loan payments using the loan amortization formula:

  1. Determine total periodic payment using the PMT function:

    where:

    • P = periodic payment (includes principal + interest)

    • r = interest rate per period

    • PV = loan amount

    • n = total number of periods

  2. Compute principal paid for each period:

    • Interest Payment = Remaining Principal × Interest Rate

  3. Sum principal payments for the given range (start_period to end_period).

What Does It Return?

  • Returns a negative decimal number representing the total principal paid between start_period and end_period.

  • The value is negative because it represents an outflow of money.

When Should We Use It?

Use CUMPRINC when you need to:

  • Track loan repayments and see how much principal has been paid.

  • Forecast financial obligations for loan repayments over time.

  • Analyze total debt reduction across specific loan periods.

Examples

Basic Usage :

Calculate the total principal paid in the first year for a 5-year loan of $100,000 at 5% annual interest, with monthly payments.

CUMPRINC(5%/12, 60, 100000, 1, 12, 0)

Returns: -17893.98 (Total principal repaid in first year)

Column Usage:

Create a calculated column to track principal payments per year:

AnnualPrincipal =
CUMPRINC(
    Loans[Rate]/12,
    Loans[TotalMonths],
    Loans[Principal],
    Loans[StartMonth],
    Loans[EndMonth],
    0
)

Used in loan amortization schedules for financial reports.

Advanced Usage

Calculate total principal paid over the full loan period:

TotalPrincipalPaid =
CUMPRINC([Rate]/12, [TotalMonths], [Principal], 1, [TotalMonths], 0)

Equivalent to the entire principal amount of the loan.

Tips and Tricks

  • Convert annual interest rates into periodic rates (e.g., rate/12 for monthly).

  • Use ABS(CUMPRINC(...)) if you want positive principal values.

  • Returns negative values by default (since it’s an expense).

  • Ensure start_period ≤ end_period, otherwise, it throws an error.

  • Use type=1 if payments are made at the start of each period.

Performance Impact of CUMPRINC DAX Function:

  • Computationally efficient for loan schedules.

  • Best used with aggregated calculations for performance optimization.

Related Functions You Might Need

FunctionDescription
CUMIPMTReturns cumulative interest paid over a period.
PMTCalculates fixed loan payments (principal + interest).
IPMTComputes interest paid on a single payment period.
PPMTCalculates principal paid on a specific payment.

 

Want to Learn More?
For more information, check out the official Microsoft documentation for CUMPRINC You can also experiment with this function in your Power BI reports to explore its capabilities.

Unlock the full capabilities of Power BI and elevate your data insights with our specialized consulting services. Whether you need guidance on advanced DAX functions like those highlighted here, support in designing interactive dashboards, or expertise in optimizing data models for enhanced performance, our experienced Power BI consultants are equipped to deliver customized solutions for your business. Explore our Power BI Consulting Services page to discover how we can help your organization make smarter, data-driven decisions.

1. What does CUMPRINC return in Power BI?

It returns the cumulative principal paid between specified start and end periods for a loan.

2. What is the difference between CUMPRINC and CUMIPMT?
  • CUMPRINC calculates total principal paid over a range of periods.

  • CUMIPMT calculates total interest paid over a range of periods.

3. Can CUMPRINC return positive values?

By default, it returns negative values (outflow of money). Use ABS(CUMPRINC(...)) for positive values.

4. What if the start period is greater than the end period?

The function returns an error. Ensure start_period ≤ end_period.

5. Is CUMPRINC available in Excel?

Yes. It functions similarly in Excel and Power BI.

Established in 2020, Lets Viz Technologies provides a full range of high-quality data analysis and data visualization services. We are also an authorized Zoho Partner.

 

Contact

WeWork Berger Delhi One, C-001/A2, Sector 16B, Noida, Uttar Pradesh 201301

0124-502-5592
info@lets-viz.com

We are Social

Trust Pilot Reviews