← Back to App Docs

DealGuard — Owner’s Guide & User Manual

Welcome! This short guide shows you how to get value from the DealGuard web app—whether you’re just exploring or uploading your own data to power predictions.

What DealGuard does (in plain English)

Quick start (no data required)

  1. Open your site and the DealGuard page.
  2. In Deal Inputs, type your price, NOI, down %, rate, amortization years, and reserves/capex.
  3. In Event & Pricing Context, set:
    • Competitor ADR: your local comp-set average.
    • WVU flags (e.g., Game Day) when relevant.
    • Load/Seasonal/Tourism sliders (defaults are fine to start).
  4. Review Results (LTV, DSCR, MPP) and the Scenario Table (Down% × Rate%).
  5. Scroll to 60-Day Event Heatmap to see daily Occ%, ADR, RevPAR—event days are highlighted to spot pricing opportunities.

Tip: Changing inputs updates tables. On slow networks you might see “Building 60-day forecast…” while dates populate.

Deeper use: Train with your hotel’s data (CSV)

What to prepare

Create a CSV (export from PMS/BI) with at least these columns:

ColumnTypeExampleWhy it matters
timestampISO date or YYYY-MM-DD2025-10-11T12:00:00The day we’re predicting.
occupancy0–1 (or %)0.78Actual occupancy (target for training).
competitor_adrnumber115Market anchor for pricing.
wvu_load_factor0–10.95Expected campus inflow pressure.
seasonal_multiplier~0.8–1.21.08Seasonality lift.
tourism_trend~0.95–1.101.03Broader travel trend.
is_game_daytrue/falsetrueBig event signal.
is_move_intrue/falsefalseSemester start signal.
is_graduationtrue/falsefalseGraduation weekend.
is_conferencetrue/falsefalseConferences.
occ_lag_1h0–10.72Recent pickup proxy.
occ_lag_24h0–10.66Daily lag.
occ_lag_7d0–10.61Weekly lag.
occ_lag_30d0–10.55Monthly lag.

Minimal viable dataset: timestamp, occupancy, and a few drivers (e.g., competitor_adr, wvu_load_factor, is_game_day). More varied rows improve learning.

CSV snippet

timestamp,occupancy,competitor_adr,wvu_load_factor,seasonal_multiplier,tourism_trend,is_game_day,is_move_in,is_graduation,is_conference,occ_lag_1h,occ_lag_24h,occ_lag_7d,occ_lag_30d
2025-10-10,0.82,115,0.60,1.02,1.01,false,false,false,false,0.70,0.64,0.58,0.55
2025-10-11,0.98,130,0.95,1.08,1.03,true,false,false,false,0.85,0.78,0.65,0.60
2025-10-12,0.68,112,0.50,1.01,1.00,false,false,false,false,0.66,0.62,0.57,0.54

Upload & train

  1. Scroll to ML Admin — Train RandomForest.
  2. Click Choose File and select your CSV.
  3. After training, you’ll see:
    • Rows: how many lines were used.
    • MAE (mean absolute error): average miss from true occupancy (smaller is better).
    • RMSE (root mean square error): penalizes larger misses (smaller is better).

Interpreting: MAE 0.05 ≈ average error of 5 occupancy points (±5%). Datasets with big event spikes often show higher errors but still yield strong pricing signals.

How predictions use your data

Screen-by-screen tour

1) Deal Inputs

Purchase Price, Down %, Rate, Amort Years → loan math. Closing %, CapEx, Reserves → up-front cash.

2) Results (Guardrails)

Equity Required (cash at close), LTV, DSCR, PASS/FAIL chips, and MPP (Max Purchase Price) bounded by equity & DSCR.

3) Scenario Table (Down% × Rate%)

“What if rates go up or I put more down?” Each cell shows DSCR and MPP at that combo. Green cells ⇒ the deal still “works.”

4) Event & Pricing Context

Competitor ADR, WVU flags (Game Day / Move-in / Graduation / Conference), and multipliers (Load / Seasonal / Tourism).

5) ML Admin — Train RandomForest

Upload your CSV and review Rows / MAE / RMSE. Re-train as you add fresh months.

6) Next-Hour Blend (/ml/ensemble)

Enter recent lags and click Compute to get Blended Occupancy, Recommended ADR, and RevPAR for the next hour window.

7) 60-Day Event Heatmap

One row per day: Event column shows WVU weekends (green highlight), weekends (light gray). Occ%, ADR, RevPAR help plan staffing & price.

Tip: On event days, consider higher ADR with a firm floor and longer minimum stays. On shoulder nights, use fenced discounts.

How to use it day-to-day

FAQs

The 60-day table is empty or slow to fill. It loads 60 dates; on slow connections you’ll see “Building 60-day forecast…” briefly. If it stays blank, refresh. If your internet is fine and it persists, ask your admin to check the server.

Recommended ADR seems low/high. Check Competitor ADR and WVU flags for that date. If it’s a game day but the flag is off (or load factor is too low), ADR will be conservative.

What’s a “good” MAE/RMSE? No universal number. Track your metric over time; a declining MAE/RMSE after retraining is a good sign.

How do event days get into the 60-day table? From the WVU event calendar in the app. If dates are missing, ask your admin to add them so they appear and lift demand.

Glossary (hotel & lending terms)

Occupancy: Rooms Sold ÷ Rooms Available (e.g., 80/100 ⇒ 80%).

ADR (Average Daily Rate): Room Revenue ÷ Rooms Sold (e.g., $9,600/80 ⇒ $120).

RevPAR: ADR × Occupancy (e.g., $120 × 80% ⇒ $96).

NOI: Operating Revenue − Operating Expenses (before interest/taxes/depr/amort).

LTV: Loan ÷ Property Value (e.g., cap at 75%).

DSCR: NOI ÷ Annual Debt Service (1.25× means NOI covers payments by 25%).

ADS: Annual (principal+interest) payments.

Amortization: Years to pay down principal (e.g., 25).

CapEx: One-time improvements (renovations, roofs).

OpEx: Day-to-day costs (payroll, utilities).

Reserves: Cash set aside (e.g., 3 months OpEx).

MPP: Max Purchase Price that still satisfies equity & DSCR constraints.

Signals used by the app: Competitor ADR (comp-set anchor), WVU Load Factor (0–1), Seasonal Multiplier, Tourism Trend, event flags (is_game_day, is_move_in, is_graduation, is_conference), and short-term Occ Lags (1h/24h/7d/30d).

Best practices

Friendly reminder

DealGuard provides decision support, not guarantees. Use your local knowledge (group demand, renovations, weather, citywide events) alongside the app’s signals to set confident, profitable rates.