InterestThing Icon

Day count convention taxonomy

Overview

Day count conventions are used to calculate time between two dates as a days or a year fraction.

Multiple approaches exist to calculate this fraction:

Example: calculate the fraction between January 1st, 2026 and July 1st, 2026:

Actual based day counts differ in how they handle leap days

Actual based day counts use the actual number of days as the numerator and the number of days in the year as the denominator. They differ in how they treat leap days and leap years.

Method Numerator Denominator
Act/365 Fixed actual days always 365
Act/365 No Leap actual days minus leap days always 365
Act/365 Leap actual days use 366 if coupon payment falls in a leap year, otherwise use 365
Act/Act ISDA actual days use 366 for days that fall in a leap year,
use 365 for days that fall in a normal year
Act/Act AFB actual days count back full years, then use 365 or 366 depending on whether a leap day falls in the coupon period
Act/Act ICMA actual days periods are defined using a reference date,
actual days in the period multiplied by period frequency

30/360 based day counts differ in how they patch end-of-month dates

1. The compression problem

While actual based day counts try to capture the length of a period in actual days, the 30/360 family tries to make every month behave as if it has exactly 30 days, resulting in the following formula:

Example: A bond with a coupon schedule anchored to the last day of the month — say a semi-annual bond paying on August 31st 2025 and February 28th, 2026 — should produce exactly the same coupon amount for every period. If both August 31st and February 28th are left as-is, the period from August 31st to February 28th counts as:

Counting from February 28th, 2026 to August 31st, 2026 this becomes:

Example: applying the rules from 30E3/360, the 31st is adjusted downward to 30 because it is 1 day too long. February 28th (or 29th) is adjusted upward to 30 because it is too short. Both adjustments serve the goal of forcing 30 day months, they just approach it from opposite directions. After these changes, both periods have the same length:

2. The patch strategy

Each convention chooses which dates to patch — only the 31st, all EOM including February, or more nuanced or aggressive rules...

Method What is changed? How is it changed?
30/360 ICMA start & end: 31st change 31st to 30th
30/360 ISDA start: 31st
end: 31st
change start to 30th
change end to 30th only if start ≥ 30th
30E/360 start: 31st + Feb EOM
end: 31st
end: Feb EOM
change start to 30th
change end to 30th
change end to 30 unless Feb EOM is maturity
30E2/360 start & end: 31st
start & end: Feb EOM
change 31st to 30th
adjust Feb EOM to match a higher value for the opposite period boundary
30E3/360 start & end: 31st + Feb EOM change all 31st and Feb EOM to 30th
30E+/360 start: 31st
end: last day of month
change start to 30th
change end to 1st of next month
30/360 US Bond start: 31st
end: 31st
change start 31st to 30th
if start is before 30th, change end to 1st of next month
else change end to 30th
30/360 SIA start: 31st + Feb EOM
end: 31st + Feb EOM
change start 31st and Feb EOM to 30th
change end Feb EOM to 30th only if start was Feb EOM
change end 31st to 30th if start is 30th after previous steps
30/360 Italian start & end: 31st + Feb > 27th change all 31st to 30th
change all Feb 28th and Feb 29th to 30th

30E/360 and 30E3/360 Notes

30E3/360 is a variation of 30E/360 method where the last day of February is always assumed to be the 30th, even if it is the last day of the maturity coupon period.

30E/360 does not change February 28th or 29th when it is the last day of the maturity coupon period.

To make these two methods behave differently, our implementation of 30E/360 does not change the last day of February when it is the last day of a date interval, whereas 30E3/360 does change it.

3. The cliff effect

Every patch has an edge: the day just before or after the patched date behaves normally, creating a cliff.

Because the patch only fires on specific dates (e.g. the 31st or the last day of February), the day immediately before the patch and the day immediately after it are both unpatched. This means a single calendar day can correspond to more than one day of accrued interest — or fewer — depending on which side of the cliff you land on.

Example: changing the end date

