Help centre

DealWise AI user guides

Everything the product does, written down: a step-by-step walkthrough from an empty deal to a verdict, a reference for every section of the deal page, fixes for the problems people actually hit, and a glossary defined the way this engine computes.

Build a deal, start to finish

In order. Each step names where it lives in the app, the fields it asks for, why it matters downstream, and what you see when it is skipped. The form does not vary by asset class, so no step here is scoped to one.

  1. Create the deal

    DealsNew deal

    Deal name
    the only required field
    Asset class
    Land appears here but has no conditional logic yet
    Building SF
    every per-SF figure is measured against this

    "New deal" first asks what you are working on — "I'm evaluating a purchase" or "I'm listing a property" — because the two sides ask for different things. An acquisition collects a purchase price, a loan and exit assumptions. A listing collects none of those and asks instead for a market cap rate. Choosing the listing side withholds the AI Deal Analysis, which is written for a buyer and ends in negotiation recommendations aimed at the seller — it is not shown and not run on a listing, and you get a Listing Price Opinion in its place. That choice is made when the deal is created.

    If it goes wrong

    Only the name is required — everything else can come from a document later, or be filled in from Edit deal.

    I have the broker's OM (offering memorandum)

    Let the app read it and show you what it claims

    1. Upload it

      The Documents section on the deal page, or the "Upload an offering memorandum or lease" step a new deal opens on. PDF or Word .docx, up to 50 MB each, with Kind set to "Offering memorandum". Uploading from there attaches the document to the whole property; the "Applies to" picker on the document's own row moves it onto a suite without re-uploading it.

    2. Extract the assertions

      "Extract OM assertions (AI)" appears on the document row once text has been pulled out of the PDF, and only on a document filed as an offering memorandum. It transcribes five figures — asking price, stated cap rate, cap rate basis, stated in-place NOI and stated pro forma NOI — each with the quote it came from, its page, and how confident the model was.

    3. Read the variance check

      Under those five is the point of the whole feature. A broker's cap rate is an assertion; your rent roll produces a derivation. Where the deal has a purchase price and a rent roll that computes, the panel says what the seller states, what the rent roll and real expenses actually support at that price, and how many points apart the two are. Without both it says it cannot compute the variance yet and names what is missing.

    4. Nothing on this panel is written to your deal

      There are no checkboxes here and no apply control, by design. The seller's claims sit beside what the engine computed so you can see the gap for yourself — they never become inputs.

    5. To get suites out of it, extract the lease terms instead

      "Extract lease terms (AI)" reads the same document for a rent roll and renders one card per suite it found — suite, tenant, square feet, lease type, commencement, expiration, rent unit, current rent, renewal options, and any rent steps the document itself dates and prices. "Review & apply to a suite" opens an editable form under the card, and submitting it creates that one suite. Each suite is applied on its own.

    Never assume this

    The price, cap rate, NOI and pro-forma the OM states are never written to your deal, by design. They are the seller's assertions and they are what the variance check tests. If the app wrote them in, your model would just agree with the broker.

  2. Enter the price and the financing

    Edit dealAcquisitionFinancing

    Purchase price
    Closing costs
    counted in the equity basis, same as the IRR uses
    Loan amount
    leave blank for an all-cash deal
    Interest rate
    6.25 means 6.25%, not 0.0625
    Amortization (years)
    Interest-only period (months)

    Price is the denominator of every cap rate. Loan terms drive debt service, and debt service drives the levered IRR and the DSCR the AI analysis reasons from.

    If it goes wrong

    A percentage entered as a whole number produces an absurd result. A loan amount with no interest rate or amortization stops the cash flow altogether, and the page says so rather than guessing at terms.

  3. Set the acquisition date and hold period

    Edit dealAcquisition

    Acquisition date
    month one of the projection
    Hold period (years)
    how long you own it

    Every rent step is measured against the acquisition date, and the first month of the projection is the month you close in — prorated for the days you actually own it. Enter leases before this is set and there is nothing for the schedule to anchor to.

    Most skipped step

    This is the most skipped step in the product and the single most common reason a deal shows no numbers.

    If it goes wrong

    Without it there are no returns at all: the page shows "Can't compute cash flow yet" where the tiles would be.

  4. Fill in the building specs

    Edit dealThe propertyBuilding specifications

    Building SF
    every per-SF figure measures against this
    Year built
    Year renovated
    Power service
    free text, as stated
    HVAC
    free text — type and age
    Clear height (ft)
    Dock doors
    Drive-in doors

    Building SF is what the price per SF beside the purchase price is measured against, and what the occupancy figure in the AI analysis measures the leased suites against.

    Good to know

    This form does not vary by asset class. Every field above renders on an industrial, office, retail or multifamily deal alike, so the clear height and dock doors are simply blank on the ones they do not describe.

    If it goes wrong

    Occupancy reads oddly when building SF and the sum of the suite SF disagree — the gap is counted as space you have not leased.

  5. Enter the operating expenses

    Deal pageOperating expenses

    Category
    free text — taxes, insurance, cam…
    Annual amount

    Expenses come straight out of NOI. There is no fixed list of them: each is a category you name and an annual figure, added and edited inline on the deal page rather than in Edit deal. Three category names are load-bearing — taxes, insurance and cam are the ones treated as recoverable from tenants under a net lease, and anything else is not recovered. A category named reserves is held below the NOI line, which is why it lowers cash flow and leaves the cap rate untouched.

    If it goes wrong

    Both fields are required, so an expense with no category or no amount is simply not added.

  6. Add your first tenant

    Deal pageSuitesAdd suite

    Name
    101
    Tenant
    who occupies it
    Suite SF
    Lease type
    NNN, Gross, Modified Gross, Full Service
    Commencement
    Expiration
    Vacant
    checkbox
    Anchor tenant
    checkbox — the retail co-tenancy stress test keys on it

    NOI is derived from this and never typed in. Every number on the deal page is downstream of what you enter here. Note what is not on the form: rent. A suite holds the lease's identity and its dates, and the rent lives in the suite's rent steps, added next.

    If it goes wrong

    A suite with no SF is skipped by the engine, and so is one marked occupied with no rent steps. Neither is treated as zero — both are named under Data completeness with the reason.

    I have the executed lease as a PDF

    Let the AI read it instead of typing it

    1. Upload it

      From the documents drawer inside the suite, or from the Documents section with "Applies to" pointed at that suite. PDF or Word .docx, up to 50 MB each, and you can select several at once. There is no OCR — a scan with no text layer will upload and have nothing to read.

    2. Confirm the text came out

      Uploading and reading are different states. A document the app got text out of shows the first couple of lines under its row, and the AI buttons appear beside it. No preview and no buttons means nothing was extracted, and there is nothing for a model to read.

    3. Extract the lease terms

      "Extract lease terms (AI)" renders one card per suite the document describes — suite, tenant, square feet, lease type, commencement, expiration, rent unit, current rent, renewal options, and any rent steps the document itself dates and prices. Every value carries the quote it came from, its page and a confidence label, because an extracted value with no visible source is exactly what the trust model exists to prevent.

    4. Review, then apply

      "Review & apply to a suite" opens an editable form under the card. Every field in it is editable, the rent is converted to $/SF/yr from whichever unit you select, and nothing is written until you submit. Submitting creates that suite, plus its opening rent step where you left both the SF and the rent filled in. Leave either blank and the suite is created without one.

    5. Then read the abstract

      "Lease abstract" is a separate AI run on the suite, and a reading aid rather than an input: nothing in it is written anywhere. It lays the lease out in groups — Parties & Property, Key Dates & Term, Rent Terms, Expense Structure, Security & Guaranty, Options & Flexibility, Key Risk Terms and Retail Provisions — with the quote and page behind each term, and says "not stated" where the document is silent rather than leaving a row blank.

    Never assume this

    The AI transcribes; it does not do arithmetic you can trust. A rent quoted per month and read as annual is a twelve-fold error that looks perfectly normal all the way to IRR.

  7. Add the rent steps

    Deal pageSuitesAdd step

    Effective date
    Rate ($/SF/yr)
    annual, not monthly

    A suite's rent is a list of dated steps, not an escalation rate. Each step sets the rate that applies from its effective date until the next step, and the engine builds the monthly schedule from them, stopping at the suite's lease expiration. The list shows the percentage bump from one step to the next, so a schedule you typed can be checked at a glance.

    Good to know

    Growth beyond the contracted steps is set once for the whole deal rather than per suite: Rent growth (per year) and Expense growth (per year) live in Edit deal → Exit assumptions.

    If it goes wrong

    The engine refuses a schedule whose earliest step postdates the acquisition — the rate for the gap between closing and commencement is genuinely unknown. That suite contributes nothing and is named under Data completeness rather than quietly guessed at.

  8. Add the empty space too

    Deal pageSuitesAdd suite

    Name
    Suite SF
    Vacant
    checkbox — leave the tenant and the dates empty

    A three-tenant strip with one dark unit is four suites, not three. A vacant suite contributes no rent and is not reported as a gap, because its silence is a fact rather than missing data.

    If it goes wrong

    A suite marked occupied with no rent steps is a different thing and is reported separately — "marked occupied but has no rent steps — schedule is unknown, not zero". If the space really is empty, tick Vacant.

  9. Read the header tiles

    Deal page

    The banner shows the purchase price and its price per SF, then four tiles: Going-in cap, Year-1 NOI, Levered IRR and Equity required. All four are computed on read from the rent roll — nothing on this page is stored or cached, so every one of them moves the moment an input does.

    If it goes wrong

    No tiles at all means the cash flow could not be computed. The warning above them names what is missing and opens the form that holds it.

  10. Read the cash flow and the exit

    Deal pageReturnsDeal performance

    Returns gives four figures — Total equity required, Levered IRR, Exit value and Net sale proceeds. Exit value is the forward NOI divided by your exit cap rate; net proceeds take selling costs and the loan payoff out of that. Under it, Deal performance charts the monthly cash flow and marks three milestones: Peak NOI, Worst CF and CapEx. Below the chart every hold year opens into its own months and the arithmetic behind them.

    If it goes wrong

    An empty-looking month is usually a lease that expired earlier than intended — the schedule stops at the expiration date on the suite, so nothing covers the months after it.

