Program value waterfall
theo at risk → saved → costs → net EBITDA
{{ vtWaterfall }}
projected (hatched)
backtested (solid)
net protected EBITDA
Finance-auditable by construction
Cumulative lift · treated vs stratified holdout
net revenue / guest · rolling 12 wk
{{ vtLift }}
Response latency: sustained change is judged quarterly, not next-day. Vertical markers = campaign waves.
Top considerations this period
auto-generated · each bullet links to its evidence
{{ n.n }}
{{ n.text }} Drill to evidence →
Value claim sign-off
Open pilot decision pack
{{ c.claim }}
{{ c.owner }} · {{ c.date }}
Pilot decision ask
{{ pilotText }}
{{ pilotOwner }} · {{ pilotDate }}
No rows match these filters.
Awaiting weekly scoring run — next batch: Mon 05:00.
Awaiting weekly scoring run — next batch: Mon 05:00.
Sleeping dogs (8–12% of the cohort) never enter this queue — they are visible only in the Guardrails Console with a suppression reason. No bulk actioning: per-guest craft workflow is the compliance posture.
{{ selId }}
{{ selMeta }}
Why now — each sentence is clickable, revealing the underlying feature
{{ w.text }}
{{ whySpark }}
Feature: {{ w.feature }}
Governed feature mart · weekly batch · SHAP-traceable
Governed feature mart · weekly batch · SHAP-traceable
What to do
{{ selAction }}
Anchoring: {{ selAnchor }}
What to avoid
{{ selAvoid }}
Negative guidance from the models — the sleeping-dog signal expressed at channel level.
{{ selSparkTitle }}
{{ briefP }}
Visit cadence
{{ briefCadence }}
Top drivers · SHAP, signed
{{ d.label }}
{{ d.w }}
Guest
Theo trajectory · 24 months · changepoints + event context
{{ theoChart }}
Dashed verticals = structural changepoints (Dec tax change, net-ADT restructure). Shaded = AFL / school holidays / Crown Live — a footy spike is never misread as organic growth.
Game mix
{{ mixDonut }}
■ EGM {{ mixEgm }}%
■ Tables {{ mixTables }}%
■ Digital {{ mixDigital }}%
Visit day × daypart
rows = daypart (AM→late) · cols = Mon→Sun
Cross-property footprint
Hotel nights · 90d{{ fpNights }}
ADR{{ fpAdr }}
Lodger flag
F&B (category level){{ fpFnb }}
Entertainment · 12mo{{ fpEnt }}
{{ fpCue }}
Offer history ledger · P&L after tax — select a row for its waterfall
OfferTypeCostStateNet contrib
No offer history in the POC window for this guest.
{{ o.name }}{{ o.type }}{{ o.cost }}{{ o.state }}{{ o.net }}
{{ ledgerWf }}
Elasticity & context · modeled reinvestment response
{{ elastChart }}
{{ bundleRec }}
A A$1,000/day guest in Brighton (30 km) needs a A$10 bundle or a meal; the same value in Ballarat (120 km) needs a room — they pass thirty pokie venues on the way in.
{{ r.name }}
{{ r.detail }}
RFM × ADT explorer
0–7d8–14d15–30d31–60d60d+
{{ row.label }}
{{ c.n }}
cell color = total theo · label = guest count · recency (cols) × frequency (rows). Click a cell to inspect the cohort.
{{ rfmCohortTitle }}
{{ rfmCohortText }}
Headroom scatter · predicted worth vs observed play
{{ headScatter }}
● Segment B — above the line 6+ weeks
● rest of cohort
Lasso above-line cloud → queue
Premium definition workspace · tier-based vs ADT-based
Tier-based (today)
Gold tier and above, offers set by tier averages against ADT.
Revenue coverage · 71%
2,150 guests
ADT-based (proposed)
Premium at ADT 500+, plus the A$300–500 growth belt watched separately.
Revenue coverage · 84%
1,680 guests
{{ o.name }}
{{ o.face }}
{{ o.eff }}
{{ o.meta }}
Constraint engine · {{ ceName }}
Face value{{ ceFace }}
Tax treatment{{ ceTax }}
Post-tax effective cost{{ ceEff }}
Eligibility{{ ceElig }}
Validity · frequency{{ ceValid }}
The engine prices every candidate offer post-tax — Melbourne slots breached into the 61.67% bracket in December, and free play itself is taxable there (the double whammy). Tables ~21% · Perth free play deductible · program play near zero.
Objective by market — visible, never silently changed; changes are logged
{{ ob.market }}
Reinvestment caps · monthly, per property
{{ b.property }}
{{ b.text }}
{{ b.note }}
Consent & reachability funnel · premium cohort
{{ f.label }}{{ f.pct }}
{{ f.note }}
Pre-October, unmarketable guests show “member hub only (from Oct 1)” — parked, never silently dropped. Offers no one can see were named a huge waste.
Layering & conflict calendar — offers, promotions, events and holdout freezes; collisions flagged
{{ row.property }}
{{ itm.label }}
⚠
{{ collisionText }}
Shift send to wk of Aug 10
✓
Send shifted to wk of Aug 10 — no collisions remain. Holdout freeze protected; change logged.
Cumulative incremental net revenue · treated vs stratified holdout
{{ measLift }}
Wasted spend saved · before vs after uplift targeting
{{ w.seg }}
{{ w.saved }} saved · revenue held {{ w.held }}
before
{{ w.before }}
after
{{ w.after }}
Reference engagements saved ~60% of spend for the same outcome — “stop paying uninfluencibles.”
Offer P&L waterfall
{{ campWf }}
{{ campNote }} · mirrors the P&L view the CRM team already trusts in Power BI, deliberately, for adoption.
Holdout integrity
Holdout size
10%
52 guests · auto-reserved per wave
Contamination
0
legacy-channel leaks flagged automatically
Stratification: ADT band × lifecycle stage × locality ring. A holdout guest who receives an offer through a legacy channel is flagged and excluded from the claim.
Rendered recommendations passing the filter chain
100%
2,847 evaluations · wk of 19 Jul
Self-exclusion, pre-commitment, consent and frequency caps are applied before a recommendation is rendered — compliance is architectural, not asserted.
rec_id rec_2026wk29_04471_001
evaluated_at 2026-07-19 05:02:14 AEST
rule_versions rg v3.2 · austrac v2.7 · consent v18 · freq v9
lists_checked self_excl v41 · precommit v37 · mindway 04:10 · ecdd v12
result PASS — rendered to host.lmarsh queue
Demo scene 3 — the system refuses, on screen
Guest #7719 is RG-suppressed (Mindway band escalation). Attempt an action to watch the filter chain refuse and write the audit record.
{{ s.n }}
{{ s.reason }}
Today’s conflated stop code is decomposed here as far as source data allows — reason metadata lands with the stop-code rebuild (paper pending).
Refusal log — every attempted action on a suppressed guest
Export for audit
TimestampAttempted byGuestActionRefusal rule
{{ r.ts }}
{{ r.actor }}
{{ r.guest }}
{{ r.action }}
{{ r.rule }}
Mindway Game Scanner integration
{{ b.band }}
{{ b.n }}
{{ mindwayPolicy }} Displayed as bands — raw scores are role-restricted.
Language governance — centrally managed copy library
APPROVED FRAMING
BANNED — never rendered
Translation slots: {{ langTrans }}. Every word rendered assumes a future regulator will read it.
SYNTHETIC PANEL · ILLUSTRATIVE PERSONAS · SIMULATED
Design-time wind tunnel — directional only. It never replaces holdout measurement: no holdout, no claim. Zero real guest records on display.
Persona library v3 · calibrated on cohort stats to 12 Jul · Compliance-reviewed.
Draft offer
Offer type
DepthA${{ simDepth }}
Validity window
Channel
Nothing in the simulator schedules or sends anything. Promoting attaches the panel summary as design evidence; scheduling runs through the normal flow with a holdout auto-reserved.
{{ s.label }}
{{ s.value }}
{{ s.sub }}
⚠Layering check: this validity window on EDM overlaps the frozen Sunday with Drop Shot scheduled. Open conflict calendar →
Last adjustment
{{ f.label }}
changed verdicts are flagged on the cards below
Verdict-flip tornado — which lever matters
one change at a time vs the current draft · flips out of 16 personas
{{ t.label }}
{{ t.flips }}
Persona vs offer fit · {{ personaName }}
{{ personaRadar }}
— persona affinity profile— draft offer profilethe gap area is the misfit explanation
Offer × persona fit matrix
draft + pinned variants (rows) × 16 personas · click any persona card for its radar
■ redeem■ ignore■ negative■ blocked
{{ m.name }}
{{ m.chart }}
AUC on holdout, weekly · dashed = POC gate ({{ m.gate }}) · published gaming benchmarks run 0.85–0.93
Drift, changepoints & retraining timeline
{{ e.w }}
{{ e.label }}
Stated, on-screen behavior — never silent degradation: after the net-ADT restructure, the decline model temporarily widens its uncertainty and the queue shows fewer, higher-confidence flags for ~2 weeks. The changelog posts to the Value Tracker narrative card in plain language.
Identity resolution quality · POC gate metrics
{{ i.label }}
{{ i.value }}
{{ cardingNote }}
Run cost & cadence
ScoringWeekly batch · BigQuery (AU, segregated project)
Run cost≈ A$310 / week
Retrain cadenceQuarterly + post-structural-change
DataDe-identified patron-week extracts
Feature mart lineage · freshness & completeness per source
{{ s.name }}
STALE {{ s.stale }}
freshness {{ s.fresh }}%
completeness {{ s.complete }}%
2
Roster Planner · POC 2
Shares this shell, filters and export patterns — dealer demand forecasting and roster optimization. Out of scope for the NBA/NBO specification; scene 4 of the week-10 demo switches to the floor here.