> For the complete documentation index, see [llms.txt](https://docs.gymart.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gymart.org/competitions/index.md).

# Competitions

Competitions group gymnasts within a level for ranking and scheduling. This page explains the three concepts and how they fit together.

## Key Concepts

### Competition

A competition is the ranked unit within a level. It combines a level with an age group. Gymnasts in the same competition are ranked against each other.

For example, "Level 5, Ages 8-9" is a competition. Rankings, awards, and score exports all belong to this competition.

### Age Group

An age group defines a birth date window. A gymnast is eligible for an age group if their birth date falls within that window.

* **All Ages** (the default) means no restriction: every gymnast in the level competes in the same competition.
* **Custom age groups** are defined by an earliest and a latest birth date. For example, born between January 1, 2014 and December 31, 2015.

Eligibility and placement are the same thing. If a gymnast's birth date falls in the window, they compete and are ranked in that competition. Age is shown for information only and is not used in scoring.

### Subdivision

A subdivision is a scheduling sub-group within a competition. When you have more gymnasts in a competition than can fit in one session, you split them into subdivisions and assign each subdivision to a different session.

All gymnasts in the same competition are ranked together regardless of which subdivision they are in. Subdivisions affect when gymnasts compete, not how they are ranked.

Every competition starts with one subdivision containing all its gymnasts.

## Two Structures

### 2-Layer: Level and Subdivisions Only

All gymnasts in the level compete in one "All Ages" competition. If needed, they are split into subdivisions for scheduling.

```
Level 5
  All Ages (one competition, all gymnasts ranked together)
    Subdivision A  →  Session 1 (Saturday AM)
    Subdivision B  →  Session 2 (Saturday PM)
```

Use this when age does not determine rankings. See [How to create subdivisions](/competitions/create-subdivisions.md).

### 3-Layer: Level, Age Groups, and Subdivisions

Each age group is its own competition with its own rankings. Within each competition, gymnasts can be split into subdivisions for scheduling.

```
Level 5
  Ages 8-9 (competition, ranked separately)
    Subdivision A  →  Session 1
    Subdivision B  →  Session 2
  Ages 10-11 (competition, ranked separately)
    Subdivision A  →  Session 3
```

Use this when gymnasts should be ranked against others in their own age range. See [How to create age groups](/competitions/create-age-groups.md).

## Decision Guide

| Question                                               | If yes           | If no                   |
| ------------------------------------------------------ | ---------------- | ----------------------- |
| Do gymnasts of different ages need separate rankings?  | Use age groups   | Leave as All Ages       |
| Do you have more gymnasts than can fit in one session? | Add subdivisions | One subdivision is fine |

Not sure which to use? See [How to decide: age groups vs subdivisions](/competitions/choose-age-groups-vs-subdivisions.md).

## Score Settings

Competitions inherit score settings from their level by default. You can override settings on individual competitions if, for example, one age group needs a different tiebreaker.

## Steps

1. [Decide your structure](/competitions/choose-age-groups-vs-subdivisions.md)
2. [Create age groups](/competitions/create-age-groups.md) if using the 3-layer approach
3. [Create subdivisions](/competitions/create-subdivisions.md) to split gymnasts across sessions
4. [Assign subdivisions to sessions](/competitions/assign-subdivisions-to-sessions.md)

## Related

* [How do I configure competition levels?](/levels/index.md)
* [How do I set up scheduling?](/scheduling/index.md)
* [How to configure individual score settings](/levels/individual-score-settings.md)
* [Glossary](/getting-started/glossary.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gymart.org/competitions/index.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