The deal page, section by section

In the order the page puts them, which is the order of the work: what the numbers come to, then the rent roll they came from, the costs, the documents, and the judgement last. For each one: what it shows, where its numbers come from, where you change them, and the thing people most often read as a bug when it is not.

Deal header

The banner across the top. The purchase price and its price per SF, then four tiles — Going-in cap, Year-1 NOI, Levered IRR and Equity required — and the AI verdict as a chip once an analysis has been run.

Where it comes from
Nothing is computed here. It displays what the rent roll and cash flow produced.
Where to change it
Edit deal, for anything on it.
When it looks wrong
The tiles are absent, not zeroed, when the cash flow cannot be computed. A listing deal has none of them at all: it is never asked for a purchase price, a loan or an exit, so there is no levered return to show.

Returns

Total equity required, Levered IRR, Exit value and Net sale proceeds.

Where it comes from
Computed on read from the rent roll. Nothing here is stored or cached, so every figure moves the moment an input does.
Where to change it
Nowhere directly — change the rent roll or Edit deal and this follows.
When it looks wrong
Exit value is the forward NOI at your exit cap rate, so it moves with an assumption rather than with anything contracted.

Deal performance

The monthly cash-flow chart, marked with three milestones — Peak NOI, Worst CF and CapEx — and under it every hold year opened into its own months and the arithmetic behind them.

