Multi-unit franchise operators who run 5, 10, or 20 locations face a common financial reporting problem: their chart of accounts was designed for a single location and doesn't separate occupancy cost components in a way that makes cross-location comparison useful.
When all rent-related costs hit a single "Lease Expense" account, you can't tell which locations are running above-market CAM, which had tax reassessments this year, or whether the occupancy cost increase at Location 7 was driven by a base rent step or a reconciliation true-up. You know the total, but you can't manage what you can't see.
Why the Default COA Fails Multi-Unit Operators
Most accounting software default chart of accounts bundles occupancy as one or two accounts:
- Rent expense
- Sometimes, "occupancy and related costs"
This works at a single-location level. At a portfolio level, it obscures the three most important questions:
Question 1: Which locations have the highest occupancy cost ratios? You can calculate total occupancy cost from a single account, but you can't separate the base rent component (fixed, controlled by lease terms) from the NNN component (variable, potentially containing errors) without separate accounts.
Question 2: Which component is driving year-over-year increases? If Location 4's occupancy cost increased $14,000 year-over-year and everything is in one account, you don't know whether that increase came from a rent escalation step, a property tax reassessment, a CAM overcharge, or some combination.
Question 3: Are NNN estimates aligned with actuals? If monthly estimates and annual true-ups hit the same account, you can't separate the estimated payments from the reconciliation settlements. The only way to track drift between estimates and actuals is with separate accounts.
The Recommended COA Structure for Franchise Occupancy
Break occupancy cost into at least five accounts per location (or per location class in a multi-entity structure):
Account 6100 — Base Rent Monthly base rent payments per the lease schedule. Annual escalation steps post here when they take effect. Fixed and predictable.
Account 6110 — CAM (Operating Expenses) — Estimated Monthly CAM estimate payments made to the landlord. The estimated amount from the landlord's CAM estimate letter or the monthly lease addendum.
Account 6115 — CAM True-Up Adjustment The amount owed or credited at annual reconciliation, after verifying the reconciliation. Keeping this separate from the monthly estimate lets you see, at a glance, how large the estimate-to-actual variance was in any given year.
Account 6120 — Property Taxes Monthly tax estimate payments (if required under the lease) and any annual tax true-up. In many leases, taxes are estimated and reconciled on the same schedule as CAM. In others, they're paid in lump sums aligned with the tax jurisdiction's billing schedule.
Account 6130 — Insurance Monthly insurance estimate payments and annual insurance true-up, if applicable. Insurance premiums often adjust less frequently than CAM but can spike following a significant property damage event or carrier change.
Optional: Account 6140 — NNN Accrual If you're using accrual accounting for the true-up estimate (recommended for multi-unit operators), this contra-account holds the monthly accrual until the reconciliation settles.
Adding Location Dimension
With multiple locations, the account structure above needs to be dimensioned by location. How you accomplish this depends on your accounting system:
Sub-accounts: Create sub-accounts under each occupancy account for each location (e.g., 6110-001 for Location 1 CAM, 6110-002 for Location 2 CAM). This works in simpler systems but creates a large account list as locations scale.
Class or department codes: In QuickBooks, Xero, and most mid-market systems, you can assign a "class" or "location" tag to each transaction without creating sub-accounts. Transactions post to Account 6110 (CAM Estimated) with Location=4, enabling filtering and reporting by location while keeping the account list clean.
Separate entities per location: Some franchise operators run each location as a separate LLC and maintain separate books. This is the cleanest structure for location-level comparison but adds administrative overhead. If you run separate entities, the same five-account structure applies within each entity.
Common Coding Errors That Break Cross-Location Comparison
Error 1: True-up payments coded to base rent. When a CAM true-up check is written, the person coding it sometimes posts it to the first rent account they find rather than the CAM or true-up account. Result: base rent appears to fluctuate, and the CAM true-up is invisible.
Effect: You can't distinguish base rent escalation from reconciliation variance.
Fix: Reconciliation payments should be coded at the time of receipt, before payment, using the account and location specified in your coding guide.
Error 2: All NNN items coded to a single "NNN" account. Some operators create one account for all non-base-rent occupancy costs. Better than nothing, but it still prevents separating tax escalation from CAM escalation.
Effect: You can't analyze whether a location's occupancy increase was tax-driven (potentially unavoidable) or CAM-driven (potentially disputable).
Fix: Three separate NNN accounts minimum: CAM, taxes, insurance.
Error 3: Mixed estimate and true-up in the same account. Monthly estimates and annual true-up adjustments coded to the same account make it impossible to calculate the estimate drift rate — the gap between what you paid monthly and what the actual cost was.
Effect: You lose the ability to calibrate monthly estimates for the following year, increasing the likelihood of a large future true-up.
Fix: Separate accounts for monthly estimates (6110) and true-up adjustments (6115).
Error 4: Multi-location operators posting to wrong location codes. When a check for Location 7 gets coded to Location 3's class, the cross-location comparison is corrupted. The error may not be visible until a year-end review.
Fix: Require invoice or statement cross-reference on every occupancy cost transaction. The landlord's account statement should show the property name or tenant ID, which confirms which location the payment belongs to.
Using the COA Structure to Prioritize Audits
Once you have clean occupancy data separated by component and by location, you can build a simple OCR model:
For each location: add Accounts 6100 + 6110 + 6115 + 6120 + 6130 for the year, divide by gross revenue. Plot the resulting OCR by location.
Locations above your target OCR are candidates for a reconciliation audit. Sort by the gap between their OCR and the portfolio average to prioritize the highest-impact audits first.
With clean account coding, this analysis takes minutes. Without it, you'd need to manually reconstruct occupancy cost from payment records and lease files — a multi-hour exercise per location.
Start with Your Current Accounts
Before redesigning your COA, audit what you have. Pull the occupancy-related accounts for the last 12 months across all locations. Count how many reconciliation true-up payments are miscoded to base rent. Identify which locations have the highest CAM component relative to total occupancy cost — those are the locations where a CAM review is most likely to find something.
Then bring your reconciliations to CAMAudit to verify whether the numbers you're tracking are accurate.
Frequently Asked Questions
Does my franchisor dictate the COA structure?
Many franchisors provide a required or recommended COA as part of the franchisee reporting standards, particularly if the franchisor aggregates financial data across the system. Check your franchise agreement or operations manual. If the required COA bundles occupancy, you may need to add custom sub-accounts or classes that are invisible to the franchisor's reporting but visible to your own management reports.
What if my accounting is done by a bookkeeper who isn't familiar with NNN leases?
Create a one-page coding guide specific to occupancy costs: account names, account numbers, what belongs in each account, and how to identify payments by type (estimate payment vs. true-up settlement). Give this to your bookkeeper as a standing reference. The guide should also specify how to handle credits, mid-year estimate changes, and prepaid tax payments.
Can I set up class codes in QuickBooks for locations?
Yes. QuickBooks Online and Desktop both support class tracking, which lets you tag transactions by location without creating sub-accounts. Set up one class per location. All occupancy cost transactions are posted to the relevant account (6110, 6120, etc.) with the appropriate location class. QuickBooks then generates a Profit & Loss by Class report that shows each location's occupancy cost breakdown side by side.
How far back should I restate my historical data?
For prior-year CAM audit purposes, the most important period is the current audit window (typically the prior 1–3 reconciliation years, depending on your lease). You don't need to restate historical data further back than your audit window unless you're conducting a broader financial analysis. Start with the current year and the most recent reconciliation.
Is there a difference between how I code estimated vs. actual payments?
Yes, and keeping them separate is the whole point. When you make a monthly estimate payment: debit Account 6110 (CAM Estimated), credit cash. When the reconciliation arrives and you verify the true-up: debit Account 6115 (CAM True-Up Adjustment) for the additional amount owed (or credit it for a refund), credit/debit the accrued liabilities account.
What do I do with a credit true-up in my accounts?
Credit the true-up account (6115) for the credit amount, which nets against the year's CAM true-up expense. If you've been accruing for the true-up, also reduce the accrued liability balance. The net effect on the P&L is a reduction in occupancy cost for the period in which the reconciliation is settled.