Sign in

Blog · Finance metrics and formulas

Self storage financial model: occupancy, revenue and cash

Build a self-storage operating workbook from occupied units, rental rates and site costs. Compare actuals with plan and reconcile rental revenue, collections and closing cash.

The short answerA self storage financial model connects available and occupied units with rental rates, concessions, site expenses and cash collections. Build monthly rows by site and unit type, calculate earned revenue and an explicitly defined operating surplus, then reconcile receivables, financing payments and capital spending to closing cash. Compare actual results with the same occupancy and price assumptions.

A self storage financial model connects occupied units and realized rents to site costs and cash. Build it by site, month and unit type so a change in mix does not look like a pricing change. Keep earned revenue, customer balances and collections separate until the cash reconciliation ties.

Start with the site's operating exports

Bring the unit inventory, rent roll, move-in and move-out records, concessions register, customer balance report, expense ledger and bank transactions. Add the financing payment schedule and approved capital spending. Use a consistent site identifier and reporting month across every file.

The unit inventory should show rentable status, size, standard rate and unit type. The rent roll should identify occupied periods and contracted rent. Exclude units taken out of service from available capacity only under a documented policy, and retain the status history so capacity changes can be explained.

Use average occupied units for a monthly operating view. If activity changes materially during the month, calculate occupied unit-days from the underlying dates rather than treating month-end occupancy as the whole month's activity. Keep the month-end view as a separate starting point for the next period.

This is an operating workbook. For early business funding and launch assumptions, see the separate startup financial model. The FP&A overview covers how operating drivers connect to management reporting.

Separate occupancy from rental value

The invented US site below has two unit groups. All units within a group have the stated rate, and the occupied counts are monthly averages. The rates are assumed contracted monthly amounts before concessions, not published industry benchmarks.

Put group names in A and the numeric inputs in B through E. Calculate F and G:

Row and unit group B: Available units C: Average occupied units D: Square feet per unit E: Rate (USD/unit/month) F: Occupied contractual rent (USD) G: Full-capacity rent (USD)
2: Small 100 80 75 120 9,600 12,000
3: Large 100 90 150 200 18,000 20,000
Total 200 170 27,600 32,000

Use these spreadsheet formulas:

F2 = C2*E2
G2 = B2*E2
UnitOccupancy = SUM(C2:C3)/SUM(B2:B3)
AreaOccupancy = SUMPRODUCT(C2:C3,D2:D3)/SUMPRODUCT(B2:B3,D2:D3)
ContractRentRatio = SUM(F2:F3)/SUM(G2:G3)

Copy the F2 and G2 formulas down to row 3. The expressions after the equals signs are the formulas to enter; the names identify separate summary cells.

Unit occupancy is 170 / 200 = 85.0%. Occupied area is 19,500 square feet out of 22,500, giving 86.67%. Contracted occupied rent is $27,600 against $32,000 of full-capacity rent, giving 86.25%. The latter is a specifically defined contractual rent ratio before concessions and collection losses, rather than a universal definition of economic occupancy.

Microsoft documents SUMPRODUCT as multiplying corresponding ranges and summing their products. That is why the area calculation uses occupied units multiplied by size instead of averaging unit-group occupancy percentages. Covirage is not affiliated with Microsoft.

Calculate revenue and site costs

Assume actual average occupancy is 75 small units and 88 large units, with rates unchanged. Actual contractual rent is 75 × 120 + 88 × 200 = $26,600. Compare that with the plan in a separate summary sheet:

Summary row Metric B: Plan (USD) C: Actual (USD)
2 Occupied contractual rent 27,600 26,600
3 Concessions 1,200 1,600
4 Other earned site revenue 1,500 1,500
5 Total earned revenue 27,900 26,500
6 Site payroll 4,000 4,000
7 Utilities and maintenance 3,000 3,000
8 Property taxes and insurance 3,500 3,500
9 Marketing 1,500 1,500
10 Other site operating expenses 1,000 1,000
11 Defined site operating surplus 14,900 13,500
B5 = B2-B3+B4
B11 = B5-SUM(B6:B10)

Copy the formulas across. The operating subtotal excludes depreciation, company overhead, financing and capital spending. Keep that definition unchanged across sites; this is not net income.

When summarizing a ledger with amount in D, site in A and month in B, a site-month total can use:

=SUMIFS(Ledger!D2:D1000,Ledger!A2:A1000,$A2,Ledger!B2:B1000,B$1)

Microsoft's SUMIFS documentation confirms that the function sums values meeting multiple criteria. Use matching range dimensions and actual month values, then check the result against the source ledger total.

Reconcile collections and test one driver

For both cases, assume opening receivables of $3,000, closing receivables of $3,500, no write-offs and no customer deposits or deferred revenue. Collections therefore equal opening receivables plus earned revenue less closing receivables. The working capital guide explains why those timing balances matter.

Cash bridge Plan (USD) Actual (USD)
Opening unrestricted cash 20,000 20,000
Customer collections 27,400 26,000
Operating expenses paid -13,000 -13,000
Financing payments -6,000 -6,000
Capital spending paid -2,000 -2,000
Closing unrestricted cash 26,400 25,000

The customer balance proof is $3,000 + $26,500 − $26,000 = $3,500 for actuals. The cash bridge must tie to the bank reconciliation; in a fuller workbook, add payables and prepaid or deferred rent movements explicitly.

Actual revenue is $1,400 below plan: $1,000 less contractual rent and $400 more concessions. For a separate single-input sensitivity, reduce planned small-unit occupancy from 80 to 75 while leaving every other planned input unchanged. Revenue becomes $27,300, operating surplus becomes $14,300, and closing cash becomes $25,800. That isolates small-unit occupancy from the other actual changes.

Where it goes wrong

  • Unit and area occupancy confused. Larger units change the relationship between the measures.
  • Month-end counts priced for a whole month. Use occupied periods or a defensible monthly average.
  • Concessions hidden in rates and deducted again. Keep one consistent revenue bridge.
  • Capital projects buried in routine site costs. Identify them separately when reconciling operating performance to cash.

Compare your storage workbook in Covirage

Bring your site rent roll, occupancy summary and expense workbook as a file or Google Sheet. Covirage maps the columns, its tools compute and check the supplied figures, and the external AI model explains performance against the workbook with every figure traced to its rows. Create a free Covirage account, then set up your business and bring a sample of your own data.

See FP&A reporting for the supporting workflow.

Questions people ask

Which occupancy measure should a self-storage workbook use?

Track unit occupancy, occupied square footage and an explicitly defined rent-based measure separately. They answer different questions when unit sizes and prices vary. Use monthly averages for earned revenue analysis and keep the month-end snapshot for reviewing the next month's starting position.

How should move-in discounts be included?

Record concessions separately from contractual rent and apply them to the periods they affect under the company's reporting policy. Keep billed amounts, earned revenue and cash collected identifiable. A posted rental rate alone does not show what the site earned or received.

Is site operating income the same as cash flow?

No. A site operating subtotal usually excludes financing and capital spending, while cash also depends on collection and payment timing. State exactly which expenses your subtotal includes, then bridge it to the bank balance with receivables, payables and scheduled cash payments.