# How to fix a mis-tagged shot

> Correct a tracked match in the Match Tracker editor: change a shot, add or delete shots, and fix how a rally ended.

Source: https://getgoodatbadminton.com/docs/fix-a-shot
Updated: 2026-10-11
Answers: How do I fix a shot that was tagged wrong? / How do I change a rally's outcome? / How do I add a missing shot after tracking? / Can I undo an edit in the tracker? / Should I fix a match myself or request a retrack?

This page shows how to correct a match after it's tracked, whether GGAB tracked it or you did: change what a shot was, add or delete shots, and fix how a rally ended. You do this in the Match Tracker editor on the GGAB website. It isn't in the app, because the editor runs on the keyboard.

## Fix it yourself, or request a retrack?

- **A few wrong shots:** fix them yourself with the steps below.
- **A lot wrong on a match GGAB tracked**, like a missing rally, smashes tagged as drives all through a game, or the wrong player on shots: ask us to fix it. It's free, once per match. See [Request a retrack](https://getgoodatbadminton.com/docs/match-breakdown#something-looks-off-request-a-retrack).
- Retracks are for finalized matches, so ask before you reopen it.
- A match you tracked yourself can't be retracked. Fix it here.

## Open the match for editing

1. Open **Match Tracker** in the sidebar and open the match.
2. A finished match shows **Finalized** in the toolbar. Press **Reopen for review**. Until you finalize it again, the match is hidden from your Insights pages.
3. The toolbar now shows **Review**. You can change any shot or rally here by clicking in the panel on the right.
4. To add shots, press **Back to tracking** too. See [Add a missing shot](#add-a-missing-shot).

## Select a shot

- **Click its marker** on the shot track of the timeline. The panel on the right shows the shot.
- **Shift+↑** jumps to the next shot with an empty field and **Shift+↓** to the previous one. The video seeks to it.
- In **Tracking**, **↑** and **↓** step shot to shot. In **Review**, **↑** and **↓** jump between rallies that ended in an error instead.
- **Shift+click** adds a shot to the selection. Drag across empty track to box-select. **Esc** clears the selection.

## Change what the shot was

With one shot selected, click the right value in each row of the panel:

| Panel row | Options | Key in Tracking |
|---|---|---|
| **Striker** | **A1**, **B1**, plus **A2** and **B2** in doubles | Click only |
| **Shot type** | **Serve**, **Clear**, **Drop**, **Drive**, **Smash**, **Net Kill**, **Net**, **Lift**, **Block**, **Brush** | **Q** to **P** in that order |
| **Shot variant** | Depends on the shot type, see below | **Shift+Q**, **Shift+W** |
| **Contact point** | **Above Tape**, **Above Net Midline**, **Below Net Midline**, **Below Net** | **M**, **,** (comma), **.** (full stop), **/** |
| **Striking side** | **Around-the-head**, **Backhand**, **Forehand** | **S**, **D**, **F** |
| **Direction** | **Straight**, **Middle**, **Cross** | **J**, **K**, **L** |
| **Serve placement** | **Wide**, **Middle**, **Body** (serves only) | **L**, **K**, **J** |
| **Deception / Double stroke** | **No**, **Yes** (not on serves) | Click only |

Variants by shot type: Serve has **Short**, **Long** and **Drive**. Drop has **Reverse Slice** and **Cut Slice**. Smash has **Half Smash**. Net has **Spin Net**. Lift has **Flat Push** and **High Lift**. The other shot types have none.

What to know when you change a shot:

- **Pick the shot type first.** Changing it clears the variant.
- **The variant is optional, except on a serve.** Click the selected variant again to clear it.
- **Net, Lift, Drive and Block carry a contact point.** Each starts with a default when you pick it: Drive **Above Tape**, Net **Above Net Midline**, Lift **Below Net Midline**, Block **Below Net**. Change it if it's wrong.
- **Serves use Serve placement instead of Direction.** Changing a shot to **Serve** sets the placement to **Body**. Changing it away from a serve sets the direction to **Straight** if it had none. See [How to tag a serve](https://getgoodatbadminton.com/docs/tag-a-serve).
- **Each button shows its key in brackets.** The keys work while the toolbar shows **Tracking**: select the shot and press them. In **Review** they're switched off, so click.
- **Wrong moment?** Click the selected marker again and drag it along the timeline, or type a new time in **Time** and press Enter.

### Wrong player on a whole rally

1. Drag across the rally's shots on the timeline. Hold **Shift** to add more.
2. In the panel, under **Swap strikers**, click **A1 ↔ B1** in singles or **Sides A ↔ B** in doubles. **A1 ↔ A2** and **B1 ↔ B2** swap partners on one side.

To give every selected shot the same player instead, use **Set striker for all**.

## Delete a shot

1. Select the shot.
2. Press **Delete** at the bottom of the panel, or press the Delete or Backspace key.

With several shots selected, the first key press asks you to confirm: press Delete again within four seconds, or **Esc** to cancel.

## Add a missing shot

Shots can only be added while the toolbar shows **Tracking**. In Review, the editor says **Shot tagging is locked because rallies have been computed.**

1. In Review, press **Back to tracking**. From Finalized, press **Reopen for review** first.
2. Pause the video on the moment of contact. **←** and **→** step one frame.
3. Check the highlighted side, **Side A** or **Side B**. Press **A** to switch.
4. Press **X** for player 1 on that side, or **Z** for player 2 in doubles. You can also double-click the shot track at that point, then pick the player under **Striker**.
5. Fill in the shot as above.
6. Press **Mark for review**. The rallies, outcomes and score are worked out again from your shots.

> **Rallies are built from your serves**
>
> Each serve starts a new rally. If you delete a serve, or change a shot to or from **Serve**, press **Recompute outcomes** beside the toolbar, or go **Back to tracking** and press **Mark for review**. That rebuilds the rallies, outcomes and score. **Recompute outcomes** replaces any outcome you set by hand.

## Fix how a rally ended

The outcome belongs to the rally, not to a shot.

1. Click the rally on the timeline, in the band above the shots. The panel shows **Rally #** and its number.
2. Under **Outcome**, click **Winner**, **Forced error** or **Unforced error**. The point goes to the right side from whoever hit the rally's last shot.
3. For an error, under **Error outcome**, click **Into the net**, **Out the back** or **Out on sides**. The editor fills in a guess from the losing shot. Change it if it's wrong.

In **Review**, the keyboard is faster:

| Key | What it does |
|---|---|
| **↑** / **↓** | Next or previous rally that ended in an error. The video seeks to the shot that lost the point. |
| **Q** | **Into the net** |
| **W** | **Out the back** |
| **E** | **Out on sides** |

**Q**, **W** and **E** only work with one error rally selected. While you're tracking, they're shot type keys.

A wrong outcome is usually a symptom. Outcomes are worked out from your shots: who serves next decides winner or error, and the shot before the error decides forced or unforced (see the [Glossary](https://getgoodatbadminton.com/docs/glossary)). Look for a missing shot or a wrong shot type earlier in the rally, fix it, then press **Recompute outcomes**.

Every rally needs an outcome before you can finalize. If one is still on **None**, **Finalize** shows how many are left, and **Next rally without an outcome ›** takes you to each one.

## Undo a change

- **Undo:** the curved arrow in the toolbar, or **Ctrl+Z** (**Cmd+Z** on a Mac).
- **Redo:** the arrow beside it, or **Ctrl+Shift+Z** (**Cmd+Shift+Z**).

Undo saves anything waiting first, then reverses your most recent change. Press it again to go further back. Redo works until you make a new change.

## How saving works

1. Every change shows straight away and saves in the background.
2. The editor saves when the video moves into a different rally, after every 50 shots you tag with the keyboard, and when you press **Save** next to the shot counter.
3. The text beside **Save** shows where you are: a count of unsaved changes, **Saving…**, or **All saved**. The shot panel shows **Saving**, **Saved** or **Save failed** for that shot.
4. If a save fails, the button changes to **Retry**, and the toolbar offers **Retry failed saves**.
5. If you leave the page with unsaved changes, your browser asks first. If the tab closes anyway, your changes stay in this browser. Next time you open the match, choose **Keep & save** or **Discard**.

## Finalize again

Press **Finalize**. Any changes still waiting save first. If a save fails, the match stays where it is: press **Retry**, then **Finalize** again.

On your own match, shots with empty fields don't stop you. Rallies with no outcome do.

The match goes back into your dashboard and insights.

## Related guides

- [How to tag a serve](https://getgoodatbadminton.com/docs/tag-a-serve)
- [Manual tracking](https://getgoodatbadminton.com/docs/manual-tracking)
- [Match Tracker](https://getgoodatbadminton.com/docs/match-tracker)
- [Project review and returned matches](https://getgoodatbadminton.com/docs/project-review)
- [Match Breakdown](https://getgoodatbadminton.com/docs/match-breakdown)
