Matchweek Load

NPL squad · GPS & session output · 13‑week season block

ⓘ
Full‑tier preview ⓘ Sample club · Demo data Get in touch →

Players to review this week

Ranked by what’s most likely to affect training or selection decisions

Total distance — selected session

Squad Flagged this week Squad average

High-speed running & sprint distance

HSR distance (>19.8 km/h) Sprint distance (>25.2 km/h)
Two thresholds on the same speed scale, not two separate buckets — every sprint metre is already counted inside the HSR total, since 25.2 km/h sits above 19.8 km/h. Sprint is shown alongside HSR to flag true top-end exposure specifically, not as an additional distance on top of it.

Weekly high-speed output — squad median

HSR, m/min Sprint, m/min
Median individual rate across players active that week, not a squad total — so this tracks what a typical player was asked to do, not how many players trained

Output by position group — selected session

Avg HSR distance Avg sprint distance
Averaged within each broad position group, not against the whole squad — defenders and forwards have very different normal HSR output

Training Considerations This Week

GPS, wellness, testing and data-quality signals together, including the lower-priority items Squad Overview only counts — a starting point for planning, not a prescription

This week's training exposure vs each player's own normal

Volume and top-end speed are tracked separately — a player can bank plenty of one while missing the other
HSR volume vs own match demand
Top speed touched this week vs own season best
Training-only, match, total weekly and top-up exposure, with the numerator/denominator behind each percentage — sprint distance is already counted inside HSR, never added on top.

Weekly planning

Pick a day in the microcycle to bring the most relevant considerations to the top — nothing is hidden, only reordered
Planning for
Status
Category

Considerations

Compare
 

 

 

Cross-domain read

GPS, wellness and testing considered together — the interpretation, before the supporting charts below

Session-to-session volume

This session Rolling average (own normal)

High-speed running & sprint exposure

HSR distance, m (>19.8 km/h) Sprint distance, m (>25.2 km/h)
Raw metres per session, not a rate — sprint is already counted inside the HSR total, not additional to it. The chart above this one may be showing a per-minute rate instead, depending on the volume metric selected.

Most recent match — first half vs second half

Technical — most recent match

Wellness — block trend

Readiness score Own early-block average
Composite of sleep quality, muscle soreness, fatigue and mood/stress — 0–100, higher is fresher

Physical testing — baseline vs retest

Individual benchmarks

Season, recent form and personal best — each against this player's OWN history, with sample-size rules applied before a figure is shown

Speed exposure

Top-end speed and genuine sprint touches — tracked separately from HSR volume above

Consideration history

Current and previous training considerations for this player — whether each improved, persisted, recurred or resolved

Timeline

Sessions, wellness, testing and staff notes together, in one chronological view
Show

Staff notes

Tactical role, planned loading modifications and other context — added by staff, not derived from data
Add a note
Privacy & retention: wellness responses shown here come from the currently loaded dataset only — this static page keeps no additional copy of them beyond this browser's local view, and has no server-side access control, audit log or deletion/retention policy. Treat this as a prototype of what club-level permissions and retention controls should cover, not a substitute for them (see the Multi-Club Readiness notes for what a real deployment needs).

Worth a look

Players whose reported wellness has genuinely dropped from their own normal — not just low in absolute terms

Squad readiness — 5‑week trend

Squad average readiness Block-start average
Weekly average of the composite readiness score across all reporting players

Readiness by player — selected session

Squad Worth a look Squad average
Some players simply report a little lower or higher than others as their own normal — hover a bar for that player's own early-block average. Highlighted players are flagged against their OWN normal, not the squad line.

Individual wellness trends

Each dimension on its own, not just the composite — a drop in composite readiness can come from one factor alone (e.g. sleep) while the others stay normal, which the composite score hides

Notable changes since baseline

Retests that moved beyond normal test-retest noise for that metric, across any metric — tap a flag's threshold badge for the reliability figure behind it

Baseline vs retest — by player

Baseline Retest

Baseline vs retest — by position group

Baseline Retest

Longitudinal trend & block comparison

Built to show every testing phase on record, not just baseline vs retest — currently plots whichever phases exist in this dataset

Metric Guide & Reliability

CV (between-day measurement noise)
How much a retest can move on its own from normal day-to-day measurement noise. This squad only has one baseline+retest pair per player each — not enough to calculate its own test-retest CV — so each figure below is sourced from a published between-day reliability study in a comparable athlete population instead. On its own, exceeding this figure once is not treated as evidence of a real change on this page — see MDC95 below.
Countermovement jump height
CV ±5% — Lonergan et al. 2025, elite academy soccer players, 8-day inter-day reliability, International Journal of Strength and Conditioning.
10m sprint time
CV ±3.1% — adolescent rugby union/league players, Leeds Beckett University reliability study.
30m sprint time
CV ±2.0% — same reliability study.
Reactive strength index
CV ±7% — a conservative floor set above the 5.4–6.9% intraday CV reported from force-plate drop-jump testing (hurling players, VALD ForceDecks); between-day RSI reliability is sparsely reported in the literature, so treat this as the noisiest of the four.
MDC95 (minimal detectable change, 95% confidence)
The bar a retest actually needs to clear before it's called "beyond measurement error" with 95% confidence — the standard Hopkins/Weir formula, MDC95 = CV × 1.96 × √2 (≈ CV × 2.77). This replaces an earlier, looser version of this page that flagged a change as soon as it passed the raw CV once, which overstated confidence — a single retest moving by "about the published CV" is still well within plausible measurement noise.
Smallest worthwhile change (SWC)
A separate, practical-importance bar — calculated from this squad's own data (0.2× the between-player spread at baseline), shown once at least 4 baselines are on file for that metric. SWC and MDC95 are independent: a change can clear one without the other. A flag needs to clear both SWC and MDC95 to reach the Testing tab; the hover note on each flag says whether it cleared SWC as well.
Protocol & equipment
Not captured in this dataset — only a date and phase label per test. A real deployment should log tester, equipment, exact protocol and trial number alongside each result, since comparing across different equipment or protocols isn't a reliable comparison regardless of how the CV/SWC/MDC95 figures are read.

