In-depth reference
Market leasing — in depth
The complete reference for Market Leasing Assumptions — every profile field, how tenants get assigned, and the renewal/vacate blend the engine runs at each lease expiration.
A Market Leasing Assumption (MLA) is the set of terms Moraine uses the moment a lease stops being a contract and starts being a forecast. In-place rent, steps, and recoveries are read from documents; everything after expiration — what the space re-leases at, how long it sits empty, what it costs to re-tenant it, and whether the sitting tenant stays — is an assumption, and an MLA is where that assumption lives. Every occupied suite rolls to its assigned profile at expiry; every vacant suite leases up from one. Get the assignment wrong and a five-figure-per-year error hides inside a number that looks reasonable.
This chapter is the exhaustive reference: every field a profile carries, how a tenant acquires a profile, and the exact renew-or-vacate arithmetic the live engine runs each time a lease rolls. Open MLAs with ⌘8.

The mental model
Section titled “The mental model”An MLA is not one leasing scenario — it is two, plus a probability that picks between them. Every economic field exists in a New flavor (a fresh tenant takes the space) and a Renewal flavor (the sitting tenant stays), and the profile’s Renewal Probability blends them into the single set of terms the cash flow actually books. A renewal is cheap and fast (little downtime, low tenant improvements, a discounted rent); a new deal is slow and expensive (a long dark period, full build-out, a market rent). The probability is the weight on the renewal leg:
blended value = p × Renewal + (1 − p) × New where p = Renewal ProbabilitySo a profile at 75% renewal probability spends 75% of its weight on the cheap
renewal terms and 25% on the expensive new-tenant terms. This one reading —
that p weights renewal, not “new” — governs every field below and both worked
examples at the end.
The complete field reference
Section titled “The complete field reference”A profile is stored as a compact configuration object, surfaced in the matrix as one editable row per field. The table below is every field the model carries. “Default” is the value a from-scratch Default MLA seeds; extracted deals override these from the broker legend, the rent roll, or a derivation (see How a tenant gets a profile).
| Field | What it is | Units / format | Default | Effect on the model |
|---|---|---|---|---|
| Market Rent — New | The rent a new tenant pays, quoted at the analysis start (un-inflated). | $/SF/year (default), or $/SF/month, $/year, $/month — pick the unit on the New cell |
$32.00 /SF/yr |
The anchor of every rollover. Grown by market-rent inflation to the lease-up commencement date, then blended. Total units ($/year, $/month) re-lease at a fixed dollar total — the ground-lease / pad convention. |
| Market Rent — Renewal | The rent the renewing tenant pays, entered as a $/SF figure but stored as a percent of market. | $/SF in the cell; persisted as renewalRentPercent |
100% of New |
Tracks market as you edit New, rather than decoupling into a stale absolute. A renewal rent of 0 is honored (a concessionary renewal); only negatives are clamped to 0. |
| Market Rent — Blended | Read-only. The probability-weighted New/Renewal rent the cash flow books. | Engine-derived $/SF (or plain $ on a total-basis MLA) |
— | p × Renewal$ + (1 − p) × New$, un-inflated at the analysis start. This is the display mirror of the exact per-lease blend. |
| Escalations | In-term rent growth once the rolled lease is signed (the CPI/bump rate). | % shown from the New side |
0% unless set | Applied inside the rolled term. The single row writes the rate to both New and Renewal, preserving each side’s method, floor, cap, and compounding. Shows a “mixed” marker when New and Renewal diverge or a step schedule exists — split/step editing then lives in Advanced. |
| Market Rent Growth | Annual inflation applied to market rent between the analysis start and each lease-up date. | %/yr, or a named growth-rate schedule |
3.0% | Grows New market rent forward to the commencement date of each roll. A per-MLA value; a growth-rate schedule (if attached) takes precedence over the flat rate. |
Downtime and term
Section titled “Downtime and term”| Field | What it is | Units / format | Default | Effect on the model |
|---|---|---|---|---|
| Months Vacant — New | Dark months before a new tenant commences (search + build-out). | whole months | 4 | Blended in; the whole part is lost rent (absorption/turnover vacancy), the fractional part is prorated (below). |
| Months Vacant — Blended | Read-only expected downtime the cash flow uses. Renewing tenants have zero downtime. | Engine-derived months | — | floor((1 − p) × VacNew). The fractional remainder is not discarded — it is prorated as a partial-month free-rent abatement in the first paying month, so expected rent matches the unrounded blend instead of rounding half a vacant month away. |
| Term — New / Renewal | Length of the re-signed lease. The single Term row writes both. | whole months | New 84, Renewal 60 | round(p × TermRenewal + (1 − p) × TermNew) sets the next roll’s timing. Shows “mixed” when the two diverge. A stated value of 5–15 is read as years and multiplied by 12, with a warning — a 5-month market term is almost never real. |
Re-tenanting cost
Section titled “Re-tenanting cost”| Field | What it is | Units / format | Default | Effect on the model |
|---|---|---|---|---|
| TI — New | Tenant-improvement allowance for a new tenant. | $/SF |
55 | Charged once, in full, in the month the rolled lease commences: blendedTI × SF. |
| TI — Renewal | TI for a renewing tenant — typically a fraction of New. | $/SF |
18 | Blended with New by p. |
| TI — Blended | Read-only blended TI. | Engine-derived $/SF |
— | p × TIRenewal + (1 − p) × TINew. |
| LC — New | Leasing commission on a new deal. | $/SF or % — toggle the unit on the cell |
5 ($/SF) |
A percent is a percent of total lease value (rent × term, net of free rent and grown by escalation); a bare number is a flat $/SF. Charged with TI at commencement. |
| LC — Renewal | Commission on a renewal. | $/SF or % |
2.5 ($/SF) |
Blended with New by p. |
| Abatements — New / Renewal | Free-rent months granted on the re-signed lease. | whole months | New 3, Renewal 1 | max(0, p × AbateRenewal + (1 − p) × AbateNew). The fractional part joins the downtime remainder as a partial-month abatement. |
| Abatements — Blended | Read-only blended free rent. | Engine-derived months | — | The blend above; whole months at 100% plus one partial month. |
Recoveries and identity
Section titled “Recoveries and identity”| Field | What it is | Units / format | Default | Effect on the model |
|---|---|---|---|---|
| Renewal Probability | The weight on the renewal leg of every blend. | % (0–100) |
75% | The p in every formula on this page. Also the default for any assigned lease that does not override it. |
| Reimbursements | The recovery structure a rolled/leased-up tenant carries. | Method picker | Net (NNN) | Options: Net (NNN), Gross, Base Year, Base Year +1, Base Year -1, Base Stop, Fixed, Pool Minor, Pool Major, Continue prior. Continue prior keeps the departing tenant’s pool membership and recovery structure across the roll. Set separately for New vs Renewal under Advanced. |
| Reference profile | A broker-stated profile with no assigned tenant. | flag | off | Tagged “Reference”; ignored by the engine and skipped by the empty-MLA validator. An un-tagged empty profile is still flagged as a finding. |
The full rollover reimbursement detail — separate New and Renewal recovery configs, admin fees, reimbursed categories, pro-rata method — lives in the per-column Advanced panel, alongside rent-step schedules and source lineage. The rule of thumb the panel states in place: tenant assignment lives in the Rent Roll; leasing standards live here.
How a tenant gets a profile
Section titled “How a tenant gets a profile”Assignment is resolved once, at compile time, by a fixed precedence ladder. When a broker legend or the rent roll supplies named profiles, each lease is matched to one; when neither does, Moraine derives profiles from the in-place rent roll. Understanding the ladder is what lets you read the Assigned chips and know whether a match is trustworthy or a fallback.
When the deal supplies MLA profiles
Section titled “When the deal supplies MLA profiles”Each lease walks this order and takes the first match:
-
Explicit extractor assignment. If the document extractor named a specific source profile for this lease and that profile survived into the model, it wins over everything below. This is the “the OM’s leasing table literally labels this suite” case.
-
Explicit tenant list. A profile can carry a list of applicable tenant names. A lease matches when its tenant name equals a listed name, or when every token of a multi-word listed name appears in the tenant name (company suffixes like LLC, Inc, Corp, LP are stripped before comparing).
-
Profile named after the tenant. OM leasing tables often key a tenant-specific row by the tenant’s own name (“Montgomery County: Market Rent $20.50…”) with no explicit list. A name match here beats any generic size band — but only when the profile has no explicit tenant list, which stays authoritative.
-
Size bounds. A profile with a stated
minSize/maxSizematches when the lease’s rentable area falls in[min, max)(min inclusive, max exclusive). If only one bound was stated, the profile’s named category (next step) backfills the missing half so an “Anchor” profile with only a ceiling cannot swallow a small shop. -
Category name. For a profile that names a known category but states no list or bounds: Anchor / Major / Big-box / Junior anchor imply a size floor of 15,000 SF; Shop / Inline / Small / Pad imply a ceiling of 15,000 SF. A lease matches when its size falls in the implied band.
-
Catch-all. Any lease still unmatched falls to a deal-wide profile if one defensibly exists: a single unscoped profile, or one named “Global / All tenants / Default / General”, or — failing that — a profile whose name matches the property’s use type (an office building’s leases roll to an “OFFICE: SECOND GEN” profile rather than an invented placeholder). A second-generation profile beats a first-gen/spec one, since spec space is the lease-up mapper’s job, not rollover.
-
Generic fallback. With no defensible catch-all, unmatched leases land on a generic placeholder profile (a
$25/SF“Unassigned Generic Market Assumptions”), and the compile emits a warning. This is the state the matrix flags — see assignment issues.
Two backfills quietly improve a matched-but-thin profile. If a named profile (e.g. “Shop Space NNN”) never stated a market rent, it is filled from the size-weighted in-place rent of the comparable leases that actually landed on it, rather than the generic placeholder. If it never stated a reimbursement method, that is filled from the dominant recovery structure (by area) of those same comparables. Both only fire when a real comparable exists — Moraine never invents a figure — and each raises an informational note.
When the deal supplies none
Section titled “When the deal supplies none”With no broker or rent-roll profiles, Moraine derives them from the occupied rent roll by size bucket:
| Bucket | Rentable area | Market rent | Renewal prob. | Downtime (New / Renewal) |
|---|---|---|---|---|
| Small | under 3,000 SF | size-weighted in-place avg | 75% | 9 / 3 mo |
| Mid-Size | 3,000 – 10,000 SF | size-weighted in-place avg | 75% | 9 / 3 mo |
| Large | 10,000 – 25,000 SF | size-weighted in-place avg | 75% | 9 / 3 mo |
| Major | 25,000 SF and up | size-weighted in-place avg | 75% | 9 / 3 mo |
Each bucket’s market rent is the size-weighted average annual rent of the
in-place leases in it; term is the average lease length clamped to 36–60 months;
TI defaults by property type (Office 40/16, Retail 25/10, Industrial 10/4,
Multifamily 2/1, else 30/12 $/SF New/Renewal); commissions default to 4% New /
2% renewal. These are starting points to review, not answers — the workspace
exists so you replace them.
What happens at each lease expiration
Section titled “What happens at each lease expiration”The engine advances every lease month by month. While a lease is inside its current term it simply bills. At the first month past expiration, its disposition decides what happens next. The disposition comes from the lease (the Rent Roll’s “upon expiration” setting), not the MLA, and it selects which blend runs:
| Disposition | What the engine does | Renewal probability used |
|---|---|---|
| Market | Runs the full renew/vacate blend using the profile’s probability. | the MLA’s p |
| Renew | Forces a renewal. | p = 1 (renewal terms only) |
| Vacate | Forces a new-tenant lease-up. | p = 0 (new terms only) |
| Option | Exercises a stated option term (see below), then rolls per the post-option disposition. | 100% for the option itself |
| Reconfigured | Space goes permanently dark after expiration. | — |
If the lease has no resolvable MLA, the space stays vacant for the rest of the hold after expiration — a silent runtime outcome whose diagnostic is the static coverage check, surfaced as an assignment issue and an engine warning.
The rollover blend, step by step
Section titled “The rollover blend, step by step”When disposition is Market (or Renew/Vacate forcing p), the engine builds
the next lease like this:
-
Place the commencement. The rolled lease commences
blendedDowntimewhole months after the first day of the month following expiration. Those months are lost rent (absorption/turnover vacancy). -
Grow the market rent to that date. Market Rent — New is inflated from the analysis start to the commencement date by the profile’s market-rent growth. Renewal rent is its stored percent of that grown figure. (Exact at both poles: a pure renewal has no downtime to grow through; a pure new lease grows through its full vacancy.)
-
Blend every economic field by
p: rent, TI, LC, term, downtime, and free rent, eachp × Renewal + (1 − p) × New. Downtime is floored to whole months with the remainder carried as a partial abatement; term is rounded. -
Pick the in-term detail. When
p ≥ 0.5the rolled lease takes the Renewal side’s step schedule and discrete escalation settings (method, cap, floor, compounding); otherwise the New side’s. The scalar escalation rate itself blends continuously, so year-2 rents don’t jump at exactlyp = 0.5. -
Carry the recovery structure. The rolled lease uses the MLA’s renewal (or, if unset, new) reimbursement method. Continue prior — or an unset method — means it keeps the departing tenant’s own recovery config and pool membership.
-
Book the cost. In the commencement month, TI (
blendedTI × SF) and LC (the blended commission) are charged in full as capital costs.
Every roll increments a renewal counter and re-arms the lease for the next expiration, so a 24-month market term on a long hold rolls again and again — second-generation rollovers and beyond. Subsequent rolls default to the Market blend on the same MLA, so the profile that governed the first roll governs all of them. (A backstop caps a single lease at 100 rolls; on the 40-year projection ceiling a real term never approaches it.)
Market-rate renewal options
Section titled “Market-rate renewal options”A lease can carry explicit option terms that pre-empt the blend. An option priced on a market basis has no stated dollar rent — it re-prices at the lease’s MLA. When exercised, the engine grows the MLA’s Market Rent — New to the option’s commencement date and multiplies by the option’s market-rent percent (default 100%). An option assumes no downtime, no TI, and 100% exercise — it is the sitting tenant continuing, not a re-tenanting. Its commission is the option’s own leasing commission if stated, else the MLA’s renewal LC.
Options chain: subsequentOptionTerms are modeled in sequence, each priced at
its own commencement date (so with 3% growth, each option is dearer than the
last), and fixed and market option terms can mix in one chain. After the final
option term, the space rolls over per the lease’s post-option disposition
(default Market) — still on the same MLA, so the assumptions stay consistent
with the pre-option period. If a market-basis option can’t be priced (no MLA
resolves), the engine falls through to an ordinary Market rollover.
The MLA matrix — every interaction
Section titled “The MLA matrix — every interaction”The workspace renders the broker matrix: profiles are columns, assumption fields are rows. The header carries a Grid off / Grid on toggle and + Add profile; the sub-line reads N profiles · M assigned tenants · broker matrix — profiles are columns, assumptions are rows. Blended rows are engine-derived and read-only.
Editing a cell. Click any editable cell and type. Most fields commit a
single value; the boundary fields do more: the Term and Escalations rows
write both New and Renewal; Market Rent — Renewal converts your $/SF entry
to a percent of market; the LC cells carry a $/SF ↔ % unit toggle. Every
lease assigned to that profile re-rolls immediately.
Blended rows (Market Rent, Months Vacant, TI, Abatements) are engine-derived from the same blend the cash flow runs, so they can never drift from the model — they are read-only.
The Assigned row shows each profile’s tenant chips (N tenants · X SF · Y%).
Drag a chip to another column to reassign it; the model re-rolls that tenant on
the new profile. Select multiple chips first — plain click selects one,
⌘/Ctrl-click toggles, Esc clears, and dragging a marquee box across
the row selects every chip it touches — then drag the set to move them together.
You can also reassign from the Rent Roll’s MLA column.
Column header controls. Rename a profile in place. A Reference tag marks a profile with no tenants. An amber count button opens that column’s assignment issues. The ⋯ menu holds Advanced detail, Save as firm preset…, Apply firm preset, and Remove profile — Remove is disabled while any tenant is still assigned (reassign them first).
Presets. Save a whole profile as a reusable firm preset from the ⋯ menu, then apply it to any column. The bookmark icon on each row saves or applies a single assumption’s value across every profile at once (one undoable batch) — useful for pushing “3% market growth” or “6-month downtime” to the whole matrix.
Trust marks. A per-cell dotted underline flags a value that wants attention — Defaulted, Inferred, Overridden, or Missing. Settled provenance (Mapped, Reviewed, Reconciled) is left un-marked so green never blankets the grid. The mark’s meaning survives grayscale and screen readers via its label.
Grid mode (Grid on) turns the matrix into a spreadsheet: arrow-key navigation, range selection, Excel-style copy / paste / fill, and Find. Paste writes a cell exactly as typing it would — the same commit boundary, same LC unit handling — so the spreadsheet path and the inline editor stay in lockstep. Read-only rows (blended, assignment) are navigable and copyable but not paste-written.
Assignment issues
Section titled “Assignment issues”When any lease is mis-assigned, a warning card appears above the matrix — “N MLA assignment issues need review. Fix these before relying on rollover assumptions.” The four kinds:
- Missing — a lease that needs an MLA within the hold has none (warning).
- Dangling — a lease points at an MLA id that no longer exists (error); reassign it before trusting any rollover.
- Ambiguous — the assignment’s source is in conflict; review the Rent Roll selection (warning).
- Fallback — the lease sits on a generic/placeholder profile; review the real market assignment (warning).
Worked example 1 — the 70% blend
Section titled “Worked example 1 — the 70% blend”A shop profile at 70% renewal probability. New and Renewal terms:
| Field | New | Renewal |
|---|---|---|
| Market rent | $30.00 /SF | 90% of market = $27.00 /SF |
| Months vacant | 8 | 0 |
| TI | $50.00 /SF | $15.00 /SF |
| LC | $6.00 /SF | $2.00 /SF |
| Term | 84 mo | 60 mo |
With p = 0.70 (renewal weight) and 1 − p = 0.30 (new weight):
Blended rent = 0.70 × 27.00 + 0.30 × 30.00 = 18.90 + 9.00 = $27.90 /SFBlended TI = 0.70 × 15.00 + 0.30 × 50.00 = 10.50 + 15.00 = $25.50 /SFBlended LC = 0.70 × 2.00 + 0.30 × 6.00 = 1.40 + 1.80 = $3.80 /SFBlended term = round(0.70 × 60 + 0.30 × 84) = round(42 + 25.2) = 67 moRaw downtime = 0.70 × 0 + 0.30 × 8 = 2.4 mo → whole downtime = floor(2.4) = 2 months vacant → 0.4-month remainder → a 40%-abated first paying monthOn a 10,000 SF suite, at the commencement of the rolled lease the model
books TI of 25.50 × 10,000 = $255,000 and LC of 3.80 × 10,000 = $38,000,
after two months of vacancy (plus that fractional 0.4-month of free rent). Note
how the cheap renewal terms dominate — the blended TI is barely half the New
figure — precisely because 70% of the weight is on the tenant staying.
Worked example 2 — a rollover cash-flow year
Section titled “Worked example 2 — a rollover cash-flow year”Same profile, one suite: 10,000 SF, in-place lease expiring at the end of
Year 5 (month 60). Market Rent — New is $30.00/SF at the analysis start,
growing 3%/yr; renewal is 90% of market; p = 0.70.
-
Commencement. The month after expiration is month 61; the 2-month blended downtime pushes commencement to month 63 (early Year 6).
-
Grown market rent. New market rent is inflated from the analysis start (month 1) to month 63 — about 62 months, or 5.17 years:
30.00 × 1.03^(62/12) ≈ 30.00 × 1.1650 = $34.95/SF. -
Blended re-signed rent. Renewal is 90% of the grown New, so the blend is
grownNew × (0.70 × 0.90 + 0.30) = 34.95 × 0.93 = $32.50/SF. -
Year 6 effects for this suite:
- Two months of absorption/turnover vacancy (months 61–62), plus a 40%-abated month 63 — lost scheduled base rent.
- $255,000 TI and $38,000 LC booked as Year 6 capital costs, in the commencement month.
- From month 63 the suite bills
32.50 × 10,000 = $325,000/yr, and the loss-to-lease against the old in-place rent burns off.
The rolled lease then runs 67 months and rolls again at its expiration — a second-generation roll, priced at its own later commencement date, on this same profile.
Edge cases & gotchas
Section titled “Edge cases & gotchas”- Renewal probability is the renewal weight. A 90% profile is a sticky tenant base — 90% renewals, cheap and fast. It is not “90% new leasing.”
- The fractional downtime is not lost. Moraine floors blended downtime to whole vacant months and prorates the remainder as a partial free-rent month, so expected rent equals the unrounded blend rather than rounding a half-month of vacancy in or out.
- Total-basis (ground-lease) MLAs. Market rent stored as
$/yearor$/monthre-leases at that fixed dollar total; the Blended cell shows a plain dollar amount (e.g.$105,000), not a bogus per-SF figure, and LC computes on the absolute total. - Term read as years. A stated market term of 5–15 is interpreted as years (×12) with a warning — a 5-month market re-leasing term is not a real assumption.
- “10% every 5 years.” A periodic market-rent step is annualized to its compounded-equivalent rate, so it doesn’t compound every year.
- A concessionary renewal is honored. Renewal rent of 0 is a legitimate input; only negative rents are clamped.
- Reference profiles never roll. An empty broker profile is kept for comparison and tagged “Reference”; it drives nothing.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Likely cause | Fix |
|---|---|---|
| A rolled tenant’s rent snaps to a round generic figure (≈$25/SF) | The lease matched no profile and fell to the generic fallback MLA | Check the Assigned chips; reassign on the Rent Roll or fix the profile’s size bounds / category name |
| Space goes permanently dark right after expiration | Dangling MLA id (deleted profile), or the lease’s disposition is Reconfigured | Reassign the MLA from the assignment-issues card; or change the Rent Roll “upon expiration” setting |
| TI/LC spike every few months across the hold | A market term of “5” was stored as 5 months, churning rollover costs | Check the Term row — the year/month heuristic warns on 5–15 |
| Blended market rent shows “$105,000”, not a $/SF figure | The profile is a total-basis (ground-lease) MLA | Expected — total units re-lease at a fixed dollar total |
| Rollover rent never rises toward market | Market Rent Growth is 0, or renewal rent decoupled from market | Set Market Rent Growth; confirm Renewal is a percent of market, not a frozen dollar |
| Recoveries look wrong after a roll | The MLA’s rollover reimbursement method, or a Continue prior that carried an unexpected structure | Open Advanced and check the New/Renewal reimbursement configs |
| “N MLA assignment issues need review” won’t clear | Missing / dangling / ambiguous / fallback assignments remain | Work the card — reassign each flagged tenant before trusting rollover numbers |
Related
Section titled “Related”- MLA Profiles — the quick-start orientation to this view.
- Rent Roll — where tenant→MLA assignment and the “upon expiration” disposition are set.
- Pro Forma — where rollover rent, absorption vacancy, and TI/LC land in the cash flow.