ExcelReady
CourseMock testsFunction guidesBlog
Start freeStart learning for free
ExcelReady

Be Excel-ready before day one. Hands-on practice in your browser, with instant feedback.

Learn

  • Course
  • Mock tests
  • Function guides
  • Blog

Test prep

  • Excel level test
  • Excel test practice
  • Free screening quiz
  • Certificate

Company

  • About
  • Editorial policy
  • Contact
  • Terms
  • Privacy

© 2026 ExcelReady. All rights reserved.

  1. Blog
  2. Projects
  3. How to Build a Rent Roll in Excel for Rental Properties

How to Build a Rent Roll in Excel for Rental Properties

By ExcelReady Team·Updated November 3, 2026·6 min read

The short answer

A rent roll is a table with one row per rental unit: tenant, rent, lease dates, status and balance. In Excel, calculate each lease end with =EDATE(start,months)-1, total the rent from occupied units with =SUMIF(status,"Occupied",rent), and count leases ending soon with COUNTIFS. Use a fixed report date so the figures match the day you report them.

Key takeaways

  • Keep one row per unit, including vacant ones, so the rent roll shows the full potential rent.
  • Lease end = =EDATE(start, term)-1. EDATE adds whole months and handles short months for you.
  • SUMIF splits rent by status: =SUMIF(H2:H8,"Occupied",D2:D8) for leased rent, "Vacant" for the vacancy loss.
  • Count leases ending in the next 90 days with COUNTIFS and two date conditions on the lease end column.
  • Put the report date in one cell and point every formula at it, instead of retyping dates.
On this page+
  1. What is a rent roll?
  2. Step 1: Set up the rent roll columns
  3. Step 2: Calculate lease end dates with EDATE
  4. Step 3: Total the rent by status with SUMIF
  5. Step 4: Flag leases that expire soon
  6. Step 5: Track payments and balances
  7. Common rent roll mistakes
  8. Practise it

A rent roll in Excel is a single table that lists every unit of a rental property with its tenant, rent, lease dates and status. It answers the questions an owner, a property manager or a lender asks first: how much rent is coming in, how much is lost to empty units, and which leases end soon. This guide builds one step by step with EDATE, SUMIF and COUNTIFS, using a small seven-unit building you can copy.

What is a rent roll?#

A rent roll is a snapshot of a property's income on one date. Each row is one unit, and each column is one fact about it. It is not an accounting ledger: it doesn't record every payment ever made, only the current position.

A typical rent roll includes:

  • Unit and tenant name (blank for a vacant unit).
  • Monthly rent: the rent in the lease, or the asking rent for a vacant unit.
  • Lease start, term in months and lease end.
  • Status: Occupied, Vacant or Notice.
  • Paid this month and the balance owed.

Keep vacant units in the list. Leaving them out hides the rent you could be earning, which is the number buyers and lenders look for.

Step 1: Set up the rent roll columns#

Type the headers in row 1 and one unit per row below. Here is the example building, with a report date of 1 November 2026 in cell K1 (=DATE(2026,11,1)):

ABCDEFGH
1UnitTenantBedsRentLease startTermLease endStatus
2101A. Lopez11,2501 Mar 20261228 Feb 2027Occupied
310211,200Vacant
4103M. Chen21,55015 Jul 20261214 Jul 2027Occupied
5201J. Okafor21,6001 Dec 20251230 Nov 2026Occupied
6202S. Patel11,2251 Sep 20261231 Aug 2027Occupied
7203R. Novak31,90015 Jan 20261214 Jan 2027Occupied
820421,575Vacant

A few setup tips make the formulas easier later:

  • Type unit numbers as text if they have letters or leading zeros (like 01A), so Excel doesn't change them.
  • Use a drop-down list for Status (Data > Data Validation > List), so "Occupied" is never typed as "occupied " with a stray space.
  • Press Ctrl+T (Mac: ⌘T) to turn the range into a table, so new units pick up the formulas automatically.

Step 2: Calculate lease end dates with EDATE#

EDATE adds a number of whole months to a date. A 12-month lease that starts on 1 March ends the day before the same date a year later, so subtract 1. In G2:

Excel formula
=IF(E2="","",EDATE(E2,F2)-1)

For unit 101, EDATE(1 Mar 2026, 12) is 1 Mar 2027, and minus 1 gives 28 February 2027. The IF leaves the cell blank for vacant units with no start date. EDATE handles short months for you: a lease that starts on 31 January and runs 1 month gives EDATE of 28 February in a normal year.

