Deal Screener

Paste a CSV of LoopNet links and whatever numbers you have next to them. Every row is run through the full underwriting model — sized debt, an LP/GP waterfall, an exit — and scored on a 100-point rubric. Rows are ranked best first, and every input is tagged so you can see what came from the listing and what the model assumed.

Listings

A url column is enough to identify a row, but a price is required to underwrite one.

Recognized columns (any common alias works): url, name, type, address, city, state, price, units, sf, rent per unit, rent psf, annual rent, noi, cap rate, occupancy, walt, notes. Numbers can be written as $1,250,000, 1.25M or 6.25%.

Run Assumptions

Applied to every row

How this works The screener reads listing URLs, it does not fetch them. LoopNet’s terms prohibit scraping and the site is behind bot protection, so a scraper would be both a compliance problem and unreliable. What the URL already encodes — asset type, address, market, listing id — is parsed from the link; the numbers come from the columns beside it or from listing text pasted into a notes column. Anything still missing is filled with class defaults and flagged as an assumption.