P&L Overview
Customer Whale Curve
Multi-Dimensional P&L
Profitability Heatmap
Channel Analysis
Category Analysis
| SKU | Product | Category | Units | Revenue | COGS | Gross Profit | Net Profit | NM % |
|---|
| SKU | Product | Category | Units | Revenue | COGS | Gross Profit | Net Profit | NM % |
|---|
Warehouse & Region
Cost Drivers
Customer Detail
TDABC Capacity Utilization
| Department | Avail FTE | Used | Unused | Util | 100% Cost | Excess Cost |
|---|
| Facility | Department | Group | Avail Cap (min) | Consumed | Unused | Util % | FTE | 100% Cost (AUD) | Excess Cost |
|---|
AI Insights
Where to find +2.53M AUD of operational savings in the next 12 months
10 operational levers identified from 82,861 delivery transactions, 10,772 visits, 151,926 km driven, and 3,075 customer stops across 27 hubs. Every insight is grounded in the TDABC cost model (9.23 AUD/km, 176 AUD/visit) and benchmarked against the best-performing hub (Brisbane).
Driver fleet is running at 164% capacity, creating hidden overtime and quality risk
- Average 7.4 deliveries/driver/day, 104.6 km/driver/day
- 10,772 visits logged against 66 drivers = 163 visits/driver/month
- Geelong and Newcastle hubs show 157 and 207 min/visit respectively, 2x the network average
Newcastle and Wollongong hubs drive 2x the km per visit, inflating transport cost
- Newcastle: 137 visits, avg 28.0 km, avg 207 min/visit, 7,315 AUD/visit
- Wollongong: 779 visits, avg 18.7 km, avg 106 min/visit, 2,241 AUD/visit
- Contrast with Brisbane: 1,968 visits, avg 6.9 km, avg 68 min, very efficient
Pre-Sale channel: 1,927 customers generating only 441 AUD/visit
- 41% of PS customers (783) have rev/visit below 200 AUD, meaning delivery cost alone exceeds their contribution
- PS total km: 26,384/month. At 9.23 AUD/km = 243K AUD just in transport
- PS accounts for 8.5% of revenue but 62% of visits, a massive resource drain
Warehouse stop cost is the single largest logistics line at 176 AUD/visit
- 15 sites across 5 regions, many with low utilisation (Newcastle: 54 customers, Darwin: 31)
- 76 WH FTEs at fully-loaded cost of 1,085,000 AUD/month
- Consolidating the 5 smallest hubs into neighbouring ones could save 3 site leases (~480K/year)
Top 10 customers by waiting time cost over 600 min/visit
- HAYPER AL-WAFA (KA): 1,117 min/visit, 1 visit, only 1,214 AUD revenue
- BN MACKAY (WS): 733 min/visit over 17 visits, 220K revenue but ~12,500 AUD/month in wait cost
- FRAG MOHAMED (WS): 707 min/visit, 10 visits, 159K revenue, ~7,000 AUD/month wait cost
Truck fleet utilisation: 66 trucks averaging only 104.6 km/day
- At 12,500 AUD/month per truck (lease + fuel + insurance + maintenance), total fleet cost is 825,000 AUD/month
- If stop times were reduced 20%, each truck could serve ~1.5 more stops/day = 2,178 additional stops/month across the fleet
- That could absorb the PS growth without adding vehicles
Brisbane hub is the operational benchmark: 6.9 km/visit, 68 min/visit
- Brisbane vs Sydney: 6.9 vs 13.6 km/visit (2x), 68 vs 117 min/visit (1.7x)
- Brisbane vs Perth: 6.9 vs 15.8 km, 68 vs 115 min
- Brisbane's advantage: compact geography + higher customer density per route zone
Delivery consolidation opportunity: avg 3.5 orders per customer served
- PS channel: 6,726 visits for 6,713 orders across 1,927 customers = 3.5 visits/customer but only 3.5 orders
- KA channel: 1,720 visits for 891 orders = almost 2 visits per order, suggesting split deliveries
- Consolidating into fewer, fuller drops would reduce stop pool cost significantly
Geelong and Gold Coast show opposite extremes: optimise both
- Geelong 157 min/visit is 1.5x network average, likely due to restricted delivery windows in Haram zone
- Gold Coast 3.1 km/visit is the best in the network, but rev/visit is 2x below Geelong
- Both can improve: Geelong by night/early-morning scheduling; Gold Coast by upselling and minimum order enforcement
Network-wide cost per km of 9.23 AUD is competitive but km allocation is uneven
- Top 5 hubs by km/visit: Newcastle (28.0), KA channel overall (32.7), WS channel (30.3), Wollongong (18.7), Geelong (14.8)
- Bottom 5: Gold Coast (3.1), Brisbane (6.9), Adelaide (6.9), Mackay (8.4), Canberra (13.8)
- Fuel cost is ~35% of the km rate; driver time-on-road is ~45%
Where to find +2.58M AUD of commercial profit improvement in the next 12 months
10 commercial levers identified from customer mix (3,075 customers, 4 channels), SKU portfolio (209 SKUs, 4 categories), pricing and discount structures, and order economics. Every insight connects to a specific P&L layer in the TDABC model.
Wholesale channel concentrates 65% of revenue but only 3.1% discount rate
- WS net margin: +9.49% (2.07M AUD net profit)
- Average order value 10,057 AUD vs PS at 441 AUD (22x difference)
- WS customers buy across all 4 categories: Industrial Components 8.24M, Consumables 5.43M, Hardware & Fittings 4.93M, Finished Assemblies 3.92M
Key Account channel: 522 customers but only 2.67% net margin, below sustainable threshold
- KA avg rev/visit: 4,077 AUD vs WS 10,057 AUD
- KA cost/visit (transport+stop): 478 AUD vs PS 212 AUD
- KA visits-per-order: 1.93 (split deliveries erode margin)
Pre-Sale channel: 1,927 customers contributing 8.5% of revenue but -45% net margin
- PS customers buy Industrial Components (1.08M), Consumables (0.89M), Finished Assemblies (0.57M), Hardware & Fittings (0.38M)
- Average PS basket: 5.4 SKUs per customer, much lower than WS (28 SKUs)
- PS discount rate 1.6%, similar to WS at 3.1%, so pricing is not the issue. Volume is
Online channel: 11 customers, 27.4% net margin, highest in the portfolio
- Online has zero trade discounts
- Delivery cost is low: 17.0 km/visit, 127 min/visit, 333 AUD/visit against 20,507 AUD/visit revenue
- Only 86 visits/month for 1.76M AUD, 209 SKUs accessible
223 customers buy 3 or fewer SKUs, missing 94% of the catalogue
- Avg customer buys 20.8 SKUs, median 18, so most customers have room to grow
- Industrial Components is the entry category (present in 90%+ of baskets), but Hardware & Fittings only in ~60%
- Cross-sell from Industrial Components into Hardware & Fittings or Finished Assemblies could add 1-2 SKUs per low-penetration customer
Average revenue per order is 4,185 AUD but median is only 494 AUD
- Orders below 500 AUD dominate PS and bottom-tier WS
- Each order triggers a visit (176 AUD stop cost) + km (avg 14.1 km x 9.23 = 130 AUD) = ~306 AUD minimum
- Any order below ~600 AUD is breakeven before COGS and commercial costs
Hardware & Fittings category has the best COGS ratio (38%) but lowest penetration
- Hardware & Fittings gross margin: ~62% vs Consumables ~56%
- Hardware & Fittings penetration in PS is very low (0.38M out of 2.92M = 13%)
- WS Hardware & Fittings is healthy (4.93M) but KA Hardware & Fittings is missing from the top 12 category x channel combos
Trade discounts (2.2% blended) are concentrated in WS; KA and PS barely discount
- WS discount 3.1% is healthy for manufacturing & distribution distributor terms in AUS
- KA at 0.05% discount suggests pricing is fully list-based, no negotiation leverage
- PS at 1.6% is low. If MOV is introduced, a 2% discount incentive for orders >500 AUD could drive upgrade
KA channel visits-per-order ratio of 1.93 signals commercial process failure
- At 829 excess visits x 478 AUD/visit = 396K AUD/year in avoidable delivery cost
- Root causes: partial stock-outs at WH, customer receiving-dock unavailability, order changes after dispatch
- Contrast with WS at 1.0 visits/order and PS at 1.0, both essentially single-drop
Top 20 customers generate 38% of revenue; bottom 1,000 generate 3%
- 692 customers are profitable, 2,383 are loss-making (77.5%)
- Drag from loss-making customers: -2.72M AUD
- If the bottom 500 were migrated to self-service or dropped, net profit jumps from 1.42M to ~2.0M
Where FY 2025 margin was won and lost — and the FY 2026 build-up
Ten CFO-ready levers grounded in the FY 2025 P&L walk (Gross Revenue → Net Profit), the working-capital cycle, the pricing & discount stack, and the rolling FY 2026 forecast. Every insight maps to a specific line or ratio reconcilable to the ledger.
Gross-to-Net bridge: 2.2% trade discount mask hides 9.5M AUD of gross discount
- Unclaimed marketing rebates accrued but not spent: ~320K AUD
- Retro-rebate exposure vs 2024 contracts: 540K AUD
- Contract compliance gap (checked 25 of 150 agreements): 4 of 25 non-compliant
Working capital cycle: 68 DSO, 34 DIO, 45 DPO → 57-day cash conversion
- Current receivables balance (FY-avg): 33.5M AUD
- Days lockup if DSO rose to 75: +3.5M AUD cash absorbed
- 5-customer concentration in AR > 60d: 8.4M AUD
FY 2026 forecast: revenue +4.5% organic, net margin +140 bps achievable
- Upside case: +6.5% revenue, +5.9% NM (2 KA renewals + 1 WS win)
- Base case: +4.5% revenue, +5.6% NM
- Downside: +1.8% revenue, +4.5% NM (1 KA loss, 1 delayed)
Fixed vs variable cost mix: 41% fixed — thin operating leverage at volume drops
- FY 2025 opex: ~92M AUD (variable 54M · fixed 38M)
- Breakeven revenue: 138M AUD (77% of plan)
- Safety margin: 23%
Pricing power benchmark: Industrial Components 8pp below market pricing index
- Industry pricing index: 100 · our index: 92
- Top 20 SKUs: 11pp gap · long-tail: 3pp gap
- CPI-linked clauses missing in 62% of customer contracts
Inventory write-offs spike in H2 — 540K AUD across Hardware & Fittings and Consumables
- Excess-stock ratio (>180 days): 6.4% of inventory value
- Slow-mover SKUs (30 of 209): 2.1M AUD of slow stock
- 2024 write-off vs 2025: +38% YoY
Indirect (corporate) cost 3.88M AUD — 2.16% of revenue, 30 bps above peer
- Professional fees: 680K AUD · peer median ~450K
- IT opex: 1.1M AUD · peer median ~780K
- Corporate FTEs: 113 · peer median ~95
EBITDA-to-cash conversion at 71% — target 85%
- EBITDA: 6.2M AUD · OCF: 4.4M AUD
- Capex: 2.1M AUD · FCF: 2.3M AUD
- FCF yield on revenue: 1.28%
Customer credit risk: 8.4M AUD exposure concentrated in 5 KA accounts
- Largest exposure: 3.2M AUD (BB-rated)
- Concentration: top-5 KA = 25% AR, top-20 = 54%
- Uninsured exposure: 2.4M AUD
Monthly close at Day 7 — target Day 4 with CostCtrl P&L feed
- Flux analysis done manually — 3 days
- Variance commentary: 1 day · review cycle: 1 day
- Opportunity: CostCtrl feeds flux pre-close
Where to double net profit over 3 years: strategy, market, growth, board KPIs
Ten board-level theses grounded in the FY 2025 dataset: customer concentration, channel mix, category bets, geographic expansion, talent/productivity, and ESG. Each thesis carries a numeric target and an owner for the FY 2026 strategic plan.
Whale-curve reality: 73.4% of customers generate 100% of profit — strategic portfolio call required
- If fired outright: +1.9M AUD net profit, -3.5M AUD revenue
- If refer to a 3PL partner: +2.4M AUD net profit, revenue flat
- If repriced + rationalised SKUs: +1.2M AUD net profit, -0.4M AUD revenue
Market positioning: 8-12% AU market share in Industrial Components — room to consolidate
- Segment with >15% share: Consumables (17%), NSW-based customers
- Under-indexed: Finished Assemblies (4%), VIC, WA
- Inorganic pathway: 2-3 acquisitions at 6-7x EBITDA
Channel bet: Online is 18% YoY but only 4% of revenue — deserve 10%
- Current online: 7.2M AUD · target FY 2028: 18M AUD
- CAC payback on acquired online customers: 7 months
- Underinvestment vs peers: 1.5% of revenue vs 3-4%
Geographic expansion: QLD and WA under-indexed vs market size
- QLD: 2 Brisbane satellites, no Cairns/Townsville presence
- WA: 1 Perth depot, Kalgoorlie route covered twice monthly
- Sales rep coverage: NSW 1:180 customers · WA 1:290
Talent & productivity: Revenue per FFE 342K — AU peer top-quartile is 420K
- Sales productivity: 1.6M AUD/BDM · top-quartile 2.1M
- Warehouse pick rate: 68 units/hr · peer 90
- Engagement score (last pulse): 6.8/10
ESG: Scope-1+2 emissions baseline not published — capital cost at risk
- Fleet emissions: est. 2,400 tCO2e · not measured
- Warehouse energy: est. 1,100 tCO2e · 3 sites on renewable
- Cost of capital gap vs ESG-compliant peer: 30-50 bps
Category bet: Finished Assemblies +22% margin headroom if scale achieved
- Current Finished Assemblies margin: +9.4% (vs 2.8% Hardware)
- Peer margin in same category: +11-14%
- Capex to scale: ~2.5M AUD for 1 new assembly line
Balance sheet flexibility: 1.2x net-debt/EBITDA — headroom for 25M AUD of M&A
- Current debt cost: 6.4% · headroom at lower margin
- Covenant headroom: 20% against existing terms
- M&A capacity: ~25M AUD without equity dilution
Board KPI tree: 6 hard KPIs — recommend replacing 2 with forward indicators
- Current mix: 6 lagging · 0 leading
- Peer best practice: 4 lagging · 3 leading
- Proposed leading: pipeline/plan cover, NPS, eNPS
3-year vision: double net profit from 6.2M to 12.5M AUD by FY 2028
- FY 2025 NP: 6.2M AUD · FY 2028 target: 12.5M AUD
- Organic CAGR required: 16%
- Sub-paths: 55% organic · 45% inorganic (M&A)
Model Architecture
Industrial Components 41% · Consumables 44% · Finished Assemblies 43% · Hardware & Fittings 38%
Plus: Manufacturing overhead as a separate line (not in COGS)
TDABC drivers: km per stop, visits per customer, orders per customer, qty per SKU, channel-locked salesforce
P&L Layer Architecture · 6 Profit Layers
| # | Layer | What it measures | Costs deducted | AUD (FY25) | % of NR |
|---|---|---|---|---|---|
| 1 | Net Revenue | Revenue net of trade discounts | Gross Rev − Trade Discounts | 33,531,692 | 100.0% |
| 2 | Gross Profit | Revenue after material COGS | − COGS (material, 35-45% per cat) | 19,582,567 | 58.4% |
| 3 | Operational Margin | After production & distribution | − Manufacturing Overhead − Distribution | 12,767,267 | 38.1% |
| 4 | Customer/Channel Margin | After selling to customer | − Sales Force − Customer Service − A&P | 5,377,567 | 16.0% |
| 5 | Net Profit | Final profitability | − Indirect / Corporate | 1,418,067 | 4.23% |
TDABC Cost Pools & Driver Rates
Cost Pool → Driver → Rate · Full TDABC Table
| Cost Pool | Driver | Rate | Unit | Monthly Total | Notes |
|---|---|---|---|---|---|
| OPERATIONAL · Distribution | |||||
| Drivers + Trucks + Fuel + Insurance | Km driven per stop | 9 | AUD / km | 1,402,800 | Cause-effect · distant customers absorb more |
| Warehouse FTEs + Rent + Utilities + Sec | Stops per customer | 176 | AUD / visit | 1,895,500 | High-frequency customers cost more handling |
| Manufacturing Overhead (absorption) | Qty per SKU | 9.43 | AUD / unit | 3,517,000 | Proxy for production hours consumed |
| COMMERCIAL · Sales Force (Channel-locked) | |||||
| KA Supervisors + Salesmen (30 FTE) | KA visits only | 275 | AUD / KA visit | 472,500 | KA team NEVER allocated to WS/PS custs |
| WS Sup + Salesmen + Merchandisers (81) | WS visits only | 340 | AUD / WS visit | 761,200 | WS team NEVER allocated to KA/PS custs |
| PS Telesales + Supervisors (25) | PS orders only | 30 | AUD / PS order | 204,000 | Telesales model · per order not per visit |
| COMMERCIAL · Marketing & Service | |||||
| Customer Service + Sales Admin | Orders per customer | 27 | AUD / order | 267,000 | CS work scales with order count |
| Consumer A&P + Trade Mktg + Commission | Qty per SKU | 12.68 | AUD / unit | 4,730,000 | Volume proxy for category marketing spend |
| Bad Debt Provision | Revenue pro-rata | 1.30% | of net rev | 435,912 | Risk proportional to exposure |
| INDIRECT / CORPORATE | |||||
| Finance & Accounting (24 FTE) | Orders (AR/AP work) | 37 | AUD / order | 372,000 | Invoice + receivable work per order |
| HR / IT / Legal / Exec / R&D (89 FTE) | Revenue pro-rata | 10.7% | of net rev | 3,587,500 | Shared overhead · genuinely unallocatable |
Organisational Structure
Direct FTEs · Operations + Commercial (413 people)
| Function | FTEs | Avg Cost/Month | Total Monthly (AUD) |
|---|---|---|---|
| Drivers | 66 | 5,800 | 382,800 |
| Warehouse Ops Managers | 14 | 13,500 | 189,000 |
| Warehouse Storekeepers | 13 | 6,800 | 88,400 |
| Warehouse Forklift | 15 | 4,800 | 72,000 |
| Warehouse Labour | 34 | 3,400 | 115,600 |
| Distribution Supervisors | 8 | 16,000 | 128,000 |
| Production Line | 85 | 3,800 | 323,000 |
| Production Maintenance | 12 | 8,500 | 102,000 |
| Production Supervisors | 8 | 16,500 | 132,000 |
| QC / Lab | 10 | 11,000 | 110,000 |
| KA Supervisors | 3 | 18,000 | 54,000 |
| KA Salesmen | 27 | 15,500 | 418,500 |
| WS Supervisors | 8 | 16,500 | 132,000 |
| WS Salesmen | 37 | 10,000 | 370,000 |
| WS Merchandisers | 36 | 7,200 | 259,200 |
| PS Telesales | 22 | 7,500 | 165,000 |
| PS Supervisors | 3 | 13,000 | 39,000 |
| Customer Service | 12 | 8,500 | 102,000 |
| Total Direct | 413 | 3,182,500 |
Indirect / Corporate (113 people)
| Department | FTEs | Avg Cost/Month | Total Monthly (AUD) |
|---|---|---|---|
| Executive / C-Suite / IR | 6 | 50,000 | 300,000 |
| Finance & Accounting | 24 | 15,500 | 372,000 |
| HR & Admin | 12 | 12,000 | 144,000 |
| IT & Digital | 14 | 17,500 | 245,000 |
| Marketing team (brand, digital) | 11 | 16,500 | 181,500 |
| Supply Chain / Planning / Procurement | 15 | 16,000 | 240,000 |
| R&D / QA / Food Safety | 22 | 14,500 | 319,000 |
| Legal / Compliance | 4 | 22,000 | 88,000 |
| Commercial Ops / PMO / Strategy | 5 | 19,000 | 95,000 |
| Total Corporate | 113 | 1,984,500 |
Key Model Assumptions
1 · Revenue & Trade Discounts
2 · COGS · Material only (35-45% per category)
3 · Manufacturing Overhead (NOT in COGS)
4 · Distribution Operations
5 · Commercial · Sales Force (channel-locked)
6 · Commercial · Marketing
7 · Indirect / Corporate (113 FTE)
8 · Non-People Corporate Overhead
9 · TDABC Allocation Principles
10 · P&L Bottom-up Reconciliation
Implementation Project
Project Phases
Phase 1 · Discovery & Scoping
- Kick-off workshop with COO / CFO / Supply Chain
- Map current cost structure & P&L hierarchy
- Define profitability dimensions (customer / product / channel / DC / region)
- Agree cost objects and allocation philosophy
- Inventory of source systems (SAP, WMS, TMS, HR, SFA)
- Sign-off scope & success criteria
Phase 2 · Data Integration
- SAP S/4HANA connector · GL, AR, sales, CO-PA
- WMS / TMS feeds · km, stops, time, waybills
- Branch headcount + fully-loaded cost build (GOSI, EOSB)
- Customer & product master harmonisation
- Financial / statutory files for audit reconciliation
- Daily incremental refresh pipeline
Phase 3 · Cost Pool & TDABC Build
- Define cost pools: Mfg, Distribution, Commercial, Corporate
- Time-Driven rates per activity (AUD/km, AUD/visit, AUD/order, AUD/unit)
- Per-category COGS calibration (vs single blended rate)
- Channel-locked sales force allocation rules
- Shared overhead methodology (rev pro-rata where no driver)
- Reconcile bottom-up model to audited P&L
Phase 4 · Allocation & Validation
- Allocate cost pools to customers / products / channels / DCs
- Whale curve analysis · identify loss pool
- Multi-dim drill-down (customer × product × channel × DC)
- Sanity checks vs channel and regional benchmarks
- Finance validation per dimension
- Historical backtest on 3 prior months
Phase 5 · Dashboard & UAT
- Branded CostCTRL dashboard deployment (cloud-hosted)
- Role-based access: COO, CFO, Commercial, Supply Chain
- KPI cards, Whale Curve, Multi-dim, Heatmap, Cost Drivers
- AI Insights · automated opportunity detection
- User training sessions (max 4 × 90 min)
- UAT with Finance + Commercial + Operations teams
Phase 6 · Go-Live & Monthly Operations
- Production cut-over & first live monthly close
- Monthly refresh cycle (day 5 close → day 7 dashboards live)
- Steering committee · 3 sessions in first quarter
- Continuous improvement backlog
- Annual re-benchmarking of rates & drivers
- Licence + support (SLA, ticketing, enhancements)