For chain operations, asset managers, CFO + IT

Read-only Aggregator never writes back to a property

Every spa in your portfolio. One dashboard. Read-only.

RevPATH, yield, utilization, capture rate, no-show and cancellation — every property, one period selector. Threshold alerts on every metric. Side-by-side compare. 30-day revenue forecast. PDF report in one click. Pulls a snapshot every five minutes; never writes back.

Thirty minutes with Maciej, the founder. Written proposal in three business days.

Six KPIs, every property Read-only architecture 5-min snapshot pull PDF in one click
Sample chain · 4 properties · live
WMQY
RevPATH +12%
$148
Yield +4%
71%
No-show −1.2%
3.8%
Cancellations +0.9%
6.1%
30-day revenue · forecast Confidence: strong
Aggregator — read-only chain HQ dashboard refresh · 5 min
What it does

One screen. Every property. Same period, same math.

Aggregator pulls a metrics snapshot from each property every five minutes — RevPATH, yield, utilization, capture rate, no-show, cancellation, top services, top providers. The roll-up applies one period filter (week / month / quarter / year), one currency, one timezone normalization. Compare the flagship in Dubai against the boutique in Bali without exporting six spreadsheets. Spot the property that is bleeding capacity before payroll runs.

Chain roll-up · this quarter
W M Q Y
Property A · Dubai Yield 78%
$184k
Property B · Bali Yield 71%
$142k
Property C · Maldives Yield 54%
$96k
Property D · Tunis Yield 47%
$71k
Chain total $493k · 62% yield
The six metrics

The KPIs chain operations open every morning.

Six numbers the GMs in your portfolio cannot fake and the head office cannot guess. Each tile shows the current value, the delta against the prior period, and a sparkline. Click any tile to drill into the property breakdown.

RevPATH

+12% vs LY
$148 sample chain

Revenue per available therapist hour. The asset utilization metric — strips away staff count and opening hours so you compare a 4-therapist boutique against a 12-therapist flagship on the same axis.

AvgYield

+4 pts
71% sample chain

Achieved revenue as a share of theoretical maximum at full price. Captures discount drag, comp bookings, and partial-hour gaps in one number. Premium properties hold above 70%; a sudden drop usually means a manager is comping too freely.

Utilization

+2 pts
76% sample chain

Booked minutes divided by available minutes per therapist. The labor metric. Above 80% sustained is overheating (next no-show kills the day); below 60% means the schedule has slack the GM is not selling.

Capture rate

+3 pts
21% sample chain

Share of in-house hotel guests who book a treatment. The hotel-spa metric — Cornell 2018 places industry average at 5–6%, Elevate Wellness puts 25–35% as the integrated-property ceiling. Aggregator surfaces it per property so you see who is selling the wellness story.

No-show rate

−1.2 pts
3.8% sample chain

Confirmed bookings the guest never honored. Quiet revenue leak. The threshold alert fires when no-show creeps above 5% — usually a reminder-flow misconfiguration, sometimes a reception-side data entry pattern.

Cancellation rate

+0.9 pts
6.1% sample chain

Bookings cancelled inside the cancellation window. Tracks the same drag from a different angle — high cancellations often precede a no-show spike. Aggregator separates same-day cancellations from advance cancellations so you see which leg is moving.

Threshold alerts

The KPI moved. You hear about it the morning of.

Aggregator does not just plot history. It watches every KPI per property against a configurable threshold and pings you the moment the line crosses — email, dashboard banner, optional Slack webhook. The metric drift you would normally catch six weeks later in the quarterly review shows up the next morning.

Live feed · last 24 hours
3 active
HIGH NO-SHOW
Property C · Maldives 5.4% over last 7 days · threshold 5%
8m ago
UTILIZATION TREND
Property D · Tunis 4 consecutive days below 75% · threshold 75%
1h ago
PROPERTY OFFLINE
Property B · Bali Metrics endpoint silent · 42 minutes
42m ago
01

High no-show streak

A property crosses the no-show threshold for two consecutive days. The reminder flow probably needs reconfiguring; the head office hears about it before the GM does.

02

Utilization trend break

Utilization drops below the threshold for four consecutive days. The schedule is over-padded or the booking demand has shifted — you investigate this week, not next quarter.

03

Property offline

The metrics endpoint goes silent for more than thirty minutes. Could be the PMS sandbox dropped, could be a deploy window — either way, ops finds out before the GM emails the help desk.

04

RevPATH variance

A property diverges from the chain median RevPATH by more than two standard deviations. Either an outlier success worth replicating or a structural drag worth a call — surfaced, not hidden.

05

Capture-rate drop

Capture rate drops below the per-property floor (typically 8% for hotel spas). Usually a QR-card placement issue or a new reception team that stopped mentioning the spa at check-in.

The architectural guarantee

Aggregator never writes back. Not one byte.

The single piece of architecture that lets the CFO and IT sign off on a chain HQ dashboard without a security review: aggregator only reads. The integration boundary between the property and the chain is one-way at the code level — there is no API path back from aggregator to a property database. CFO sleeps better. IT does not block the rollout.

Data flow · one-way Verified at compile-time
n × spas Properties PMS · POS · Operations
Chain HQ Aggregator Read-only API
VP · CFO · IT Leadership Dashboard · PDF · Audit log
No write path · aggregator → property

One-way pull, every five minutes

Aggregator pulls a snapshot of computed metrics — not raw guest data, not booking detail rows. The property keeps its database; the chain keeps the roll-up. The connection is HTTPS, mTLS, scoped to one read-only metrics endpoint per property.

