How the analysis works
How the analyzer turns your numbers into a result, and where it stops.
What it is, and what it isn't
- It describes what your numbers do under fixed rules. The report gives the deal a rule-based label and its reasons. That is not financial or investment advice: the rules don't know you or your situation.
- For now, it has no market data: no listings, rents or comparable sales. Every number comes from you or the sample.
- It doesn't model income tax or sale costs, and it isn't an appraisal.
- It runs on our servers, not on your computer. No account and no sign-in: a purchase is linked to this browser, and Stripe asks for an email address to confirm the payment. This service runs on servers we operate through hosting providers. What you type is sent there to be analyzed, and we don't save it. This browser keeps what you type in the form, so a reload does not lose it, and any deal you choose to save. If you buy a report, a cookie links this browser to your purchase, and the PDF is kept privately for 24 hours so you can download it. Payments are handled by Stripe. Card details go to Stripe, not to us.
The guardrails
Every deal is checked against up to six guardrails. Each is a fixed test with a bar, and reaching the bar exactly counts as met.
| Guardrail | Bar |
|---|---|
| DSCR (Y1)How many times year 1's net operating income covers that year's mortgage payments. Below 1.00, the property's operations do not cover its mortgage.Where 1.20 appears in public: in CMHC's Standard Rental Housing information sheet (2025), as the minimum debt coverage for buildings of 7 or more units on a term of 10 years or more, and for refinancing 5–6 unit buildings. For buying a 5–6 unit building, CMHC uses 1.10. CMHC's standard covers only buildings of 5 or more units. It does not cover 2- and 4-unit buildings like the samples here. The bar here is this project's. A lender computes coverage on its own figures, not on your projection, so meeting 1.20 here doesn't mean a lender would agree. | Bar1.20 |
| Cap-rate spreadThe purchase cap rate less the loan's interest rate. A small spread means the property's yield sits close to the cost of its debt.1.50% unless your deal file sets its own target.Where this appears in public: the idea that a property should earn more than its debt costs is the standard "positive leverage" test (explained in Wall Street Prep, Positive Leverage, 2024). The 1.5% figure doesn't appear in any published standard we found. It's this project's choice. It is measured against the interest rate, not the full loan payment, so meeting it doesn't show the property out-earns its mortgage. | Bar1.50% |
| Projected IRR (10y)The single yearly rate the projected cash flows work out to over the projection, counting the cash put in at the start, each year's cash flow, any refinance proceeds, and the modeled equity at the end. It accounts for when money arrives; the equity multiple does not.Where 12% appears in public: not as a standard. We found no published required IRR for a rental property. It's this project's choice. | Bar12.00% |
| Cash-on-cash (Y1)Year 1's cash flow as a percentage of the acquisition cash outlay. Unlike the cap rate, it is after mortgage payments.Where 3% appears in public: not as a standard. It's this project's choice. The definition of cash-on-cash used here matches J.P. Morgan's (Cash-on-Cash Return in Real Estate, 2024), which says there's no universal target. 3% is a low floor, not a return target. For comparison, the 10-year Government of Canada bond yield was 3.94% on 10 September 2026 (Bank of Canada). | Bar3.00% |
| Year-1 cash flowWhat is left in year 1 after operating costs and mortgage payments. Its bar is zero.Where this appears in public: not as a standard. We found no lender or published source that requires it. It's this project's choice. | Bar$0 |
| Purchase cap rateYear 1's net operating income as a percentage of the purchase price, unless the deal's inputs supply a cap rate directly. Its bar is the floor set in the deal's inputs.No default. The floor is set in your deal file, if you set one. Without it, this guardrail isn't checked.Where this appears in public: no single floor does. There is no default: you set it in your file, because cap rates vary widely by city and year. Cushman & Wakefield's Q4 2022 Canadian Cap Rate Survey shows how wide the range is (older figures, used only as an illustration). | BarNo default. Set in your deal file. |
Four bars are set by the analyzer. The spread target (1.50% unless your deal file sets its own) and the cap-rate floor come from your deal file.
Where these numbers appear in public
Every bar here is this project's, and no source below endorses this tool. One bar's number, 1.20 debt coverage, also appears in a published lending standard: CMHC's. That standard covers buildings of 5 or more units, and uses 1.10 for buying a 5–6 unit building. The samples here are 2- and 4-unit buildings. One bar uses a standard idea with a number chosen here. Three are this project's choices. One you set yourself. Each row in the table above says which.
- Verdict
- The label a fixed rule gives the deal. BUY when every guardrail is met. DECLINE when three or more are not met, or when debt coverage and the purchase cap-rate floor are both not met. CONDITIONAL otherwise. It is the output of a rule, not a recommendation.
What would have to change?
When one to three guardrails aren't met, the analyzer searches for changes to the purchase price, interest rate, rent and operating costs that would meet them. It tries each input on its own, then combinations of two, three and four, and confirms every answer by running the model again. Combinations are listed in the order they were searched, not ranked.
An answer that needs an unrealistically large change is flagged with the reason, not hidden. If nothing within the ranges checked works, it says so. If every guardrail is met, or four or more aren't, it doesn't search, and says so. Each answer is the smallest change found, not a recommended offer: only you know which of these is open to you.
Room for error
For each guardrail that is met, the analyzer measures how far one assumption (occupancy, rent growth or operating-cost growth) can move the wrong way before that guardrail is no longer met. It moves one assumption at a time and holds everything else as entered. A guardrail that isn't met has no room to measure, and it's named rather than left out.
What your deal file needs
Your deal file is a plain-text .json file. It holds the purchase price and financing, each unit's rent, occupancy, the yearly operating costs line by line, an optional refinance plan, and the spread target and cap-rate floor. The example file has every field filled in, so start from it.
Rates and shares are decimals: 6.8% is 0.068, 95% is 0.95.
Only the numbers are read. A listing description or photos aren't used for your own deal.