Where it comes from
The rent steps, debt terms, operating expenses, other income and capex.
Where to change it
Nowhere directly. It follows the rent roll and Edit deal.
When it looks wrong
A month producing nothing is usually a lease that expired earlier than intended — the schedule stops at the suite's expiration date.

Data completeness

What the engine could not model, and why. It appears only when there is something to say and is absent otherwise.

Where it comes from
The engine, as it builds each suite's schedule.
Where to change it
Fix the suite it names — usually a missing suite SF, or a suite marked occupied with no rent steps.
When it looks wrong
It is not a health score and there is no count to clear. Silence here means every suite was modelled, not that every field is filled in.

Suites

Every suite, the rent steps behind each one, its documents, and the AI runs attached to it — lease abstract, tenant financials and tenant risk.

Where it comes from
You, and any lease or OM the AI reads. This is the system of record.
Where to change it
Add suite, then open any row to edit it in place.
When it looks wrong
A suite's fields save as you go — text on blur, the lease type and the two checkboxes on change. There is no Save button because there is nothing to press.

Operating expenses

A category and an annual amount per row, added and edited inline.

Where it comes from
You. There is no fixed list of expense lines.
Where to change it
Click any value to edit it.
When it looks wrong
The category name is load-bearing. taxes, insurance and cam are the ones recovered from tenants under a net lease, and reserves is held below the NOI line.

Other income

Income that is not base rent, as a category and an annual amount.

Where it comes from
You.
Where to change it
Click any value to edit it.
When it looks wrong
It is inside NOI, so it moves the cap rate as well as cash flow.

Capital expenditures

A description, an amount, and either the month it lands in or nothing, which spreads it across the hold. An item can be excluded from cash flow and kept on the record.

Where it comes from
You.
Where to change it
Add or delete an item here.
When it looks wrong
CapEx sits below NOI, so it changes the IRR and the cash flow without touching the cap rate.

Documents

Every file on the deal, what kind it is, which suite it applies to, and the AI runs read out of it.