Data quality overview

Where this session's numbers come from, what's excluded and why, and what's still open — the traceability layer behind every chart and flag elsewhere in this app

Position Compare

First half vs second half, block totals and top speed — by position group. Single match by default, so read a swing alongside that player’s own multi-match pattern before calling it a trend. more ⓘ
Select up to 5 players below to compare them directly

—

Flexible comparison

One metric at a time, against whichever baseline you pick — the table above audits a single match's half-split; this is for everything else
Compare

Average Match Demands

Typical match demands for players completing 75+ minutes — season benchmark for running volume
Total distance by match · dashed line = season average

Season Physical Output

Match-by-match trend across the season, each against its own average — total distance already has its own chart above, so it isn't repeated here

HSR Distance

>19.8 km/h

Sprint Distance

>25.2 km/h

Total Distance and HSR by Match

Every match this season, coloured by competition type — use this to spot matches that don't fit the usual relationship between the two, not just high/low overall. A match sitting high on distance but low on HSR reads as a lower-intensity, more sustained game; low distance but high HSR reads as a shorter, stop-start, high-intensity one — useful context when planning the week after either type.

Metric Guide

Total Distance
Total metres covered, 75+ minute outfield players only (keeps the benchmark to genuine match exposure).
HSR
Distance covered above 19.8 km/h.
Sprint
Distance covered above 25.2 km/h — a higher threshold on the same scale, so sprint metres are already included within the HSR total above, not additional to it.
Competition type
Inferred from each session's logged competition/opposition text (League / Cup / Pre-season) — not a separate result entry.

Role & permissions

What each viewing role sees across this app — and the limits of what a front-end switch like this can actually enforce
This dashboard uses three permission TIERS rather than five separate job titles, because that's where the actual behaviour splits: Coach covers head coaches and other coaching staff — composite readiness, flags and short summaries built to be scanned fast, with the raw sleep/soreness/fatigue/mood scores and baseline-vs-retest detail hidden. Performance & Medical covers sport science, S&C and medical staff together, since all three need the same raw diagnostic detail to do their jobs — full wellness sub-scores and testing breakdowns by player and position. Admin sees everything Performance & Medical does, for oversight. Changing this here is the same switch as the "Viewing as" control in the header — they stay in sync.
This is a front-end scaffold, not real access control: the complete dataset is embedded in this page's source regardless of which role is selected, so switching role only changes what gets rendered — like hiding a div with CSS, because that's exactly what it is. A real multi-user deployment needs the server to withhold the restricted detail from a Coach-tier session in the first place, not just hide it in the browser; see the Multi-Club Deployment Readiness notes for what that would take.

Squad roster

Each player's own recorded position — used across every chart, average and comparison in this app unless a specific match sets its own (see the Position action on that match's row in the Session Log)

Position groups

Which positions are compared together on the Flexible Comparison panel (Position Compare tab)

Weekly training schedule

Which match-day-relative session type falls on each day of the week (used by Training Considerations)

Speed thresholds

The speed definitions used for HSR and sprint distance across this dashboard
These relabel how HSR and sprint distance are described here — they don't recompute anything. Your GPS provider's own export already splits distance at fixed speed bands, so set these to match your provider's actual definitions rather than this app's defaults.

Club branding

Used on printed/exported Staff Reports — the one setting (besides position groups and the weekly schedule) that persists between visits on this device

About this deployment

Everything in this app runs client-side in your browser — the position groups, weekly schedule, speed thresholds and club name above are saved to this browser's local storage on this device only (never sent anywhere, and not shared with any other device or user). A squad roster change, a per-match position override or an Exclude/Restore on the Session Log take effect immediately but only for as long as you keep using this tab — reopening the bundled file fresh starts again from the sample data. Uploading your own data replaces the bundled sample entirely for this browser tab; nothing is uploaded to a server. This is a single-user prototype, not a multi-club or multi-device product — see the Reports tab's data-source note and the Session Log's Data Quality Overview for what's actually loaded right now.

How this works at your club

Four steps from what you already collect to what your coaches actually see.

01
Keep your current systems
GPS · wellness · testing
02
We configure it around your club
Your thresholds · players · positions · benchmarks
03
Your data becomes useful information
Individual trends · match demands · exposure · flags · cross-domain context
04
Coaches get what matters
Clear reporting and practical considerations for planning, selection and return to performance

You don’t need to replace your GPS provider or change how you collect data. This builds the reporting and interpretation layer around what you already have.

This is the Full‑tier experience — get in touch to see how Basic compares for your club.

About this data. This preview uses a synthetic sample squad, built to show how the dashboard reads GPS, wellness and testing together. Thresholds shown: high-speed running >19.8 km/h, sprint >25.2 km/h — a live deployment is configured to your own provider’s thresholds, position groups and squad, not a generic default. Either tier is Emma actually reading your data every week — the dashboard is how the findings reach you, not the thing you’re paying for.