If the result shows a number like 46446, format the column as a date (Windows: Ctrl+1; Mac: ⌘1). The EDATE function guide lists the syntax, and EDATE and EOMONTH explained covers month-end tricks.

Step 3: Total the rent by status with SUMIF#

SUMIF adds the rent of the rows that match one condition. Below the table, build a short summary:

MeasureFormulaResult
Total scheduled rent=SUM(D2:D8)10,300
Occupied rent=SUMIF(H2:H8,"Occupied",D2:D8)7,525
Vacancy loss=SUMIF(H2:H8,"Vacant",D2:D8)2,775
Occupied units=COUNTIF(H2:H8,"Occupied")5
Occupancy rate (units)=COUNTIF(H2:H8,"Occupied")/COUNTA(A2:A8)71.4%
Share of potential rent leased=SUMIF(H2:H8,"Occupied",D2:D8)/SUM(D2:D8)73.1%

SUMIF reads as "check the Status column, match Occupied, add the Rent column". The occupied rent and the vacancy loss should always add up to the total: 7,525 + 2,775 = 10,300. That is a quick check that no unit has a misspelled status. The SUMIF function guide has the full syntax.

The two occupancy figures differ because vacant units have different rents. Unit occupancy counts doors; the rent share weighs each unit by its rent.

Step 4: Flag leases that expire soon#

Leases ending soon need a renewal call, so count them and flag them. To count leases ending within 90 days of the report date in K1:

Excel formula
=COUNTIFS(G2:G8,">="&$K$1,G2:G8,"<="&$K$1+90)

The result is 2: unit 201 ends on 30 November 2026 and unit 203 on 14 January 2027. Blank lease ends for vacant units aren't counted, because a blank is not a date after K1.

For a flag on each row, add a column with:

Excel formula
=IF(G2="","",IF(G2<$K$1,"Expired",IF(G2-$K$1<=90,"Expiring","")))

The $ signs keep K1 fixed when you fill the formula down. To highlight the flagged rows, add a conditional formatting rule on the Status or Flag column. The same expiry logic drives a subscription tracker in Excel, where renewals replace leases.

Step 5: Track payments and balances#

Add two columns: Paid for what each tenant paid this month, and Balance for what is still owed. In the Balance column:

Excel formula
=IF(H2="Occupied",D2-I2,0)

If unit 201 paid 800 of its 1,600 rent, its balance is 800. Total the column with SUM to see the rent outstanding. When balances run over several months, sort them by how late they are with an aging report in Excel, and track your own property bills with a bill tracker.

Common rent roll mistakes#

These errors make a rent roll look healthier, or worse, than it is:

  1. Leaving vacant units out. The total rent then looks like 100% occupancy. Keep every unit.
  2. Status typed in different ways. "Occupied", "occupied " and "Occ" are three different values to SUMIF. Use a drop-down list.
  3. Lease end without the −1. =EDATE(E2,F2) gives the first day of the next lease, so a lease looks one day longer.
  4. Using TODAY() in a filed report. The flags change every day you open it. Put the report date in one cell.
  5. Mixing monthly and yearly rent. Keep one unit of time in the Rent column, usually monthly, and label it.

Rent rolls are a common task in property jobs, along with price per square foot and commission splits; see Excel skills for real estate.

Practise it#

A rent roll is mostly SUMIF and date maths, done carefully. Practise SUMIF in a live spreadsheet: you type the formula and it checks it instantly. Then practise EDATE, EOMONTH and WEEKDAY for lease and renewal dates, and work through the real estate listings case study, which asks you to analyse listings the way a property analyst would.

Try it yourself

This is a live spreadsheet. Type the formula in the green cell and press Enter.

What rent is lost to empty units this month? In G2, use SUMIF to add the Rent (C2:C8) of the units whose Status (D2:D8) is Vacant, then press Enter.

fx
ABCDEFGH
1
Unit
Tenant
Rent
Status
2
101
A. Lopez
1250
Occupied
Vacancy loss
3
102
1200
Vacant
4
103
M. Chen
1550
Occupied
5
201
J. Okafor
1600
Occupied
6
202
S. Patel
1225
Occupied
7
203
R. Novak
1900
Occupied
8
204
1575
Vacant
9
10
11

