Skip to the content
RentRoll Engine
Free download

Rent roll template

A rent roll template you can compute on

Ten fixed columns, ISO dates and plain numbers: the layout RentRoll Engine writes from a PDF. Fill it in by hand, or convert a PDF into it, and keep every month's roll in one shape.

UTF-8, comma separated. No email address and no account.

01

What a rent roll template is

A rent roll template is a table with one row per unit and a fixed set of columns recording who occupies the unit, how large it is, what it pays and when the lease runs. This one uses the same ten columns RentRoll Engine writes, so a roll typed by hand and a roll converted from a PDF can be stacked, compared and summed with the same formulas.

It is a data layout, not a form. There is no totals row, because totals are formulas, and no pre-set formatting beyond the column order.

02

Using the template in five steps

  1. Download the template

    Take the version with three example rows if you want to see the formats, or the blank one with headings only. Both are UTF-8 CSV files that open in Excel, Google Sheets and Numbers.

  2. Replace the examples with your units

    One row per unit, vacant units included. A vacant unit keeps its square feet and has no tenant, rent or dates, with vacant in the status column.

  3. Keep the formats

    Dates as YYYY-MM-DD, money and area as plain numbers with no currency symbol or thousands separator, and status as exactly occupied or vacant.

  4. Add your checks

    Sum the rent and area columns in cells of your own, and subtract the total printed on the source. The formulas below do it. A variance of zero is the point of the exercise.

  5. Or skip the typing

    If the rent roll already exists as a PDF, upload it. The converter writes this same layout and does the check for you.

03

What the template looks like

These are the example rows in the first download. The second download has the same headings and no rows.

Contents of the template with example rows
unittenantstatussqftmonthly_rentlease_startlease_enddepositnotesflags
101Example Tenant, LLCoccupied12002500.002025-01-012027-12-315000.00Example row: replace with your data
102vacant950Vacant: leave tenant, rent and dates blank
103Sample Residentoccupied7201185.002024-06-01500.00Month-to-month: leave lease_end blankmonth_to_month
04

The ten columns

Column guide for the template
Column What it holds Format
unit Unit, suite or space identifier, as printed. text
tenant Tenant or resident name. Blank when the unit is vacant. text
status Occupied or vacant. A blank tenant, or the word VACANT, means vacant. occupied | vacant
sqft Rentable area. Kept on vacant units so occupancy by area works. number, no commas or units
monthly_rent In-place monthly rent. An annual rent column is divided by 12. decimal, 2 places, no currency symbol
lease_start Lease start date. YYYY-MM-DD
lease_end Lease end date. Blank for month-to-month. YYYY-MM-DD
deposit Security deposit held. decimal, 2 places
notes The notes column as printed, plus the text of any cell that could not be read as a number or date. text
flags Machine-readable cautions for the row, separated by a semicolon. for example rent_annual_to_monthly

Conventions

  • UTF-8, comma separated, CRLF line endings, fields quoted only when they need to be (RFC 4180). No byte-order mark.
  • Money has two decimals and no symbol. Negative amounts in parentheses, (1,234.56), or with a trailing minus are written as -1234.56.
  • European number formats such as 1.234,56 are recognised when the rest of the page shows the same convention.
  • Dates are ISO. When 04/05/2025 could be April 5 or May 4 and nothing else on the page settles it, the row is flagged date_ambiguous instead of guessed silently.
  • A text cell that starts with =, +, - or @ is written with a leading apostrophe, so a spreadsheet cannot run it as a formula.
05

Checks to add in Excel or Sheets

With the template columns in A to J and the units starting in row 2, these formulas give the figures a rent roll is usually asked for. The last one is the tie-out: put the total printed on the source document in a cell and subtract it.

In-place monthly rent       =SUMIFS(E:E, C:C, "occupied")
Annualized rent             =SUMIFS(E:E, C:C, "occupied") * 12
Occupied units              =COUNTIF(C:C, "occupied")
Occupancy by unit count     =COUNTIF(C:C, "occupied") / COUNTA(A2:A1000)
Occupancy by area           =SUMIFS(D:D, C:C, "occupied") / SUM(D:D)
Rent variance to source     =SUM(E2:E1000) - L1      (L1 holds the printed total)
Area variance to source     =SUM(D2:D1000) - L2      (L2 holds the printed total)