Where it comes from
You. PDF or Word .docx, up to 50 MB each, several at a time. A scanned PDF carries no text, so it is stored and offers to be read by AI rather than extracted.
Where to change it
"Applies to" moves a document between the property and a suite without re-uploading it.
When it looks wrong
A lease is a contract and an OM is a marketing document, and they are read on different terms: lease terms are proposed for you to apply, OM assertions are only ever displayed.

AI analysis

An underwriting memo ending in a verdict, which also surfaces as a chip in the deal header. On a listing deal this section is a Listing Price Opinion instead — a probable selling price range you are the author of, not a buy-or-pass verdict — and the buy-side analysis is not run at all.

Where it comes from
Every other section, plus anything read from your documents. Every figure it reasons from is computed before the model runs.
Where to change it
Generate, or Regenerate once one exists.
When it looks wrong
It reasons from whatever is on file, so read Data completeness first. A stored analysis is labelled "Out of date" once the inputs it was generated from have moved. The price opinion refuses to run at all until you set a market cap rate, and says so before you click rather than after.

Troubleshooting

The symptom you can see, the fix in order, and why it happens. Where the engine cannot model something it says so on the deal page and names the suite — Data completeness is the fastest debugger in the product, and it is silent when there is nothing to report.

Error

"Can't compute cash flow yet" where the returns should be

Fix

  1. Read the sentence in the notice — it names the one thing that is missing, and "Add what's missing" opens the form that holds it
  2. A purchase price and an exit cap rate are both required; the engine divides by the exit cap rate, so it has no default
  3. An acquisition date, a hold period and a building SF are required too
  4. A loan amount with no interest rate and no amortization term is refused — add both, or clear the loan amount to model it as all cash

Why it happens

The cash flow is computed on read, and the engine refuses rather than substituting a value you did not choose. Nothing on the page is stored, so the numbers reappear the moment the missing input is supplied.

Error

A suite earns nothing

Fix

  1. Give the suite a rent step — a suite with no step has no rent, whatever its dates say
  2. Check it has a suite SF; without one the engine cannot model it at all
  3. If the space really is empty, tick Vacant so the silence is a fact rather than a gap

Why it happens

Data completeness names both cases rather than treating either as zero: "no suite SF recorded", and "marked occupied but has no rent steps — schedule is unknown, not zero". Silence is never read as $0.

Error

A rent step is being ignored

Fix

  1. Check the earliest step's effective date against the acquisition date — the engine refuses a schedule whose first step starts after you close
  2. Add a step effective on or before the acquisition date to cover the gap

Why it happens

The rate for the months between closing and a later commencement is genuinely unknown, so the engine declines to invent one. That suite contributes nothing and is named under Data completeness with the reason.

Error

NOI looks low and the last months of a lease are empty

Fix

  1. Check the expiration date on the suite — the schedule stops there, whatever the rent steps say
  2. Extend the term if the tenant renewed
  3. If the space is empty now, tick Vacant so it reads as empty rather than as an expired lease

Why it happens

The monthly schedule is built from the rent steps and cut off at the lease expiration. Months past that expiration produce no rent, and they drag NOI, exit value and IRR down together.

Error

An exit cap rate or selling cost produces an absurd number

Fix

  1. Re-enter as 5.25 — not 0.0525, and not 525

Why it happens

A percentage was entered as a whole number into a field that already means percent, so 5.25% went in as 525%.

Warning

The occupancy in the AI analysis looks wrong

Fix

  1. Correct Building SF in Edit deal, or correct the individual suite square footages
  2. If the gap is genuinely unleased space it is already right — space you have not entered counts as unleased

Why it happens

Occupancy measures the occupied suite SF against the building SF, so a building SF that disagrees with the sum of the suites shows up as vacancy you never entered.

Warning

Projections stay flat across the whole hold

Fix

  1. Set Rent growth (per year) and Expense growth (per year) in Edit deal → Exit assumptions
  2. Zero is legitimate for a deliberately flat case

Why it happens

Both growth assumptions default to nothing, so beyond the contracted rent steps there is nothing telling the projection to move.

Error

NOI is negative and the deal has no suites

Fix

  1. Add the suites — the rent roll is the only income side there is
  2. Expenses are correct to keep; it is the rent side that is missing

Why it happens

NOI is rent minus expenses. With expenses entered and no rent side at all, NOI comes out as the expenses themselves and the going-in cap rate goes negative. Nothing is wrong with what you typed; half of it simply is not there yet.

Warning

The document would not upload

