Commercial Real Estate Software: CAM, NNN, Leases
Commercial real estate software is lease administration plus a recovery engine. Here is why the commercial lease is a harder data model than a residential one, how CAM reconciliation, NNN leases, recoveries, gross-up, and escalations compute, and when to build.

Commercial real estate software is, underneath the dashboards, lease administration plus a recovery engine. It holds which tenant occupies which premises under which lease, what each owes in base rent and reimbursable charges, and the year-end reconciliation that decides whether a tenant overpaid or underpaid its share of running the building. When it works, the landlord, the tenant, and the asset manager read the same numbers, and the annual CAM statement survives a tenant audit. When it does not, the estimates and the actuals drift, a reconciliation is wrong by tens of thousands of dollars, and a dispute lands on someone's desk.
This article is the build guide for that system, not a vendor shortlist. It leads with the part the category pages skip: why the commercial lease is a far harder data model than a residential one, then CAM reconciliation as an actual computation, the lease types that decide who pays what, the recoveries and gross-up math, escalations, and lease abstraction. Residential operations run on different ledger logic, which we cover in property management software and enter here only as the contrast that shows why commercial is harder. The investment return model belongs to real estate investment software; the bookkeeping belongs to real estate accounting software. This is the operational layer between them.
The short version
- Commercial real estate software is lease administration plus a recovery engine: it tracks which tenant occupies which premises under which lease, what each owes in base rent and reimbursable charges, and the year-end reconciliation that trues those charges up to actual cost.
- The commercial lease is a far harder data model than a residential one because it is a structured legal object, with premises and suites, a multi-year term and options, a rent schedule, recovery terms, and co-tenancy clauses, rather than a flat unit-to-tenant-to-lease row.
- CAM reconciliation is the engine at the center: budget, estimate, actual, reconcile, and true-up, bounded by expense caps and base-year stops, producing a per-tenant statement that must survive a tenant audit.
- The lease type, triple net (NNN), modified-gross, or full-service gross, decides which expense pools pass through to the tenant, so software stores it as a first-class attribute of the lease.
- A tenant's pro-rata share is its rentable area divided by the building's rentable area, measured on the ANSI/BOMA Z65 standard, and occupancy-variable expenses are grossed up to roughly 95 to 100 percent so an empty suite stays the landlord's cost, not the neighbors'.
- Buy or configure a packaged suite when your portfolio matches the norm; build custom when your recovery rules are nonstandard or your asset mix spans office, retail, and industrial with different measurement models.
What commercial real estate software is, and how it differs from residential
Commercial real estate software is the system of record a landlord or asset manager uses to administer commercial leases end to end: office, retail, and industrial space, the tenants in it, the rent and reimbursable charges they owe, and the annual reconciliation that trues those charges up to actual cost. It is run by landlords, property managers, and the asset-management teams inside funds and REITs.
The difference from residential is not the feature list; it is the shape of the data. Residential property management models a mostly flat relationship: a unit, a tenant, a lease, and a handful of uniform charges, so the hard engineering goes into the deposit liability and trust accounting. Commercial inverts that. The lease is the complex object, carrying a multi-year term, renewal and expansion options, executory costs the tenant reimburses, and clauses that change rent based on other tenants. On top of it sits a recovery engine that no residential product needs: a machine that reconciles shared building expenses and bills each tenant its measured share. That is the whole reason this is a separate category.
The commercial lease as a data model
The hardest and most underrated part of commercial real estate software is the lease data model, because a commercial lease is not a row in a table; it is a structured legal object with a dozen interacting clauses, each of which has to be a first-class field the billing and reconciliation engines can read. Get the model right and every calculation above it becomes tractable. Get it wrong and you are abstracting the same lease by hand forever.
Start with the premises. A tenant does not lease a "unit"; it leases defined space, often one or more suites across floors, with a measured rentable area that drives everything downstream. The term is multi-year and rarely simple: a commencement, an expiration, and a stack of options, renewals at a pre-agreed or market rent, expansion or contraction rights, rights of first refusal on adjacent space. The rent schedule is not a single number but a time series of base rent with scheduled increases built in. The recovery terms state how the tenant reimburses operating costs, which pools pass through, what caps and stops apply. And co-tenancy clauses, common in retail, can reduce or suspend a tenant's rent if an anchor store goes dark or occupancy drops below a threshold, so one tenant's rent depends on the state of others. The figure below sets out the core elements, what each holds, and why a residential model has no slot for it.
| Element | What it holds | Why residential has no slot for it |
|---|---|---|
| Premises / suites | One or more suites with measured rentable area | Residential leases a single whole unit |
| Term and options | Multi-year term plus renewal, expansion, contraction rights | Residential terms are flat and short |
| Rent schedule | A time series of base rent with built-in escalations | Residential rent is one number |
| Recovery terms | Which expense pools pass through, caps, base-year stops | Residential has no pass-through reconciliation |
| Co-tenancy | Rent relief tied to anchor occupancy | One tenant's rent never depends on others |
CAM reconciliation, the engine inside commercial real estate software
If the lease is the data model, common area maintenance reconciliation is the engine, and it is the single computation that most separates commercial real estate software from everything residential. CAM covers the cost of running shared parts of a property, the lobby, parking, landscaping, security, and tenants reimburse their share. The catch is that nobody knows the real cost until the year is over, so the whole thing runs as an estimate followed by a true-up.
The cycle goes budget to estimated to actual to reconcile to true-up. Before the year, the landlord sets a CAM budget and bills each tenant an estimated monthly charge against it. After the year closes, the engine totals actual expenses and does the work the category pages reduce to a checkbox. First it separates recoverable pools from non-recoverable items, because not every dollar passes through; capital improvements, leasing commissions, and landlord-side costs are typically excluded, and a single misclassified expense corrupts every tenant's bill. Then it may add an administrative fee the lease permits on the recoverable total. Then it applies the limits the lease imposes: an expense cap that ceilings how much a controllable cost can rise, and a base-year stop in a gross lease where the tenant pays only the increase over a baseline year. Finally it recomputes each tenant's share by pro-rata percentage and bills the difference between estimated and actual, tenant by tenant, as an over or under. IREM frames this operating-expense analysis as core to professional management, because a reconciliation is a defensible legal document, not a spreadsheet, and a tenant has the right to audit it.
Caps deserve their own note, because a single word in the lease changes the math. A non-cumulative cap limits each year's increase against the prior year, and unused headroom is lost. A cumulative cap lets unused room from low-growth years carry forward to cover a later spike. A compounding cap grows the ceiling itself year over year. The software has to model which one a lease uses, because the three produce materially different recoverable amounts from the same expenses. The figure below lays out the cycle and the rule that bounds each step.
| Step | What it computes | The rule that bounds it |
|---|---|---|
| Budget | The year's expected recoverable expenses | The landlord's operating plan |
| Estimated | A monthly CAM charge per tenant | Billed against the budget |
| Actual | Real recoverable expenses, year-end | Recoverable pools only, excludes capital items |
| Reconcile | Per-tenant share of actual, plus admin fee | Caps (cumulative, non-cumulative, compounding) and base-year stops |
| True-up | The over or under billed to each tenant | Must survive a tenant audit |
NNN, gross, and modified-gross leases
The lease type is the switch that decides which expenses pass through to the tenant and which the landlord absorbs, and the software stores it as a first-class attribute because it changes the entire billing and reconciliation path. The common structures sit on a spectrum of how much operating cost the tenant carries.
At one end is the triple net (NNN) lease, where the tenant pays base rent plus its share of the three nets: property taxes, building insurance, and common area maintenance. Standard in single-tenant retail and industrial, it pushes nearly all operating cost and its variability onto the tenant. A modified-gross lease splits the costs: the tenant pays base rent and some operating expenses while the landlord keeps others, often with a base-year stop. A full-service gross lease, common in multi-tenant office, bundles operating costs into the rent, and the landlord carries the expense risk, usually recovering increases through a base-year escalation rather than a full pass-through. The terminology comes straight from how NAIOP and the industry classify office, retail, and industrial deals. The engineering point is that the lease type selects which expense pools the reconciliation engine reads, so an NNN tenant is trued up across all three nets while a gross tenant may only see a base-year increase. The figure below maps each type to who pays and what passes through.
| Lease type | Who pays operating costs | What passes through |
|---|---|---|
| Triple net (NNN) | Tenant pays base rent plus the three nets | Taxes, insurance, and CAM, by pro-rata share |
| Modified-gross | Split between tenant and landlord | Some pools, often with a base-year stop |
| Full-service gross | Landlord, bundled into rent | Only increases over a base year |
Recoveries, pro-rata share, and gross-up
Recoveries are how the reimbursable expenses reach each tenant's bill, and the math has two parts the category pages wave at without defining: the pro-rata share and the gross-up. Both rest on a measured number, not a guess, which is where the floor-measurement standard comes in.
A tenant's pro-rata share is its rentable area divided by the building's rentable area, the fraction of recoverable expenses it carries. The rentable figure is not the space the tenant occupies; it includes an allocation of shared areas. The ANSI/BOMA Z65 floor-measurement standards define the difference between usable area, the space inside a tenant's walls, and rentable area, which adds a share of common space through a load factor (the add-on factor). So a 9,000-square-foot usable suite with a 12 percent load factor becomes roughly 10,080 rentable feet, the numerator in the share. Standardizing on BOMA is what makes the denominator defensible when a tenant audits the bill.
Then comes gross-up, the adjustment that trips up naive implementations. When a building is under-occupied, expenses that vary with occupancy (utilities, janitorial) come in lower than they would at full occupancy. If you simply divided actual variable cost by each tenant's share, an occupied tenant would underpay, and the landlord would eat the cost of vacant suites. So those variable expenses are grossed up to what they would have been at a stated occupancy, typically around 95 to 100 percent, before the share is applied, per BOMA gross-up methodology. Each tenant then pays its true share of running a full building, and the vacancy stays the landlord's problem. Fixed expenses that do not move with occupancy are not grossed up. The software stores both areas, the load factor, and the gross-up basis, then recomputes the share each cycle, because occupancy changes year to year.
Rent escalations and percentage rent
Base rent in a commercial lease is almost never flat for the term; it escalates on a schedule written into the contract, and the software has to generate those increases automatically rather than trusting someone to remember a date. There are three common forms, and they compute differently enough that each needs its own handling.
Fixed or stepped escalations are the simplest: base rent rises by a set dollar amount or percentage on scheduled dates, so the engine bakes the steps into the rent schedule when the lease is abstracted. CPI-indexed escalations tie the increase to a published inflation index, so the engine reads the index value at each adjustment, applies any collar (a floor and ceiling on the change), and recalculates, which means the increase is not known until the index prints. Percentage rent, the retail staple, charges the tenant a percentage of its sales above a threshold called the breakpoint. The natural breakpoint equals annual base rent divided by the percentage rate, so a tenant paying 60,000 dollars in base rent at a 6 percent rate hits its natural breakpoint at 1,000,000 dollars in sales, above which it owes 6 percent of the overage. That requires the software to ingest tenant sales reports and compute the overage rent, a flow no fixed lease needs. Modeling escalations as scheduled, rule-driven charges is what keeps a rent roll correct across a multi-year term.
How commercial real estate software handles lease abstraction and stacking plans
Before any of the math can run, the lease has to become data, the job of lease abstraction: extracting the structured fields the engines need from a long legal document. A commercial lease can hide a hundred-plus relevant data points across forty pages, the premises and rentable area, every option and its notice window, the recovery method, the caps and stops, the escalation schedule, the co-tenancy triggers. Abstraction reads those out of prose and into a normalized schema, and it is where optical character recognition and increasingly AI-assisted extraction earn their place: a model proposes the fields, a human verifies the ones that carry money. The reliable pattern keeps the abstracted data structured and links each field back to the clause it came from, so a disputed charge traces to the lease language behind it.
Above the abstracted leases sits the spatial view. A stacking plan is the building drawn as a graph of floor to suite to lease: each floor divided into suites, each occupied suite linked to its lease, with vacancies, expirations, and contiguous available blocks visible at a glance. It is how a leasing team sees what is rolling over and where a tenant could expand. Rolling all the leases up gives the commercial rent roll, richer than its residential cousin: not just base rent, but recoveries, scheduled escalations, options, and a weighted-average lease term (WALT) that tells an owner how long the income is contracted for. The rent roll, the stacking plan, and the abstracted leases are three views of the same lease graph, which is exactly why the data model in the second section has to be right first.
Asset types and how commercial real estate software models them
Commercial is not one asset class, and the software cannot pretend it is, because office, retail, and industrial space measure and recover differently. The cleanest way to see it is through the measurement standard, since BOMA publishes a different Z65 standard for each, and the measurement basis drives the recovery.
Office runs on ANSI/BOMA Z65.1, with the load-factor model above: usable area plus a share of common space, multi-tenant floors, and gross or modified-gross leases reconciled against a base year. Industrial uses BOMA Z65.2 and tends toward large single-tenant or few-tenant buildings on NNN terms, where the tenant carries nearly all cost and the reconciliation is simpler in tenant count but exacting on the three nets. Retail uses BOMA Z65.5 and adds the structures the other two rarely see: percentage rent on sales, co-tenancy clauses tied to anchor occupancy, and CAM pools shaped around a shopping-center common area. A platform that models only office measurement will misbill an industrial NNN portfolio or a retail center with percentage rent, so the area model, the recovery model, and the rent structure all have to be configurable per property. There is also an accounting reason the lessor side is complex: under FASB ASC 842, a landlord's lease income includes variable lease payments such as CAM and percentage rent that are not fixed in advance, so the data feeding the books has to be precise. The journal entries belong to the accounting article; the recovery engine is what produces those numbers.
Build, configure, or buy commercial real estate software
With the model and the engines laid out, the decision is which parts to buy, configure, or build, and the honest framework starts from one question: where does your portfolio differ from the norm? The parts that look like every other landlord's are the parts a packaged product already models. The parts that make you distinctive are the ones no package fits.
Buying or configuring a packaged product is the right default for the common ground. If your lease structures, recovery terms, and reporting resemble the market standard, a mature suite gives you years of accumulated lease-administration and reconciliation logic and someone else's maintenance, and the discipline is to stay close to standard because every customization is a thing you re-test forever. Vendors like Yardi, MRI, and Argus model the common cases well. Building custom wins for the differentiating core: nonstandard recovery rules a generic engine cannot express, a mixed asset portfolio spanning office, retail, and industrial with different measurement and recovery models in one system, deep integration with an accounting or market-data stack, or a tenant or owner experience you compete on. When the list of "the product almost does this" workarounds becomes the implementation, you are already paying for custom software without owning it.
As a market reference, scope drives the number more than screen count: a focused build that proves one workflow starts modest, while a full multi-asset platform with a complete reconciliation engine, sales-based percentage rent, and integrations scales well into six figures, because the recovery logic and the lease model are where the engineering lives. Many operators land on a hybrid: keep a standard suite for routine lease administration and build the differentiated recovery or reporting layer around it. That is the shape of work we do in our custom software development and product development practices, and on the real estate and proptech platforms we build. Our real-estate app and real-estate tokenization platform are both custom real-estate builds, not packaged products; for the wider category, what proptech is and the multi-tenant architecture behind a SaaS platform map the neighboring pieces.
Frequently asked questions
They share a shape but not a data model, which is why one product rarely serves both. Residential software models a flat unit-to-tenant-to-lease relationship with uniform charges, so the engineering goes into the deposit liability and trust accounting. Commercial real estate software has to model the lease itself as a complex object: premises and suites, a multi-year term with renewal and expansion options, executory costs the tenant reimburses, and co-tenancy clauses. On top of that sits a recovery engine that reconciles common area maintenance, applies caps and base-year stops, and computes each tenant's pro-rata share. A residential-only platform strains the moment it meets a real commercial lease.
CAM reconciliation is the annual true-up between what tenants paid toward common area maintenance and what the building actually spent. Through the year each tenant pays an estimated monthly CAM charge based on a budget. After the year closes, the landlord totals actual recoverable expenses, separates recoverable pools from non-recoverable items, adds any administrative fee, applies caps and base-year stops, and recomputes each tenant's share by pro-rata percentage. The difference between estimated and actual is billed or credited per tenant. In software this is a computation, not a report: a recoverable-expense engine that produces a defensible per-tenant statement that survives an audit.
A triple net (NNN) lease is a structure where the tenant pays base rent plus its share of the three nets: property taxes, building insurance, and common area maintenance. It sits at one end of a spectrum that runs through modified-gross to full-service gross, where the landlord absorbs more of those costs. The lease type decides which expense pools pass through and which the landlord keeps. Software handles it by storing the recovery structure as a first-class attribute of the lease, so an NNN tenant is reconciled across all three nets while a gross tenant may only see a base-year escalation.
A tenant's pro-rata share is its rentable area divided by the building's rentable area, the fraction of recoverable expenses it carries. The rentable areas come from a floor-measurement standard; ANSI/BOMA Z65 defines rentable versus usable area and the load factor between them, so the denominator is measured, not estimated. Gross-up adjusts for under-occupancy: when a building is partly vacant, variable expenses that scale with occupancy are grossed up to roughly 95 to 100 percent occupancy, per BOMA methodology, so the landlord does not push a vacant suite's costs onto occupied tenants. Software stores both areas and the gross-up basis and recomputes the share each cycle.
Rent escalations are the contractual rent increases written into a commercial lease, and they come in three common forms the software models distinctly. Fixed or stepped escalations raise base rent by a set amount or percentage on scheduled dates, the simplest to compute. CPI-indexed escalations tie the increase to a published inflation index, so the engine reads the index, applies any collar or cap, and recalculates. Percentage rent, common in retail, charges a percentage of tenant sales above a breakpoint, where the natural breakpoint equals annual base rent divided by the percentage rate. The software generates the escalated charges automatically against the rent schedule, not by manual reminder.
Buying or configuring a packaged product is the right default when your portfolio looks like the norm the product models: standard lease structures, common recovery terms, and reporting an off-the-shelf suite covers. Building custom wins when your recovery rules are nonstandard, your asset mix spans office, retail, and industrial with different measurement models, you integrate deeply with an accounting or market-data stack, or a tenant experience is something you compete on. Many operators run a hybrid: a packaged backbone for routine lease administration with a custom recovery layer on top. Idealogic builds custom commercial real estate platforms and integrations, rather than selling a packaged product.
More from the journal

What Is an Automated Valuation Model (AVM) and When to Trust It
An automated valuation model (AVM) estimates property value from comparable sales, hedonic regression, and public records in seconds, without an appraiser. Here's how AVMs produce a number, what confidence scores mean, and where the estimate breaks down.

What Is PropTech? Property Technology Explained with Examples
PropTech means property technology: software that reshapes how real estate is listed, managed, financed, and owned. What the five major segments cover, what each changes in practice, and when custom proptech development makes more sense than buying off the shelf.

Healthcare Data Analytics: Architecture and How to Build It
Healthcare data analytics turns clinical, claims, and device data into decisions. Here's the four types, the reference architecture, HL7/FHIR integration, HIPAA de-identification, and the ML pipeline behind it.