How to prorate a monthly amount by days
✓ Verified in LibreOffice 25.8.7.3 ✓ Verified in Google Sheets (2026-08-30)Charge or pay a fair share of a monthly figure — mid-month move-ins, partial billing periods.
The formula
| App | Formula | Notes |
|---|---|---|
| Excel (desktop) | =ROUND(A2/DAY(EOMONTH(B2,0))*C2,2) | A2=monthly amount, B2=any date in that month, C2=days occupied. DAY(EOMONTH(...)) = days in that month. |
| Google Sheets | =ROUND(A2/DAY(EOMONTH(B2,0))*C2,2) | Identical. |
| LibreOffice Calc | =ROUND(A2/DAY(EOMONTH(B2,0))*C2,2) | Identical. |
How it works
EOMONTH finds the month's last day and DAY reads its number — 31 for July — giving a true daily rate that adapts to each month's length: $1,500 ÷ 31 × 10 days = $483.87. That's fairer than a fixed /30, which overcharges February and undercharges July. Some leases specify a flat 30-day convention instead — then the formula is simply A2/30*C2; match the contract, not the calendar.
Verified, not just documented
We ran =ROUND(1500/DAY(EOMONTH(DATE(2026,7,1),0))*10,2) in LibreOffice 25.8.7.3 (headless, with forced recalculation) and it returned 483.87 — exactly the expected result. We then ran the same formulas in Google Sheets, executed 2026-08-30: a formula-only workbook goes into Google Drive, which converts it to a Sheet and recalculates every formula with Google’s own engine, and comes back out as .xlsx carrying the values Google computed. It returned 483.87 for the worked example, the same value LibreOffice produced. Both engines’ numbers on this page are executed results. The Excel formula follows Microsoft’s official documented syntax — we do not run desktop Excel.
Functions used
ROUND · DAY · EOMONTH — see full Excel, Google Sheets & LibreOffice compatibility for each.
Related recipes
- How to get the number of days in a month
- How to add tax to a price (and back it out again)
- How to count business days left in the month
- How to calculate a monthly loan payment
- How to calculate compound interest