Methodology: how AcreMath calculates land deals
Not legal or tax advice. Verify all figures with the county assessor and treasurer.
AcreMath works the same way in every US state and DC. Every number is labeled with where it came from: user-entered (U), estimate/default (E), sourced from a data provider (S), or verified against the county record (V), with the date. Results are estimates, not an appraisal, and not legal, tax or investment advice.
Notation
V = market value of the parcel · P = purchase price · CC_b / CC_s = buyer / seller closing costs · s% = selling costs (commission + marketing) · H = holding cost per month · t = months held · I = improvements and due diligence · F = financing costs · L = loan principal funded by a lender or seller carry.
Returns, IRR and rounding conventions
Cash invested = P + CC_b + I + holding paid in cash + financing paid in cash − L
ROI = Profit / Cash invested ("n/a — no cash invested" if cash ≤ $0)
Return on cost = Profit / (P + CC_b + I + H·t + F) (unlevered; equals ROI for all-cash deals)
Annualized ROI = (1 + ROI)^(12/t) − 1 (n/a if t ≤ 0 or ROI ≤ −100%; t < 3 flagged "short hold")
IRR monthly flows, month 0 = purchase closing, later flows at month end
solve r_m with NPV = 0; effective annual = (1 + r_m)^12 − 1; nominal = 12 × r_m (tooltip only)
flows must change sign exactly once, otherwise "not meaningful" and NPV at 10% is shownRounding: amortization schedules work in whole cents; everything else runs unrounded. Display is half away from zero: currency in whole dollars (cents for amortization and per-payment figures), percentages to one decimal, acres to two decimals, months and scores as integers. Totals are computed from unrounded values, so displayed parts may differ by $1. Target verdicts compare the value as displayed, so an IRR shown as 20.0% meets a 20% target. Periods are whole months. Engine version 2.0.0.
Comps valuation
You enter comparable sales (price, acres, sale date, distance, status, source) and adjustments as a percent of each comp's $/acre: positive when the comp is inferior to your parcel, negative when it is superior.
Adjusted $/acre_i = (Price_i / Acres_i) × (1 + Σ adjustments_i)
Weight_i = 1 / (1 + Σ |adjustments_i|)
Value $/acre = weighted mean = Σ Weight_i × Adjusted_i / Σ Weight_i
Market value = Value $/acre × subject acres
Range = lowest, median and highest adjusted $/acre (shown per acre, and × subject acres)
Adjustments are additive by design: +10% and −5% net to +5% (not 1.10 × 0.95).
Size curve ln($/acre) = a + b·ln(acres), least squares over comps → $/acre = e^a × acres^bThe size curve is a cross-check on the comps value (larger parcels usually sell for less per acre, b < 0); it needs at least two comps with different acreage. Comps can be pasted from a CSV or TSV export with a header row containing price and acres columns; $/acre columns are ignored and rows without a price or acres are skipped.
Confidence: High with at least 6 sold comps within 10 miles and 12 months, each with gross adjustments under 25%; Medium with at least 3 such comps; otherwise Low. In states where sale prices are not public record, confidence is capped at Medium and the report states how comps were obtained.
When you click "Use as market value", the comps value becomes V for every strategy, labeled with the number of comps and the confidence.
Flip and max allowable offer
H = annual property tax / 12 + other monthly holding costs
Total cost = P + CC_b + I + H·t + F
Net sale = V × (1 − s%) − CC_s
Profit = Net sale − Total cost
Cash inv. = P + CC_b + I + H·t paid in cash + F paid in cash − L
ROI = Profit / Cash inv.; Return on cost = Profit / Total cost
Annualized = (1 + ROI)^(12/t) − 1
Flows m0 = −(P + CC_b + I + F paid − L); m1..t = −holding paid / t; m_t += Net sale − L − unpaid costs
Break-even = (Total cost + CC_s) / (1 − s%)
MAO (profit) = V(1 − s%) − CC_s − CC_b − I − H·t − F − target profit
MAO (margin) = same, with target profit = margin% × V
MAO (ROI) = (Net sale − (CC_b + I + H·t + F) − ROI × (CC_b + I + cash-paid H·t + cash-paid F − L)) / (1 + ROI)
(all cash: Net sale / (1 + target ROI) − (CC_b + I + H·t + F))
Financing L = LTV × P (interest-only); interest L × rate / 12 is added to H; points × L are added to F;
L is repaid from sale proceeds. MAO sizes the loan on the offer itself (L = LTV × MAO):
with k = LTV × (rate × t/12 + points) and A = Net sale − (CC_b + I + H·t + F) (H, F without loan costs)
MAO (profit) = (A − target profit) / (1 + k)
MAO (ROI) = (A − ROI × (CC_b + I + H·t + F)) / ((1 + k) + ROI × (1 + k − LTV))
so buying at the MAO hits the target exactly (round trip), with or without a loan.Wholesale and double close
Assignment fee = End-buyer price − Contract price
Wholesaler net = Fee − marketing − earnest money × P(default)
Max contract price = End-buyer price (or end-buyer MAO) − target fee
ROI = Net / (earnest money + marketing) (cash at risk)
Double close = Price_C − Price_B − CC_AB − CC_BC − (TF rate × Price_B + TF fees)
Return on cost = Double-close profit / (Price_B + CC_AB + CC_BC + TF)Wholesaling and assignment rules vary by state; check local requirements.
Seller finance (notes)
Loan L = Sale price − Down payment; r = annual rate / 12
Payment = L·r / (1 − (1 + r)^−n), rounded half-up to the cent (L / n if r = 0)
Interest_k = Balance_(k−1) × r rounded to the cent; Principal_k = Payment − Interest_k
Final payment absorbs the rounding residual so the balance ends at exactly $0.00
Balloon (N) = schedule balance after the month-N payment; shown as its own line in month N
(no balloon if N ≥ n); payments in arrears, first one month after closing
Cash flows CF_0 = −cost basis + down + doc fee − CC_s; CF_k = Payment − servicing; CF_N += Balloon
Note IRR = (1 + r_m)^12 − 1 (effective) where Σ CF_k / (1 + r_m)^k = 0
not meaningful when CF_0 ≥ 0 (down payment and fees already cover the basis)
Payback month = first month cumulative cash flow ≥ 0
Note value = Σ remaining CF_k / (1 + yield/12)^(k − seasoning)Subdivide
Gross sellout = Σ lot prices
Net sellout = Gross sellout × (1 − s%) − Σ CC_s per lot
Sell-out months = entitlement + construction + ⌈lots / lots sold per month⌉
Total cost = P + CC_b + development costs + H × sell-out months + F
Profit = Net sellout − Total cost; Margin = Profit / Gross sellout
ROI = Profit / (Total cost − L); Return on cost = Profit / Total cost
IRR monthly: development over entitlement + construction months, carry monthly,
lots close at the absorption pace after construction (lots and pace must be > 0)
Residual land = Net sellout − non-land costs − target profitPlatting and minor-partition rules differ by state and county; check local requirements.
Hold
Future value = V × (1 + appreciation)^years
Cash flows at months 12, 24, …: CF_0 = −(P + CC_b − L); CF_y = income − carry; final year += FV × (1 − s%) − CC_s − L
Hold IRR = effective annual IRR of those flows (same as a standard annual IRR)
ROI = Net gain / (P + CC_b − L + carry × years); Return on cost = Net gain / (P + CC_b + carry × years)
NPV = Σ CF_y / (1 + d)^y at the annual discount rate d (annual flows), shown when IRR is not meaningful
Cash-on-cash = annual pre-tax cash flow / cash invested (n/a with no cash invested)Targets and verdicts
At least T: On if v ≥ T; Near if T − band ≤ v < T; Off if v < T − band
At most T: On if v ≤ T; Near if T < v ≤ T + band; Off if v > T + band
Missing input → Not evaluated (e.g. ROI when no cash is invested; profit and IRR still apply)
Overall: On if every counted rule is On; Off if any is Off; Near if none is Off and at least one is Near or not evaluated; Unknown when market value is blankv is the value as displayed (rounded half away from zero), so a verdict never contradicts what you see. Bands are percentage points or a share of T; months round up to whole months, and the sold-comps band never goes below 1 comp. Starter targets (price ≤ 50% of value, net profit ≥ $10,000, IRR ≥ 25%, sold comps ≥ 3) are editable defaults, not advice. When IRR is not meaningful, the NPV shown uses your discount rate (default 10%, editable per deal).
Reports
PDF reports are built in your browser from the same engine results you see on screen (engine version shown in the report). Every page shows the report ID, generation time and an export watermark with the account, export ID and date; trial exports are marked "Trial". Reports are locked on the Free plan. Body text is Inter and the cover title is Instrument Serif (both SIL Open Font License). An optional logo you upload is kept only in this browser.
Sensitivity
Heatmaps rerun the same engine with the purchase price and market value moved ±10% and ±20%, and with the hold shortened or extended (months; years for the Hold strategy). Every cell prints its value; color is only a guide (green better, clay worse; for profit, relative to $0). The current case is outlined. Flip break-even shows the resale value, and the purchase price, at which net profit is $0.
Risk checklist
18 due-diligence items, five of them critical (title, legal access, back taxes and liens, flood zone, wetlands). Each item is weighted; Pass counts 0, Warn ½, Fail 1 and Not checked ½, N/A is excluded, giving a 0–100 risk score (0–19 Low, 20–44 Moderate, 45+ High). The Target "Risk checklist: no Fail items" is Off if any item fails and Near if a critical item is Warn or not checked.
Scenarios
Every deal has Base, Conservative and Aggressive results. Base is the deal as entered. By default Conservative lowers market value (and end-buyer and seller-finance sale prices) 15%, stretches time 50%, adds 2 points of selling cost, raises holding costs (including property tax) and development costs 20%, lowers lot price and absorption 15% and appreciation 2 points; Aggressive raises value 10%, shortens time 25%, trims selling cost 1 point, raises lot price and absorption 10% and appreciation 1 point. You can change these per deal. The purchase price is never shifted.
Paste-a-listing import
Pasted listing text is read in your browser by fixed rules (price, acres or square feet, state, county matched to the Census county list, APN) and shown with a confidence and the matched words. Nothing is sent anywhere, nothing is guessed when missing, and you review every field before the deal is created.
Property tax
Every parcel in every state uses one model. States are handled in one of two first-class ways, and every result shows which applies, with its sources and dates:
- Generic national rules (as of 2026-10-12) for any state without a state module: tax is computed from the values and rates you enter or import from the county; the assessment ratio is 100% unless you enter one; no state-specific delinquency penalties or special-use rollback are applied.
- State modules add a state's own assessment ratio, delinquency penalty and interest schedule, and special-use (agricultural/timber) rollback rules, each with statute sources and dates.
State modules are researched from statutes (every rule cites its source) and then reviewed by Attorney Bot, an AI legal reviewer (not a licensed attorney). A module is applied only after Attorney Bot approves it and no unverified citation affects the critical math (assessment, penalty and interest, rollback, redemption); applied modules are labeled “<State> state module · reviewed by Attorney Bot (AI) on <date> · not legal or tax advice”. The released modules (TN, AZ, NC, MO, FL, TX) use that label. Until a module is approved it is not applied: the state uses the generic national rules and the result says so. See state pages. County records are keyed to the Census Bureau's 2020 county FIPS list (3,143 counties and equivalents in the 50 states and DC).
Base value = special-use value × ratio, if the parcel has special-use valuation
= assessed value, if known
= market value × assessment ratio, otherwise
Taxable_j = max(0, Base − % exemptions × Base − $ exemptions) for each taxing unit j
Annual tax = Σ Taxable_j × rate_j (rates in $ per $100, mills, or % are normalized)
Effective rate = Annual tax / market value
Delinquent payoff = Base due × (1 + penalty(m) + interest(m)) × (1 + collection fee, if referred)Annual tax / 12 is added to the monthly holding cost used by every strategy. When provider and county values differ by more than 5%, the app flags the provider data as possibly stale.
FAQ
How does AcreMath estimate market value?
From your comparable sales: each comp's $/acre is adjusted by the sum of your percentage adjustments, then a weighted mean is taken with weight 1 / (1 + gross adjustment), and multiplied by your acreage.
How is the max allowable offer (MAO) calculated?
Net sale proceeds minus closing, holding, improvement and financing costs minus your target profit (or the price that hits your target ROI). With a loan, the loan is sized as LTV times the offer itself, so buying at the MAO hits the target exactly.
What IRR does AcreMath show?
The effective annual IRR of the deal's monthly cash flows (annual flows for Hold). When IRR is not meaningful, the NPV at your discount rate is shown instead.
Is this legal or tax advice?
No. Not legal or tax advice. Verify all figures with the county assessor and treasurer.