Requiring and exporting jersey sizes
Make jersey sizes mandatory at registration and export season totals for your kit supplier.
Overview
Teams record a jersey size for each of their players on their own roster. League OS rolls those up per season so you can hand your kit supplier one order instead of chasing every team for a spreadsheet.
Two pieces work together:
- A per-season Require jersey sizes setting that blocks a team from applying until their roster is complete.
- A Jersey sizes page that totals the sizes across every registered team, with a CSV export.
Sizes are optional unless you turn the requirement on, so leagues that don't order kit can ignore this entirely.
Requiring sizes at registration
- Open the season and click Season settings.
- Select the Registration tab.
- Tick Require jersey sizes.
- Save the section.
From then on, a team submitting an application for that season is rejected until every active player has a size, with an error naming how many are still missing. The team fixes it from their own roster and resubmits.
The setting defaults to off, and turning it on does not affect applications that were already submitted or approved.
What the requirement does and doesn't cover
- Players only. Coaches, managers, and other staff are never required to have a size.
- Active players only. Inactive and suspended players are ignored.
- A team with no roster can still apply. This is deliberate — it keeps public self-registration working, where the team is created at the moment of applying and has no players yet. Those teams will show up on the Jersey sizes page with players missing sizes once they build their roster.
Viewing size totals
Open Jersey sizes from the Season section of the sidebar. You'll see:
- Order totals — a count per size across every registered team, ordered by kit size rather than alphabetically, so S comes before M and 2XL before 3XL.
- By team — a row per team with a column for each size in use, how many players have no size, and the team's total player count.
A note under the totals tells you how many active players across the season still have no size. Those players are not counted in the totals, so the totals always reflect what you can actually order today.
The page is visible to league admins and owners only, since it exposes every player's body size across the league.
Which players are counted
| Included | Excluded |
|---|---|
| Active players on registered teams | Coaches, managers, and other staff |
| Teams with active or inactive registration status | Teams whose registration is suspended |
| Inactive, suspended, and removed players | |
| Teams registered in a different season |
If you have the sport switcher set to a specific sport, the page narrows to teams registered in that sport.
Exporting for your supplier
Click Export CSV on the Jersey sizes page. The file mirrors the on-screen table:
| Column | Contents |
|---|---|
| Team | Team name |
| Division | The team's division in this season |
| One column per size | How many players wear that size |
| No size | Players on that team with no size recorded |
| Players | Total active players on the team |
The final row is labelled All teams and carries the season-wide totals — that's the row your supplier needs.
Only sizes that at least one player wears get a column, so a season with no youth teams won't have empty YS through YXL columns cluttering the file.
Live roster vs. registration snapshot
The Jersey sizes page reads each team's current roster, not the roster captured when they registered.
This is intentional: a kit order needs the squad as it stands today, and a snapshot taken at registration goes stale the moment a team adds a player. Applications still store the sizes as they were at submission, so you keep a record of what was true at registration — but the totals and the export always reflect the live roster.
Practical consequence: export as close to your order date as you can, and re-export if teams are still adding players.
Edge cases
- The page says no sizes recorded yet — no team has filled any in. Turn on Require jersey sizes for the season to force it at registration, or ask teams to fill them in from their roster.
- Totals look lower than your player count — players with no size are excluded from the totals. Check the missing count under the totals and the No size column to see which teams to chase.
- A team registered late doesn't appear — confirm their registration status isn't suspended, and that they're registered in the season you're viewing.
- You turned the requirement on mid-season — already-approved teams are not retroactively blocked. Use the No size column to find and chase them.
Was this helpful?
Thanks for the feedback!