Fix

  1. "must be a PDF or a Word .docx file" — those are the two formats for every document kind. Legacy .doc is not accepted: it is a different binary format whose text cannot be read, and storing a document nobody can read is the failure the check exists to prevent. The one other exception is the property photo, which takes a JPEG, PNG or WebP and nothing else
  2. A message naming your file and its size against "The limit is 50 MB" — size is a hard limit, and the message names the file rather than failing generically
  3. A file reported as empty is refused before anything is written
  4. Several files at once is fine — the picker is multi-select, so a base lease and its amendments go up together. Every file in the set is checked before any of them is written, so one unacceptable file refuses the whole set rather than filing half of it

Why it happens

The same rules run whether the bytes go straight to storage or through the server, because both paths call the same policy. A document that arrives with nothing readable in it is worse than one that was refused with a reason.

Warning

The OM's price and cap rate did not come through

Fix

  1. That is deliberate — they are never written
  2. Read them on the OM assertions panel instead, against the variance check underneath it

Why it happens

Price, cap rate, stated NOI and pro-forma figures are the seller's assertions. Writing them in would make your model agree with the broker by construction, and the variance check exists precisely to test them against what your rent roll actually produces.

Glossary

Commercial real estate terms as DealWise AI computes them. Where the product's definition is narrower than the industry's — recoverable OpEx is the one that bites, since only three expense categories count — the entry says so, because following the textbook here produces a wrong number.

T-12
A trailing twelve months operating statement — the property's own accounting export of what it actually earned and spent, month by month, for the last year. Not the broker's OM: a T-12 is a record, an OM is a pitch.
NOI
Net operating income. Gross rent minus the full building operating expense — not net rent. Always derived from the rent roll, never typed in.
Cap rate
NOI divided by price. The header tile is the going-in cap rate: year-1 NOI over the purchase price you entered.
DSCR
NOI over annual debt service. Below 1.0x the property does not cover its debt; lenders typically want 1.20x to 1.25x to refinance. It is computed for every hold year and reaches you through the AI analysis, which reasons from it.
EGI
Effective gross income — base rent, plus what tenants reimburse, plus other income. Operating expenses come out of it to reach NOI.
NNNNot on Multifamily
Triple net. The tenant reimburses the recoverable operating expenses, so the landlord keeps management and its own costs.
Gross / Modified GrossNot on Multifamily
Under a gross lease the landlord carries the operating expenses. Modified gross splits them, usually with the tenant paying increases over a base.
Landlord Reserves
The owner's annual set-aside for future repairs and capital items. Enter it as an operating expense named reserves and it is held below the NOI line — which is why it lowers cash flow and leaves the cap rate untouched.
Recoverable OpEx
The share of operating expenses tenants reimburse, which depends on each lease type. Three expense categories are treated as recoverable: taxes, insurance and cam.
Rent schedule
The monthly rent rows the engine builds from a suite's dated rent steps, cut off at the lease expiration. Cash flow reads these rather than the lease itself.
Expense stop / Base yearOffice and Industrial only
Structures where the landlord carries expenses up to a threshold and the tenant pays the excess. The lease abstract transcribes whichever one a lease states.
BreakpointRetail only
The sales level above which a retail tenant starts paying percentage rent. Natural or artificial.
Co-tenancyRetail only
A retail clause reducing or suspending rent if anchor tenants leave. Ticking Anchor tenant on a suite is what makes the co-tenancy stress scenario computable, and it needs that anchor to have rent on file to mean anything.
Listing (sell-side) deal
Records that you represent the owner and are preparing the property for market, rather than deciding whether to buy. You choose it when the deal is created — "I'm listing a property" rather than "I'm evaluating a purchase" — and it decides which half of the deal form is real. A listing is never asked for a purchase price, a loan or exit assumptions. The AI Deal Analysis is withheld, because it is written for a buyer and ends in negotiation recommendations aimed at the seller, so it is not shown and not run. In its place you get a Listing Price Opinion, and a Market cap rate field that does not exist on an acquisition. The rent roll is still the system of record either way.
Market Cap Rate
YOUR rate for this asset class in this submarket, entered by you — not researched by the app. It sits under Edit deal → The market, on a listing deal only, and the price opinion divides the NOI by it to produce the range. Until it is set the opinion refuses to run and tells you so up front, because the alternative is the app researching a rate, and a tested AI-sourced rate moved the value by roughly a million dollars on identical inputs. It is not the exit cap rate, which is a buyer's assumption about a future sale and lives under Exit assumptions.

The rent roll is the system of record. Everything else is derived.

DealWise AI reads your OM and your executed leases, builds the rent schedule behind every suite, projects cash flow across the hold, and ends in a clear buy, hold or pass. Free to start.

DealWise AI User Guides | Build a Deal, Troubleshoot, Glossary