Tip: =SUMIF(D2:D8,"Vacant",C2:C8): check the Status column, match Vacant, add the Rent column. Units 102 and 204 give 2,775.

Practise this in a lesson

LessonCase study: real estate listingsAnalyze 12 home listings like a real-estate analyst: price per square foot, averages and counts by area, a filtered list of good-value homes, and the priciest listing.LessonSUMIFAdd up only the numbers that meet a condition, with and without a separate sum range.LessonRenewals and month-ends: EDATE, EOMONTH, WEEKDAYShift dates by whole months with EDATE, jump to month-end with EOMONTH, and find the day of the week with WEEKDAY.Function guideSUMIFAdd up values that meet one condition with SUMIF. Totals by category, person or amount, the argument-order trap, and a live exercise.Function guideEDATEAdd months to a date with Excel's EDATE for renewals, probation ends and due dates. Month-end behaviour, mistakes and a live practice exercise.

Frequently asked questions

What is a rent roll?

+

A rent roll is a list of every unit in a rental property with its tenant, monthly rent, lease start and end dates, deposit, occupancy status and any balance owed. Owners, lenders and buyers use it to see the property's income at a glance.

What columns should a rent roll have?

+

At minimum: unit, tenant, monthly rent, lease start, lease term, lease end, status and amount paid or owed. Many also add bedrooms, square footage, deposit and notes.

How do I calculate a lease end date in Excel?

+

Use =EDATE(start date, number of months)-1. For a 12-month lease starting 1 March 2026, =EDATE(DATE(2026,3,1),12)-1 returns 28 February 2027.

How do I calculate the occupancy rate in a rent roll?

+

Divide occupied units by all units: =COUNTIF(H2:H8,"Occupied")/COUNTA(A2:A8). With 5 of 7 units leased, that is about 71.4%. Format the cell as a percentage.

Should I use TODAY() in a rent roll?

+

For a live dashboard, TODAY() keeps the expiry flags current. For a report you send or file, type the report date in one cell instead, so the numbers don't change when someone opens the file later.

Sources

  • SUMIF function - Microsoft Support
  • EDATE function - Microsoft Support
  • COUNTIFS function - Microsoft Support

Written and checked by the ExcelReady Team. First published November 3, 2026. The practice exercise runs in the same formula engine as our lessons. Found a mistake? Read our editorial policy or email hello@excelready.app.

On this page

  1. What is a rent roll?
  2. Step 1: Set up the rent roll columns
  3. Step 2: Calculate lease end dates with EDATE
  4. Step 3: Total the rent by status with SUMIF
  5. Step 4: Flag leases that expire soon
  6. Step 5: Track payments and balances
  7. Common rent roll mistakes
  8. Practise it

Keep reading

Tests & careers· 6 min read

Excel for Real Estate: Listings, Prices and Commission

Real estate work in Excel centres on listings: price per square foot, average, lowest and highest prices with AVERAGE, MIN and MAX, averages by area with AVERAGEIFS, percent change between list and sale price, commission and split calculations, and monthly mortgage payments with PMT. A clean listings table makes all of these quick.

Projects· 7 min read

Build a Subscription Tracker in Excel

A subscription tracker in Excel is a table with one row per service: name, category, cost, billing cycle in months and last payment date. Add =EDATE(last_paid, months) for the next renewal, =cost/months for the monthly cost, and SUMIF to total by category. Conditional formatting can then flag renewals due in the next seven days.

Projects· 7 min read

How to Build an Accounts Receivable Aging Report in Excel

An accounts receivable aging report groups unpaid invoices by how late they are. In Excel, put a report date in one cell, work out days past due with =$H$1-C2, label each invoice with IFS (Current, 1-30, 31-60, 61-90, Over 90 days), then total each bucket and customer with SUMIFS. Check that the bucket totals add up to the full balance.

More on projects

  • Rental Property Analysis in Excel: Cash Flow and Cap Rate
  • Build a Risk Register in Excel With Risk Scores
  • Build a Simple Sales Dashboard in Excel
  • Build a Simple Sales Forecast in Excel
  • How to Make a Sales Leaderboard in Excel That Updates
  • Build a Sales Pipeline Tracker in Excel
All projects articles →

Don't just read about Excel. Do it.

Practise real formulas in a live spreadsheet with instant feedback, right in your browser. Nothing to download.

Start learning for free