Financial health score
One number for how your hotel's finances are actually doing.
Avenlyr scores five categories from your own revenue, expense, bill and cash records — and tells you how much of the score is backed by real data instead of guesswork. Below is an illustrative report so you can see exactly what you get.
Needs Attention
Needs Attention
Experimental indicator · Model v0.1- Data coverage
- 90%
- Confidence
- High
- Automated checks
- 16
Experimental Financial Health Indicator. Decision support only — not a credit score, audit, valuation, or accounting, tax, legal, lending or investment advice, and not a guarantee of future performance. Scoring Model v0.1 — pending hotel-finance validation.
Categories
Cash and Liquidity
9 / 30 pts · 4 of 4 checks assessed
At RiskWhether cash stays above your safety level over the next 13 weeks.
Profitability and Cost Control
21 / 25 pts · 3 of 3 checks assessed
AttentionOperating profit and whether spending is growing faster than revenue.
Revenue Performance
10 / 20 pts · 3 of 3 checks assessed
AttentionRevPAR, occupancy and revenue compared with your recent baseline.
Budgeting and Forecast Discipline
5 / 15 pts · 1 of 3 checks assessed
PassWhether targets, forecasts and upcoming obligations are documented.
Data Quality and Financial Controls
10 / 10 pts · 3 of 3 checks assessed
PassHow fresh, complete and clean the imported financial records are.
Key metrics from your data
- Current cash
- $412,000
- Lowest expected cash (13 wks)
- $214,000
- Cash safety level
- $250,000
- Revenue (period)
- $401,884
- Total expenses (period)
- $220,329
- Operating profit (period)
- $181,555
- Payroll expense (period)
- $122,064
- Occupancy
- 71.7%
- RevPAR
- $140
- ADR
- $195
- Data freshness
- 27 days old
Latest imported balance
Week of November 9
Your setting
2026-08-04 → 2026-08-31
Through 2026-08-31
Top financial risks
Ranked by severity, time urgency, estimated impact and data confidence.
1.Lowest expected cash balance
High$36,000Measured: $214,000Baseline / target: 1.25× safety levelProperty: Harborview Inn (sample)Period: 2026-08-04 → 2026-08-31Confidence: MediumEvidence: min(weekly expected balance) ÷ cash safety level — source: Cash Survival 13-week forecast (cash_balances, daily_performance, expenses, payables)Next step: Open Cash Survival, review the bills landing in the breach week and test a scenario before moving any payment.
2.Weekly cash trend
High$176,000Measured: -42.7%Baseline / target: Flat or improvingProperty: Harborview Inn (sample)Period: 2026-08-04 → 2026-08-31Confidence: MediumEvidence: (week 13 expected balance − current cash) ÷ current cash — source: Cash Survival 13-week forecast (cash_balances, daily_performance, expenses, payables)Next step: Review the largest weekly outflows in Cash Survival and confirm expected receipts are realistic.
3.Total revenue trend
Medium$30,492Measured: $401,884Baseline / target: $432,376Property: Harborview Inn (sample)Period: 2026-08-04 → 2026-08-31Confidence: MediumEvidence: (previous period revenue − current period revenue) ÷ previous period revenue — source: daily_performance.total_revenueNext step: Check rate and channel mix for the period, then confirm the source records are complete.
4.RevPAR vs baseline
Medium$24,992Measured: $140Baseline / target: $151Property: Harborview Inn (sample)Period: 2026-08-04 → 2026-08-31Confidence: MediumEvidence: RevPAR = room revenue ÷ available room nights — source: daily_performance.room_revenue, rooms_available (or property room count)Next step: Check rate and channel mix for the period, then confirm the source records are complete.
5.Expense growth vs revenue growth
Medium$13,360Measured: +6.0 ptsBaseline / target: Under 5 ptsProperty: Harborview Inn (sample)Period: 2026-08-04 → 2026-08-31Confidence: MediumEvidence: expense growth % − revenue growth % (period vs previous period of equal length) — source: expenses.amount, daily_performance.total_revenueNext step: Compare the categories that grew fastest against the revenue they support.
Scoring matrix and data sources
Every check, its formula, its source and whether it could be assessed. Model v0.1.
| Check | Formula | Source | Baseline | Measured | Result | Points |
|---|---|---|---|---|---|---|
13-week cash safety | Weekly cash roll-forward: opening + expected receipts − expected payments; compared with your cash safety level | Cash Survival 13-week forecast (cash_balances, daily_performance, expenses, payables) | Your selected cash safety level ($250,000) | First expected breach: Week of November 9 | Attention | 6 / 12 |
Lowest expected cash balance | min(weekly expected balance) ÷ cash safety level | Cash Survival 13-week forecast (cash_balances, daily_performance, expenses, payables) | Your selected cash safety level | $214,000 | At Risk | 0 / 8 |
Operating-outflow coverage (runway) | current cash ÷ average weekly net outflow (weeks) | Cash Survival 13-week forecast (cash_balances, daily_performance, expenses, payables) | 13 weeks of coverage | 9.4 weeks | Attention | 3 / 6 |
Weekly cash trend | (week 13 expected balance − current cash) ÷ current cash | Cash Survival 13-week forecast (cash_balances, daily_performance, expenses, payables) | Today's cash position | -42.7% | At Risk | 0 / 4 |
Operating profit margin | (total revenue − total operating expenses) ÷ total revenue, over the reporting period | daily_performance.total_revenue, expenses.amount | Recent historical baseline (15% target margin, Model v0.1) | 45.2% | Pass | 10 / 10 |
Expense growth vs revenue growth | expense growth % − revenue growth % (period vs previous period of equal length) | expenses.amount, daily_performance.total_revenue | Previous 28-day period | +6.0 pts | Attention | 4 / 8 |
Payroll share of revenue | payroll expense ÷ total revenue, compared with the previous period | expenses where is_payroll = true, daily_performance.total_revenue | Previous 28-day period | 30.4% | Pass | 7 / 7 |
RevPAR vs baseline | RevPAR = room revenue ÷ available room nights | daily_performance.room_revenue, rooms_available (or property room count) | Previous 28-day period | $140 | Attention | 4 / 8 |
Occupancy vs baseline | Occupancy = occupied room nights ÷ available room nights | daily_performance.rooms_sold, rooms_available (or property room count) | Previous 28-day period | 71.7% | Attention | 3 / 6 |
Total revenue trend | (previous period revenue − current period revenue) ÷ previous period revenue | daily_performance.total_revenue | Previous 28-day period | $401,884 | Attention | 3 / 6 |
Actual results vs approved budget Missing: An approved budget for the period | — | No approved budget or saved earlier forecast is stored for this property | Approved budget / previously saved forecast | — | Not Assessed | 0 / 6 |
Forecast accuracy vs later actuals Missing: An earlier saved forecast plus later actual results | — | No approved budget or saved earlier forecast is stored for this property | Approved budget / previously saved forecast | — | Not Assessed | 0 / 4 |
Upcoming obligations documented | count of open payables with a confirmed due date in the next 28 days | payables.due_date, payables.status | Next 28 days of known payments | 1 of 3 open bills due soon | Pass | 5 / 5 |
Data freshness | days between today and the newest imported record | daily_performance.business_date, expenses.expense_date | 100000 days (configurable) | 27 days old | Pass | 4 / 4 |
Missing periods | (expected days − days with revenue records) ÷ expected days | daily_performance.business_date | 28-day reporting period | 28 of 28 days present | Pass | 3 / 3 |
Duplicate and invalid records | count of duplicated business dates + records with negative or non-numeric values | daily_performance, expenses | Zero duplicates or invalid values | 0 duplicate date(s), 0 invalid record(s) | Pass | 3 / 3 |
How confidence was decided
- Data coverage 90% of the scoring model
- Data is current (27 days old)
- 120 days of revenue history
- No duplicate or invalid records
- No missing days in the reporting period
- All sources are manual or file imports (no verified live connection)
Confidence follows written rules, not judgement. A high score with low confidence should not be treated as reassurance.