Six Degrees β Labour vs Sales (weekly snapshot)
Context
First cross of Tanda rostered labour against PowerEPOS sales for the same week (2026-06-01 β 2026-06-07). Hours are rostered (net of breaks), aggregate only β no individual data, no wage values. Revenue-per-rostered-hour is the efficiency proxy until wage-cost data is in scope.
Detail
| Day | Rostered h | Shifts | Revenue | Txns | Avg ticket | Rev / rostered h |
|---|---|---|---|---|---|---|
| Mon 06-01 | 124.7 | 21 | $12,105 | 262 | $46.20 | $97.07 |
| Tue 06-02 | 259.2 | 40 | $7,521 | 174 | $43.23 | $29.02 |
| Wed 06-03 | 243.7 | 39 | $4,137 | 96 | $43.09 | $16.98 |
| Thu 06-04 | 261.7 | 40 | $4,772 | 118 | $40.44 | $18.24 |
| Fri 06-05 | 303.2 | 47 | $4,256 | 155 | $27.46 | $14.04 |
| Sat 06-06 | 250.0 | 38 | $9,201 | 305 | $30.17 | $36.81 |
| Sun 06-07 | 140.5 | 21 | $4,701 | 110 | $42.74 | $33.46 |
| Week | 1,583.0 | 246 | $46,694 | 1,220 | β | $29.50 |
Bars = rostered hours; line = revenue in $hundreds.
What stands out
- Friday is the most-staffed, least-efficient day in this week: peak roster (303 h / 47 shifts) but the week's lowest revenue-per-hour ($14.04/h, vs week average $29.50/h). Avg ticket also collapses to $27.46. (The control week below shows this was revenue volatility, not a structural Friday problem.)
- Monday 2026-06-01 is the inverse: lightest roster (124.7 h) but the week's best revenue ($12.1k) β $97/h. Note: 1 June 2026 was the Western Australia Day public holiday, so treat it as an outlier (holiday trade on a skeleton roster β and penalty rates would have applied).
- WedβFri mid-week block is heavily staffed relative to takings: ~270 h/day average against $4.1β4.8k/day revenue ($14β18/h). If this pattern repeats in normal weeks, mid-week rosters are the first place to look for savings.
- Saturday is the efficiency benchmark for a full roster: 250 h producing $9.2k ($36.81/h) on 305 txns.
Control week: 2026-05-25 β 31 (no holiday, actual worked hours)
To test the Friday finding, the prior week was pulled using worked timesheet shifts (not roster) against the same sales source:
| Day | Worked h | Shifts | Revenue | Txns | Rev / worked h |
|---|---|---|---|---|---|
| Mon 05-25 | 130.4 | 21 | $2,010 | 58 | $15.41 |
| Tue 05-26 | 255.1 | 40 | $6,710 | 178 | $26.30 |
| Wed 05-27 | 254.1 | 41 | $5,258 | 146 | $20.69 |
| Thu 05-28 | 234.1 | 38 | $3,916 | 97 | $16.73 |
| Fri 05-29 | 286.9 | 43 | $10,986 | 274 | $38.29 |
| Sat 05-30 | 255.5 | 39 | $14,839 | 485 | $58.08 |
| Sun 05-31 | 155.4 | 24 | $13,453 | 297 | $86.57 |
| Week | 1,571.5 | 246 | $57,172 | 1,535 | $36.38 |
What the two weeks together actually show:
- The roster is a template, not demand-shaped: exactly 246 shifts in BOTH weeks (~1,575 h each) while revenue swung 22% ($57.2k β $46.7k) and the day-mix swung wildly. (Roster records even show
creation_method: copy.) Labour is near-constant; demand is not. - Friday isn't structurally bad β it's volatile: $38.29/h in the control week vs $14.04/h in the holiday week. The June Friday's revenue ($4.3k vs $11.0k) was the anomaly β likely post-long-weekend quiet β while staffing barely moved (287 h β 303 h).
- The consistent weak spots looked like Mon and Thu at two weeks β revised by the 6-week trend below: Monday's roster is actually light and fine; the confirmed over-roster days are Wednesday and Thursday.
- Sunday is the quiet star: light roster both weeks; control week did $13.5k on 155 h β $86.57/h, the best number in either week.
- Weekend (FriβSun) drove 69% of control-week revenue on 44% of the hours.
6-week trend (2026-04-27 β 06-07) β conclusive
Extended with four more worked weeks (1,057 timesheet shifts aggregated). Same method, same sources.
Weekly totals β the template roster is confirmed:
| Week (Mon-start) | Hours | Shifts | Revenue | Rev/h |
|---|---|---|---|---|
| Apr 27 | 1,594.3 | 262 | $39,833 | $24.98 |
| May 04 | 1,596.9 | 254 | $45,939 | $28.77 |
| May 11 | 1,616.5 | 256 | $39,817 | $24.63 |
| May 18 | 1,582.8 | 255 | $43,389 | $27.41 |
| May 25 | 1,571.5 | 246 | $57,172 | $36.38 |
| Jun 01 | 1,583.0 | 246 | $46,694 | $29.50 |
Labour sits in a Β±1.4% band (1,571β1,617 h) for six straight weeks while revenue swings 44% ($39.8k β $57.2k). The roster does not respond to demand.
Weekday averages (6 weeks):
| Day | Avg hours | Avg revenue | Avg rev/h | Range ($/h) | Verdict |
|---|---|---|---|---|---|
| Mon | 136.7 | $5,415 | $41.22 | 15.41β97.07 | Light roster β fine (holiday-skewed avg) |
| Tue | 268.6 | $6,627 | $24.89 | 14.88β30.23 | 2nd-most-staffed day β watch |
| Wed | 257.8 | $4,035 | $15.72 | 11.28β20.69 | Confirmed over-rostered β never beat $21/h |
| Thu | 258.9 | $3,912 | $15.09 | 10.01β18.24 | Confirmed over-rostered β never beat $19/h |
| Fri | 292.5 | $7,828 | $26.98 | 14.04β38.29 | Most-staffed; volatile, roughly earns it |
| Sat | 238.1 | $11,633 | $48.82 | 36.81β58.08 | Benchmark β best day, fewer hours than Wed/Thu |
| Sun | 138.3 | $6,024 | $42.22 | 28.35β86.57 | Light-but-mighty |
The killer stat: Saturday is rostered ~20 h/day LESS than Wednesday or Thursday while earning ~2.9Γ their revenue. Wed+Thu together consume ~517 h/week at ~$15/h β if they merely matched Tuesday's efficiency (~$25/h) at current revenue, that's an indicative ceiling of ~190 h/week of trim potential (~12% of total hours). Treat as a ceiling, not a target, until the per-team split and manager context are in.
Caveats
- Revenue/hour β labour cost % (needs wage rates, currently out of scope). A 25β35% labour-cost target would need ~$3Γ the loaded hourly wage in revenue per rostered hour.
- Wed/Thu may carry prep/functions work that revenue doesn't capture on the day β the manager conversation and the per-team split must precede any trim.
- 'Other' transaction counts (e.g. Sat 05-30: 380 of 485) suggest functions/events β worth tagging in PowerEPOS to separate event trade from walk-in.
Actions
- Manager review next: present the Wed/Thu finding to the Six Degrees manager β what do those ~258 h/day cover that sales don't show (prep, functions, deliveries)?
- Add Tanda
departmentscope β split Wed/Thu hours by team (Kitchen vs Floor vs Bar) β turns "Wed is over-rostered" into a roster-line decision. - Demand-shaped rostering (Phase 4) is now evidenced: 6 weeks of flat labour against 44% revenue swings. Spec: PowerEPOS forecast +
get_effective_availabilityβ draft viacreate_schedule(preview) β manager approves. - Feed into the Smart Dashboard as a live tile (labour % once wage data is wired).
Provenance
Computed 2026-06-10 (extended 2026-06-11) from Tanda GET /rosters/current (week 2026-06-01..07, rostered hours net of breaks) and GET /shifts (weeks 2026-04-27..05-31, 1,303 worked shifts net of breaks), each aggregated per day with no individual records retained, joined against Aspire Smart Dashboard get_daily_sales (PowerEPOS) for six-degrees.
Related
- staffing-pattern β shift-count view of the same week
- staff-directory β who's on the team
- venue-profile β trading hours + venue meta