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.
On this page
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
"Can't compute cash flow yet" where the returns should be
Fix
- 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
- A purchase price and an exit cap rate are both required; the engine divides by the exit cap rate, so it has no default
- An acquisition date, a hold period and a building SF are required too
- 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.
A suite earns nothing
Fix
- Give the suite a rent step — a suite with no step has no rent, whatever its dates say
- Check it has a suite SF; without one the engine cannot model it at all
- 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.
A rent step is being ignored
Fix
- Check the earliest step's effective date against the acquisition date — the engine refuses a schedule whose first step starts after you close
- 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.
NOI looks low and the last months of a lease are empty
Fix
- Check the expiration date on the suite — the schedule stops there, whatever the rent steps say
- Extend the term if the tenant renewed
- 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.
An exit cap rate or selling cost produces an absurd number
Fix
- 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%.
The occupancy in the AI analysis looks wrong
Fix
- Correct Building SF in Edit deal, or correct the individual suite square footages
- 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.
Projections stay flat across the whole hold
Fix
- Set Rent growth (per year) and Expense growth (per year) in Edit deal → Exit assumptions
- 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.
NOI is negative and the deal has no suites
Fix
- Add the suites — the rent roll is the only income side there is
- 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.
The document would not upload
Fix
- "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
- 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
- A file reported as empty is refused before anything is written
- 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.
The OM's price and cap rate did not come through
Fix
- That is deliberate — they are never written
- 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.
Keep reading
How to underwrite a CRE deal
The underwriting process these steps automate, from first screen to investment decision.
What is a rent roll?
The system of record every number in the product is derived from.
What is NOI?
Why net operating income is derived here and never typed in.
Free CRE calculators
Cap rate, DSCR, debt service and six more — the same engine, no signup.
Resources
Every guide, comparison and calculator on the site in one place.
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.