From -> To Actual days 30/360 ICMA days
Jan 27 -> Feb 26 30 29
Jan 27 -> Feb 27 31 30
Jan 27 -> Feb 28 32 31
Jan 27 -> Mar 1 33 34
Jan 27 -> Mar 2 34 35

Example: changing the start date

From -> To Actual days 30/360 ICMA days
Jan 29 -> Mar 2 32 33
Jan 30 -> Mar 2 31 32
Jan 31 -> Mar 2 30 31
Feb 1 -> Mar 2 29 29
Feb 2 -> Mar 2 28 28

4. The 30/360 conventions are fit-for-purpose for bonds, they break down in general use!

Bonds have fixed, regular coupon schedules. The day count convention is only ever applied to:

In both cases the EOM cliffs are either irrelevant (full periods) or bounded (partial periods stay within one coupon period, limiting exposure to at most one or two EOM boundaries).

Outside a bond context — loans, swaps with irregular schedules, general accrual calculations — the start and end dates are arbitrary. You can land anywhere relative to EOM boundaries, and the cliffs become:

Conclusion

30/360 conventions are safe in two specific contexts: bond coupon accruals (anchored to coupon dates) and monthly modeling anchored to the 1st of the month.

For short consecutive periods with arbitrary dates, the EOM cliffs make them unsuitable — use an actual days based convention instead.

Hybrid day counts almost never get it right

Hybrid day counts borrow one element from each of the two main families. Using one method for the numerator and another for the denominator introduces a systematic bias.

A full year is never 1/1: in Actual/360 a year is either 365/360 or 366/360, while in 30/365 it is always 360/365.

Method Numerator Denominator
30/365 30/360 (basic rule) always 365
30/Actual (ICMA) 30/360 (basic rule) periods are defined using a reference date,
actual days in the period multiplied by period frequency
Actual/360 actual days always 360
Actual/360 NL actual days minus leap days always 360
Actual/364 actual days always 364 (matches week based intervals)

Act/Act ICMA and 30/Act (ICMA): self-consistent vs self-contradicting

Actual/Actual ICMA

Act/Act ICMA (the ISDA bond convention) works by using the actual coupon period as the reference unit. The denominator is the number of days in the current coupon period multiplied by the coupon frequency.

For a semi-annual bond, a full coupon period always contributes exactly 1/2 of a year, regardless of whether that period has 181, 182, 183 or 184 days. Every full period is mathematically equal by construction.

For incomplete periods (the stub at the beginning or end of a bond's life), it applies the same logic consistently — actual days in the stub divided by actual days in the reference period times frequency. So the fraction is always measured relative to the same yardstick as the full periods.

This is mathematically coherent in a way that other conventions aren't:

So Act/Act ICMA is the only convention that simultaneously lets full periods be exactly equal and measures stub fractions consistently using real elapsed time as the numerator. The mathematical elegance is that it's self-referential in a clean way — the period defines its own yardstick.

30/Actual ICMA

This is a remarkable convention:

This combination is arguably inconsistent — measuring the numerator with a ruler that ignores reality, then dividing by a denominator that carefully respects it. The elegant self-referential quality of Act/Act ICMA (where numerator and denominator are measured with the same yardstick) is broken.

The practical consequence is that full coupon periods will generally not come out to exactly 1/frequency the way they do in Act/Act ICMA, because the 30-day month numerator will rarely match the actual days in the period. So it doesn't fully achieve the equal-periods goal of the 30/360 family either.

It is hard to identify a strong mathematical rationale for combining these two elements. It may have emerged from practical legacy reasons — perhaps a desire to smooth monthly accruals (hence the 30-day numerator) while anchoring the overall period fraction to something market-observable (the actual coupon period). From a pure mathematical coherence standpoint, it sits between two stools.

Reference dates and periods

Actual/Actual ICMA and 30/Actual (ICMA) both need reference dates and a frequency to be able to create a periods schedule.

To use them, select the Periods and days method, and set a reference date.

As the periods handle the periods fraction, the day count is only applied to the leading or trailing stub fractions, thus limiting the inconsistency of the 30/Actual convention.