DATEDIF for IFRS 16: Day-Count Precision in Lease Liability Amortisation
Use DATEDIF to calculate precise stub-period interest and remaining lease term disclosures for IFRS 16, verified against a real lease example.

ACA | FMVA® | 19 Years in Finance
Leases rarely commence on the first of a month. A new site opens on the 17th, a piece of equipment goes into service the day it's delivered, and the standard monthly PMT, IPMT, PPMT amortisation structure, built for clean, equal periods, has no natural way to handle those first fourteen days. Most schedules either quietly ignore the stub period, understating both the finance charge and the lease liability from day one, or approximate it with a rough "half a month" fraction that doesn't match the actual calendar. DATEDIF calculates the real day count, which is what a stub-period interest charge actually needs.
This guide builds a precise stub-period calculation for a mid-month lease commencement, then extends DATEDIF into the remaining-term disclosure figures that IFRS 16 notes require at each reporting date.

Why Mid-Month Lease Commencement Breaks a Standard Schedule
The PMT/IPMT/PPMT structure assumes clean, equal-length periods, each month's interest calculated on the balance at the start of that month, using a consistent monthly rate. That works perfectly once a schedule is running on full calendar months. It has no built-in mechanism for a lease that commences on 17 March: the first "period" is only 14 days long, not a full month, and applying a full month's interest rate to it overstates the stub period's finance charge, while ignoring it entirely understates the liability's initial measurement.
The fix isn't a different amortisation function, PMT, IPMT, and PPMT still handle every full period correctly once the schedule is running. The fix is calculating the stub period separately, using the actual number of days involved, and DATEDIF is the function built for exactly that.
What DATEDIF Actually Calculates
Per Microsoft's official DATEDIF function reference:
=DATEDIF(start_date, end_date, unit)
The unit argument determines what's returned: "d" for total days between the two dates, "y" for complete years, "m" for complete months, and three combination units, "ym" (months, ignoring years), "yd" (days, ignoring years), and "md" (days, ignoring both years and months), which together let you build a genuine "X years, Y months, Z days" figure rather than just a single unit of difference.
The Scenario: A Lease Commencing Mid-Month
Consider a fictional equipment lease for Meridian Group: commencement on 17 March Year 1, a 5-year term ending 16 March Year 6, with an initial lease liability (present value of future payments) of 260,000 and an 8% annual discount rate. The first full monthly payment is due 1 April, leaving a 14-day stub period between commencement and the start of the first full month.
Step 1: Calculating the Stub Period Interest With DATEDIF
=DATEDIF(DATE(Y1,3,17), DATE(Y1,3,31), "d")
This returns 14, the actual number of days between lease commencement and month-end. Applying the annual discount rate as a day-count fraction against the initial liability:
=260000 * 0.08 * (DATEDIF(DATE(Y1,3,17), DATE(Y1,3,31), "d") / 365)
This returns a stub period finance charge of 797.81, the actual interest accrued on the liability for those specific 14 days, not a rough approximation based on "half a month" or a flat monthly rate applied to a partial period.

Step 2: Feeding the Stub Interest Into the First Full Month
The stub period interest capitalises into the lease liability before the first full monthly period begins, so April's amortisation runs against the increased balance:
Liability entering April = 260,000 + 797.81 = 260,797.81
With a monthly lease payment of 5,271.86 (calculated via PMT against the original 260,000 over 60 months at the monthly-equivalent rate), April's interest and principal split, using IPMT and PPMT against the stub-adjusted opening balance, comes to 1,738.65 interest and 3,533.21 principal, rather than the figures IPMT/PPMT would return if run directly against the un-adjusted 260,000. Skipping the stub period calculation and starting IPMT/PPMT straight from the original balance would understate the liability actually carried into April by the 797.81 stub interest, a small figure on one lease, but one that compounds across a full lease portfolio and misstates the finance charge for every subsequent period, not just the first.
Step 3: Remaining Lease Term Disclosure With Y, YM, and MD
IFRS 16 lease disclosures commonly require the remaining lease term expressed in a readable "X years, Y months" format, recalculated at each reporting date rather than fixed at commencement. Building this with the three DATEDIF combination units:
Years: =DATEDIF([@ReportingDate], [@LeaseEndDate], "y")
Months: =DATEDIF([@ReportingDate], [@LeaseEndDate], "ym")
Days: =DATEDIF([@ReportingDate], [@LeaseEndDate], "md")
For a reporting date of 31 December Year 1 against the lease's 16 March Year 6 end date, this returns 4 years, 2 months, 16 days, genuinely precise, and the three figures used together (not the raw "d" total days count alone) produce the readable disclosure format most lease notes actually require.

Step 4: Making the Disclosure Recalculate at Any Reporting Date
Because each of the three formulas above references a ReportingDate cell rather than a hardcoded date, the entire "years, months, days remaining" disclosure recalculates automatically the moment that cell changes, at quarter-end, half-year, or annual reporting, without rebuilding the calculation each time:
="Remaining lease term: " & DATEDIF([@ReportingDate],[@LeaseEndDate],"y") & " years, " & DATEDIF([@ReportingDate],[@LeaseEndDate],"ym") & " months, " & DATEDIF([@ReportingDate],[@LeaseEndDate],"md") & " days"
This concatenates the three DATEDIF results into one readable disclosure string, ready to drop directly into a lease note schedule.
The DATEDIF "MD" Quirk Worth Knowing About
This is worth flagging directly rather than discovering it in an audit review: Microsoft's own documentation notes that the "md" argument can produce unexpected results in certain month-length edge cases, specifically when the end date's day-of-month is earlier in the calendar than the start date's, combined with months of differing lengths (for example, calculating "md" across a period that spans from a 31-day month into February). For most standard lease commencement and reporting date combinations, "md" behaves correctly, as it does in the worked example above, but for a lease portfolio with dates falling near month-end, it's worth spot-checking a few "md" results manually against a calendar rather than trusting the function blindly across every row.

