# Publish to MeetScoresOnline

> Export your meet results from Gym Art Meets and upload them to MeetScoresOnline using CompleteMeet.

MeetScoresOnline (MSO) is where a lot of USA gymnastics results live publicly. If your meet is registered with MSO, you can push the final scores there with two steps: export a flat file from Gym Art Meets, then upload it through [MSO's CompleteMeet page](https://meetscoresonline.com/completemeet).

The Gym Art Meets export is built to match MSO's CompleteMeet format, so most meets go up without any manual editing of the file.

## Prerequisites

* Your meet is scored in Gym Art Meets and results are verified. See [Understand score status](/scoring/understand-score-status.md).
* Your meet is registered on MSO. You have the **MeetID** and **Meet Password** from when you set it up on MeetScoresOnline.
* You're the meet director or someone with admin access to the meet in Gym Art Meets.

## Step 1: Export the file from Gym Art Meets

1. Open your meet from the club dashboard.
2. Go to **Score Export**.
3. Switch to the **Whole Meet** tab.
4. Under **Export Template**, pick **MeetScoresOnline**. This is selected by default.
5. Under **Format**, pick how you want the file:
   * **CSV**. Produces one file per discipline. If your meet has both WAG and MAG, you'll get two CSVs. This is the right choice if you plan to upload each discipline separately (MSO expects that).
   * **Excel**. Produces one `.xlsx` workbook with one sheet per discipline. Pick this if you want a single file you can review before uploading, or if you plan to split the sheets manually.
6. Toggle **Include date of birth** if your MSO meet needs DOBs. MSO lists DOB as recommended, so leave it on unless you have a privacy reason to omit it.
7. Click **Export**. The file downloads to your computer with a filename like `Spring Classic - MeetScoresOnline - WAG 2026-04-13 14-15.csv`.

## Step 2: Upload to MSO CompleteMeet

1. Open <https://meetscoresonline.com/completemeet> in your browser.
2. You'll see the **Import Meet Scores** form.
3. Fill in the form:
   * **MeetID**. The MSO MeetID you registered with (often an email, for example `yourname@yourclub.org`).
   * **Meet Password**. The password you set when you registered the meet on MSO.
   * **Meet Status**. Pick **Uploading** if you're pushing interim scores during the day, or **Meet Complete** once the meet is done and scores are final.
   * **Clear Scores**. Check this only if you want MSO to wipe previously uploaded scores for this meet before applying the new file. Usually you leave it off so repeated uploads merge cleanly.
   * **Event Type**. Pick **Men's** or **Women's** to match the file you're uploading. Leave it on the default only if your file already has an `Event Type` column set correctly per row.
   * **Choose File**. Select the CSV or Excel file you downloaded from Gym Art Meets.
4. Click **Submit**.

If your meet has both WAG and MAG, repeat the upload once per discipline with the matching file and Event Type.

## What's in the file

The MSO export template writes the columns CompleteMeet expects. You don't need to rename anything.

**Identity columns** (one per gymnast):

* Skill Level
* Session
* AgeDiv
* ClubName
* ClubNum
* CompNum
* FirstName
* LastName
* League ID
* DateOfBirth (only if you toggled it on)

**Score columns** (per apparatus, in the order MSO expects):

* Women's: Vault, Bars, Beam, Floor, plus All Around
* Men's: Floor, Pomml, Rings, Vault, Pbars, Hibar, plus All Around

Each apparatus has both a score column and a placement column (for example, `Vault` and `Vault Placement`). Placements come from the same rankings you see in the leaderboard, including the tiebreakers and bump-on-tie setting you configured per level.

## Timing your uploads

You can upload more than once. The usual rhythm is:

* During the meet, upload with **Meet Status: Uploading** after each session so spectators can follow along on MSO.
* When scoring is fully verified, upload one more time with **Meet Status: Meet Complete**. That flips the meet to its final state on MSO.

If you need to force MSO to forget what you uploaded earlier (for example, you caught a wrong bib number mapping after five uploads), tick **Clear Scores** on the next submit. Everything re-imports from scratch.

## Common stumbling blocks

**The file uploaded but a gymnast is missing on MSO.** MSO matches entries by the identity columns. If the gymnast's ClubNum or CompNum differs between uploads, MSO may treat them as a different person. Keep the bib numbers stable across uploads.

**MSO shows the wrong apparatus order.** The Gym Art Meets template writes Women's in V-B-B-F order and Men's in FX-PH-SR-V-PB-HB order, which is what MSO expects. If you see something different, open the file in Excel and confirm the header row wasn't re-sorted by your spreadsheet app.

**My meet uses both WAG and MAG and the upload complained.** MSO's Event Type is per-upload. Export as CSV (one file per discipline), then do two uploads. For Excel, split the two sheets into their own workbooks before uploading.

**The scores on MSO don't match the leaderboard.** The export is a snapshot of the leaderboard at the moment you clicked Export. If you re-ran tiebreakers or verified new scores after the export, re-export and re-upload.

**Placements are blank.** That happens when the export ran against unverified scores. Wait until all scores in the level show a **Verified** status, then export again.

## What's next

* [View and publish results](/results/index.md) inside Gym Art Meets
* [Export scores](/scoring/export-scores.md) for PDF or custom CSV formats not tied to MSO

## Related

* [Understand score status](/scoring/understand-score-status.md)
* [Handle vault scoring](/scoring/handle-vault-scoring.md)
* [MSO CompleteMeet official help](https://meetscoresonline.com/Help.Complete-Meet)


---

# Agent Instructions: 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/scoring/publish-to-meetscoresonline.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.