Compile-time enforcement

The aggregator service does not link against any of the property write paths. The booking, settlement, and admin mutation APIs are not even compiled into the binary. A future engineer cannot accidentally call them — the symbols are not in the dependency graph.

Single-tenant property data stays put

Every property remains on its own dedicated Google Cloud project, its own PostgreSQL database, its own subdomain. Aggregator is an additional service that subscribes to the metrics feed; it never sees PII, never holds a guest record, never replicates a booking row. Property data sovereignty is the default, not an opt-in.

Revenue forecast · next 30 days Confidence: strong
$184k projected · sample chain
+9.2% vs prior 30d
30 days back now 30 days ahead
Recommendation

Dominant service detected — Couples Massage 90' at 38% of mix. Diversify catalog to reduce single-service exposure.

30-day revenue forecast

Where the next thirty days land — and what is dragging the mix.

Aggregator runs a Holt-Winters-style seasonal forecast on the trailing booking velocity and the open-pipeline value. The output is a projected next-30-day revenue with a confidence band, plus a recommendation strip that flags the dominant-service concentration risk. Use it to spot a property that is leaning too hard on one signature treatment before the seasonal pattern shifts.

Side-by-side compare

Two properties. Same period. Same math.

Pick any two properties in the portfolio and aggregator drops them into a split view — identical period, identical KPI list, identical chart logic. No more 'their RevPATH is computed differently, that's why the numbers don't match.' Same axis, every time. The drill-into-difference link surfaces the metric that actually moved.

Compare · this quarter 2 properties selected
Property A · Dubai Flagship · 8 therapists
Revenue $184k
Yield 78%
No-show 3.1%
Yield 78%
Top service Top: Couples Massage 90'
Property B · Bali Sister · 5 therapists
Revenue $96k
Yield 54%
No-show 6.4%
Yield 54%
Top service Top: Hot Stone 60'
Δ Yield = 24 pts · Δ No-show = 3.3 pts Drill into difference →
Reports

Three reports the head office actually reads.

The recurring reports your portfolio committee asks for — already generated, already formatted, ready for the PDF attachment in the Monday email. Date range and property filter on every report; charts and tables side by side; logo and footer pulled from the chain branding configuration.

provider-aug-2026.pdf

Provider report

Utilization, revenue, and commission per therapist across the selected properties. Same axis for every property — the head office stops asking 'why does Dubai compute commission differently?'

service-aug-2026.pdf

Service report

Booking volume, revenue, top providers, top clients per service. Surfaces the signature treatments per market and the underperformers that are taking shelf space.

room-aug-2026.pdf

Room report

Capacity utilization per room per property. The asset metric — find the underused couples suite before ownership flags it in the capex review.

Chain branding

Your chain's dashboard. Your brand on every pixel.

Chain HQ rarely wants the AURI logo on the screen they show the board. Aggregator can deploy under your chain's domain, your colors, and your logo — including the PDF report header. Same engine, your brand.

01 — Custom domain

analytics.yourbrand.com — yours, not ours.

We provision the dashboard on a subdomain of your chain — DNS, TLS certificate, redirects, all handled. The board sees your URL in the address bar; ops sees the same AURI engine underneath.

02 — Logo + palette

Your brand applied to the chrome, the cards, and the charts.

Upload your logo, set your primary and accent colors — applied to the header, the cards, the chart strokes, the alert badges. The dashboard reads as part of your chain's design system, not a vendor product bolted on top.

03 — PDF header

Every exported report carries your branding.

The provider, service, and room reports render with your logo in the header, your colors on the charts, your footer line at the bottom. When the report lands in the portfolio committee inbox, it looks like your chain produced it — because the deploy is yours.

Frequently asked

Aggregator — what chain operations ask first

No. The aggregator service does not link against any property write paths — the booking, settlement, and admin mutation APIs are not compiled into the binary. The integration is HTTPS + mTLS, scoped to one read-only metrics endpoint per property. CFO and IT review the architecture and clear it without a security exception.

The metrics endpoint is polled every five minutes per property. Threshold alerts fire within the same five-minute window — by the time you walk into the office, the alert is already in your inbox. The dashboard auto-refreshes; no F5 needed.

Each property runs an isolated AURI instance on its own Google Cloud project. To add it to the aggregator, the property admin issues a read-only metrics token from the property admin screen and the chain HQ pastes it into the aggregator configuration. No data migration, no schema change, no downtime on the property.

Yes. Custom subdomain (analytics.yourbrand.com), logo, primary + accent colors applied to the dashboard chrome and the PDF report header. See the chain branding section. Setup is part of the standard aggregator rollout.

Aggregator does not require a specific PMS — it consumes the metrics feed from the property AURI instance, which computes the KPIs from its own booking database. PMS support matters for the property-level settlement; not for the chain roll-up. PMS coverage is documented at /integrations/.

Yes. Aggregator is opt-in per property — the token is issued by the property admin, not by the chain. Pilot properties, properties in active migration, or properties that have not signed the chain HQ data-sharing agreement simply stay out of the roll-up. You add them when the operational reason is clear.

Book your aggregator demo

See the aggregator configured on a sample chain.

We pre-deploy a sample chain with four properties and your color palette, then walk through the KPI grid, the alerts feed, the forecast, the compare view, and the PDF report — live. Thirty minutes with Maciej, the founder. Written proposal in three business days.

Get my private demo

Pilot terms — free setup, paid monthly, case-study and logo rights expected.