If the source prints its rent total for occupied units only, compare it with the first formula instead of the sum of the whole column.

06

Template, PDF converter or retyping: how they compare

Ways to get a rent roll into the same ten columns
What matters By hand in Excel Generic OCR or PDF-to-Excel RentRoll Engine
Check against the page total Only if someone re-adds the column by hand. None. The sheet is whatever the converter produced. Every file. Rows are summed and compared with the printed total, for rent and square feet.
A misread or dropped digit Typos pass unless caught in review. Passes silently, then sits in the model. Moves the sum, so the banner turns amber and shows the variance to the cent.
Column headings Matched by eye, every file. Left as printed; you rename and reorder. Mapped by synonym: Unit, Suite, Apt; Tenant, Lessee, Resident; SF, RSF, GLA; Rent, Base Rent.
Annual versus monthly rent Easy to miss when a column is headed Rent. Not handled. An annual column is divided by 12 and every converted row is flagged.
Vacant units Blank or VACANT, handled inconsistently. Left as text in the tenant column. A status column reads occupied or vacant, and vacancy counts feed the occupancy figure.
Dates and money formats A spreadsheet guesses, and may swap day and month. Text strings. ISO dates with day/month ambiguity flagged; (1,234.56) and 1.234,56 read correctly.
What you get Whatever was typed. A spreadsheet that still needs cleaning. A fixed-column RFC 4180 CSV, the same shape every month.
The same layout every month Each analyst builds a sheet of their own. Whatever layout the PDF had. Ten columns in a fixed order, from a PDF or from this template.
Typing effort Every cell. Cleanup of every cell. None for a PDF. The template is for rolls that exist only on paper or in your head.
Cost Analyst hours. Varies by tool. Free: 1 file per day, up to 10 pages, no account. Pro is $39/month for 100 files a month, files up to 150 pages; Team is $99/month for 3 seats and 400 files a month.
07

Questions about the rent roll template

What columns should a rent roll template have?

At minimum: the unit, who is in it, how big it is, what it pays and when the lease runs. This template uses ten: unit, tenant, status, sqft, monthly_rent, lease_start, lease_end, deposit, notes and flags. Status is separate from tenant so that vacancy is a value you can filter on and not an empty cell. Notes and flags carry what does not fit a column.

What is a rent roll?

A rent roll is a list, as of a date, of every unit in a property with its tenant, area, rent, lease dates and deposit. Buyers, lenders and owners use it to see in-place income and occupancy, and to check the income used in underwriting.

Is the template free?

Yes. Both files download directly from this page with no email address and no account.

Why does the template have no totals row?

Because a total typed into a data table gets summed along with the rows. Keep totals as formulas in cells outside the table, or on another sheet, and compare them with the total printed on the source document.

Why dates as YYYY-MM-DD?

ISO dates sort correctly as text and cannot be read two ways. 04/05/2025 is April 5 in one country and May 4 in another, and a spreadsheet will pick one without telling you. Excel and Google Sheets recognise ISO dates as dates and show them in your regional format.

How do I enter annual rent on a commercial rent roll?

Divide by 12 and enter the monthly figure in monthly_rent, so every row is on one basis. If you want a record of it, add rent_annual_to_monthly to the flags column. The converter does exactly this when a PDF prints an annual rent column.

How do I show a month-to-month tenant?

Leave lease_end blank and add month_to_month to the flags column. A blank end date on its own could mean the date was lost, so the flag says it was intended.

Can I use it for office, retail and industrial rent rolls?

Yes. Put the suite or space in the unit column and the rentable square feet in sqft. Per-square-foot rates, CAM and escalation schedules do not belong in the ten columns. Put a note in notes, or keep them in a separate sheet.

How do I open the CSV in Excel without garbled characters?

Use Data, then From Text/CSV, and choose UTF-8 as the file origin. Double-clicking works too, but Excel may misread accented characters in names because the file has no byte-order mark. Google Sheets reads UTF-8 directly: File, Import, Upload.

Can I convert a rent roll PDF into this layout automatically?

Yes. Upload the PDF on the home page and the converter writes these ten columns, then sums the rows against the total printed on the PDF. Free: 1 file per day, up to 10 pages, no account.