Three Mistakes That Break DATEDIF-Based Lease Schedules
Getting the start_date and end_date arguments the wrong way round. DATEDIF requires start_date to be chronologically before end_date, reverse them and the function returns a #NUM! error rather than a negative figure. This matters specifically in the remaining-term calculation, where it's easy to instinctively write DATEDIF(LeaseEndDate, ReportingDate, ...) instead of the correct order shown in Step 3.
Using "d" alone where "y", "ym", "md" combined are actually needed. A total day count is accurate but not the disclosure format most lease notes require. Building the full years/months/days breakdown, as in Step 3, takes three formulas rather than one, but it's the format that's actually usable in a disclosure note.
Forgetting the stub period entirely. This is the costliest mistake, not a formula error, a schedule that starts IPMT/PPMT directly from lease commencement without first calculating and capitalising the stub period interest understates the lease liability and finance charge from the very first full period onward, and the understatement persists for the life of the lease unless caught and corrected.
When DATEDIF Isn't Enough
This approach handles precise stub-period and disclosure calculations cleanly for a single lease or a modest lease register maintained manually. Once you're managing a large lease portfolio with modifications, remeasurements, and multiple reporting dates across many leases simultaneously, tracking each lease's stub period and disclosure figures individually in Excel becomes a genuine reconciliation burden, particularly since a modification to one lease can change its remaining term calculation independently of every other lease on the register.
If you're managing lease liabilities alongside a broader fixed asset register, DepreciationLab handles stub-period day-count precision and remaining-term disclosure automatically across a full portfolio, reconciled to the same GL structure as your depreciation schedules.
Frequently Asked Questions
Why doesn't a standard PMT/IPMT/PPMT schedule handle a mid-month lease commencement?
PMT, IPMT, and PPMT assume equal-length periods running from a clean start date. A lease commencing on the 17th of a month has a first period of only 14 days, not a full month, and there's no argument within those three functions that accounts for a partial period, the stub period needs to be calculated separately, which is exactly what DATEDIF is for.
What's the difference between DATEDIF's "d" argument and combining "y", "ym", and "md"?
"d" returns the total number of days between two dates as a single figure, useful for a day-count interest calculation like the stub period example in this article. "y", "ym", and "md" combined break that same gap into a readable years/months/days format, which is what most lease disclosure notes actually require rather than a raw day count.
Is the DATEDIF "md" argument reliable?
For most standard date combinations, yes, including the worked example in this article. Microsoft's own documentation flags specific edge cases involving month-length differences (particularly around February) where "md" can return an unexpected result. For a lease portfolio with many commencement or reporting dates, it's worth spot-checking a sample of "md" results manually rather than trusting every row without review.
How do I capitalise stub period interest into the lease liability correctly?
Add the calculated stub period interest to the initial lease liability before running the first full period's IPMT/PPMT calculation, as shown in Step 2. The stub-adjusted balance becomes the opening balance for the first full period, which then flows through the rest of the schedule using the standard structure covered in PMT, IPMT, PPMT for loan and lease amortisation.
Does the remaining lease term disclosure need to be recalculated every reporting period?
Yes, IFRS 16 disclosures typically require the remaining term as at each reporting date, not a static figure fixed at lease commencement. Building the DATEDIF formulas to reference a live ReportingDate cell, as in Step 4, means the disclosure updates automatically each period rather than needing manual recalculation.
Can DATEDIF handle a lease term measured from a mid-month reporting date, not just a mid-month commencement date?
Yes, DATEDIF works from any two valid dates in either argument position, so a reporting date that itself falls mid-month works exactly the same way as the mid-month commencement scenario in this article. The function doesn't distinguish between a "commencement" date and a "reporting" date, it simply calculates the difference between whatever two dates it's given.
Conclusion: The Days That Don't Fit a Clean Month Still Count
A lease that commences on the 17th doesn't get a pass on its first fourteen days of finance charge just because they don't fill a clean calendar month. DATEDIF calculates exactly how many days those are, turns that into a precise stub-period interest figure instead of a rough approximation, and, combined across its y, ym, and md units, builds the remaining-term disclosure figure that IFRS 16 notes require, recalculating automatically at every reporting date.
Here's your action plan:
- Never start a lease amortisation schedule directly from a full-month IPMT/PPMT calculation without first checking whether the commencement date actually falls on a period boundary.
- Calculate stub period interest using DATEDIF's actual day count, not a rough monthly fraction, and capitalise it into the opening balance before the first full period runs.
- Build remaining-term disclosures from y, ym, and md combined, referencing a live reporting date cell so the figure updates automatically each period.
- Spot-check "md" results near month-end boundaries on a portfolio with many leases, given the documented edge-case behaviour.
Once built this way, a mid-month lease commencement is a handled case, not a manual workaround someone has to remember to apply.
Part of the FinDataPro Depreciation Methods Series.
⚡Try It Yourself
DATEDIF gets your stub periods and disclosures precise. Run it alongside full asset depreciation, multi-book support, and automatic GL reconciliation. Start free at Depreciation Lab →

Prashant Panchal is a Chartered Accountant (ACA) and Financial Modelling & Valuation Analyst (FMVA®) with 19 years of experience in finance, FP&A, and financial modelling across the GCC region. He is the founder of FinDataPro.
Discussion
Leave a Comment
Comments are moderated and appear once approved.
