← All posts

Age bands are usually built around age-at-competition — a gymnast is 9, or 10, or 14-and-over, on the day of the event, and that's what puts them in a level. It's the standard approach, and it's what ChalkItUp has always supported.

But we heard from clubs whose whole entry process is already organised around birth year — they don't think in ages at all, they think "the 2012s", "born 2014 or later". Forcing that into an age-at-competition band meant extra manual translation on the admin's part, every single competition. So we built a second mode.

Two modes, chosen per competition

Age mode (the existing default)

Bands are defined by age-at-competition, with a configurable cutoff date. This is unchanged — every competition you've already set up keeps working exactly as it does today.

Birth-year mode (new)

Bands are defined by calendar birth year instead — "2012", "2013–2014", "2015 or later". Gymnasts are matched into a band by their birth year alone, no age calculation involved.

You choose the mode once, per competition, in Settings → Levels & Age Bands (or up front in the setup wizard). Whichever mode you pick, entry, CSV import, and the club self-registration portal all follow it automatically — nobody filling in an entry needs to know or care which mode is active.

ChalkItUp has never stored a gymnast's date of birth, by design — it's a deliberate data-minimisation choice, not an oversight. Birth-year mode doesn't change that: it persists only the 4-digit birth year for each entry, exactly the same way age mode has only ever persisted a derived age, never a DOB.

Setting it up

  1. Choose the mode when creating the competition, or in Settings → Levels & Age Bands at any point before the competition has any levels, bands, or entries.
  2. Define your bands using birth-year ranges instead of ages — "2012", "2013 or earlier", "2015 or later" — however your competition's rules are actually worded.
  3. Take entries as normal. Add Entry, Edit Entry, CSV import, and the club portal all switch to a date-of-birth field in birth-year mode — the gymnast's birth year is derived automatically and that's the only part that's kept.

That's the whole setup. Scoring, ranking, and results work identically in both modes — every band, in either mode, resolves down to the same thing internally: a group of gymnasts and a name. Leaderboards, exports, and rankings never re-derive band membership from age or birth year once an entry is placed, so there's no risk of a result changing meaning after the fact.

Where it shows

Entries & Submissions
In birth-year mode, entry lists show a "Born" column with the gymnast's birth year instead of a computed age — matching how the competition actually thinks about its own levels.
Club self-registration portal
Visiting clubs submitting their own entries see the same birth-year presentation, so a club used to entering "2012s" doesn't have to translate anything into an age themselves.
CSV import
The import template and its help text adjust automatically to whichever mode the competition is in.
Leaderboard & results
Unchanged in every other respect — rankings, exports, and the public leaderboard work exactly the same either way, since band membership is fixed once an entry is placed.

A one-way choice, on purpose

Once a competition has any level, band, or entry, its age-band mode locks and can't be switched. That's a deliberate limit, not a missing feature: because ChalkItUp never stores a date of birth, there's no data left to convert an age-mode competition's existing entries into birth years (or back) after the fact. Deciding up front — before you build out levels and start taking entries — avoids that dead end entirely.

Running entries by birth year already?

Set your competition to birth-year mode from the start and skip the manual age translation altogether. Start a free trial to see it in your own setup.

Start free trial →