1. Overview
With app version 1.80 we are introducing the Custom Metadata feature. This feature enables teams to define, organize, and tag session-specific information beyond standard baseball tags and associate these tags with Trackman ball tracking data in pitching or hitting sessions.
Benefits
-
Tailor tagging to match specific team workflows or drills.
-
Capture additional metadata to support player and technique development.
-
Sync metadata across all organization accounts and devices automatically.
-
View and export custom metadata alongside other session data in CSV and API formats.
Custom Metadata is structured using three levels:
-
Set – a collection of categories used together in a session e.g., Command Work.
-
Category – a named group of tags (values) e.g., Grip Type.
-
Tag – the selectable tag (value) inside a category e.g., 4-Seam. This is what will be associated with the tracking data.
A Team Portal user can define multiple sets, and each set can include several categories. Changes made in the Team Portal automatically propagate to all connected iPads when the Baseball App starts or when initiating a force sync inside the App.
2. Creating and Editing Custom Metadata in the Team Portal
All management of custom metadata is done via the web based Team Portal → Management menu and requires the logged in user with the role Admin or Analyst.
Manage Categories and Tags
A category defines a group of metadata to be collected - for example “Pitch Type” or “Grip Type” and the category contains the possible tags (values) that can be selected together with a given tracking event. There are two types of categories
-
System Category: These cannot be changed. The list of tags within the category can be reordered, but not edited/removed.
-
Non-System Category: These can be edited/removed and/or tags within the category can be edited/removed/reordered.
The Team Portal comes with a pre-built set of non-system categories that each contain a handful of tags that may be relevant during various phases of player development. This pre-built set can be edited/enhanced or new categories and tags can be created.
Create a new category and associated tags:
-
Tap “+” to add a new Category such as Grip, Ball Weight, or Intent. Names do not have to be unique. This will be shown in the App when no selection inside a category has been made.
-
On the right-side pane create tag(s) for this category (e.g., 2-Seam, 4-Seam) by entering the following:
-
Unique ID: The system will enforce uniqueness across all tags in an organization. This ID is provided in API (see below)
-
Name: Appear in the tagging panel in the App when the category is expanded, and in the collapsed view if selected.
-
Abbreviation: Appear in the tagging panel in the App when the category is collapsed.
-
Symbol (Optional): Appear on select graphical charts that display a baseball; for example movement or zone.
-
-
The order of how tags appear in the App tagging panel for a specific category can be changed by clicking the up/down arrows.
|
Button to add a new Category on the Categories panel. |
|
|
The Grip category has a special built-in behavior: The possible values (e.g., 2-Seam, 4-Seam) depend on the selected Pitch Type (e.g., Fastball). This can be used to define and tag desired pitch sub-type data. The system has pre-built values for Fastball and Slider; these can be edited and subtypes for all other pitch types may be defined.
Manage Tag sets
A Tag set defines the collection of categories and associated tags available during a pitching or hitting session and the order in which categories appear in the App’s tagging panel. Tag sets typically relate to the type of practice session such as “Command Work” or “Batting Practice”.
The Team Portal comes with a handful of pre-built tag-sets; the “Legacy” tag-set mirrors the functionality of the now defunct “Flags” used in App version < 1.80. All pre-built tag-sets can be edited and/or new tag-sets created:
-
Tap “+ Create tag Set” to define a new Tag set:
-
Tag set name (e.g., Pitching Bullpen)
-
Which session type the tag set will be used - pitching or hitting. LiveAB will merge tag sets coming from both session types.
-
-
The Tag-set screen contains two sections:
-
The left pane is the list of all available categories previously defined in the category management section.
-
The right pane is the list of categories (and their associated tags) that are part of the tag set
-
-
The order of how categories appear in the App tagging panel can be adjusted by using the up/down arrows.
Rules & Notes
-
A Category (and associated tags) can be used in many tag-sets.
-
Categories are defined once; updates propagate to all sets that reference them.
-
Limit each category to approximately 10 tags for mobile usability.
-
Tag value names can include only uppercase letters, numbers, and underscores.
Syncing to Apps
Updates become available on iPads when users:
-
Restart the app,
-
Start a new session, or
-
Trigger a Manual Sync from the in-app menu.
3. Using Custom Metadata in a App Practice Session
Selecting Metadata at Session Start
-
When creating a new session, select a Metadata Set from the dropdown.
-
The selected set defines which categories and values appear in tagging view.
-
The previously used set will pre-fill next time on the same iPad.
Tagging During a Session
-
Metadata tagging is available during live or warm-up pitches.
-
The tagging panel appears on the right side of the main dashboard.
-
When Live is toggled, the first tag category (typically Pitch Type) expands first; other categories remain collapsed for clarity.
-
Selecting a tag collapses that category and expands the next one.
-
Categories can be expanded or collapsed manually; layout preference is remembered.
-
If a Pitch Type is changed, dependent categories such as Grip reset to avoid invalid pairings.
-
Categories and tags within a category appear in the order they are defined in Team Portal
-
It is possible to pre-tag an upcoming pitch using the Next pitch.
It is also possible to change the tag-set used during a session - the current set is displayed just below the live/warm-up toggle. Select the (…) menu and the right side panel will update. Existing tagged ball data will not change but subsequent ball events can only be tagged with the new definitions of the tag-set!
Tagging previous/historical sessions
-
Previous sessions can be edited using the tag-set definition when the session was originally captured.
-
If a tag-set definition is changed on the TP and/or you want to use a different tag-set for a previous session, then use the navigation menu (…) ->change tag-set action in the app to apply the new tag-set to the session and then edit the desired pitched/hits.
4. Adding custom free-text labels as meta data
In addition to defining and using a fixed set of tags/values, you can also attach a free-text tag/label to any tracking data by tapping “+ Add label” in the tagging pane. This opens a temporary panel where you can add short additional commentary/advice to that specific ball event. This could either be instructions/reminders for the player (for example “Spin like a football”) or other contextual useful data (high winds, etc).
Rules for how free text labels are handled by the app:
- Labels are specific to the session type. Pitching, Hitting and LiveAB each have their own set of labels.
- Labels can be up to 45 characters and may only contain alphanumeric characters and spaces.
- When entering a label in the tagging panel, a list of typeahead matches will appear. If no match is found, the system will create a new label when you save your entry. Be careful with typos or extra spaces, as they may create duplicate labels.
- You can remove a label by re-opening the label panel, and tap the selected label to “unselect”.
- Labels will sync to the organization cloud AFTER a session has been uploaded. For example: if iPadA creates labelA1, labelA2 and iPadB creates labelB1, labelB2 then after each app has synced their sessions the organization will have all four labels (labelA1, labelA2, labelB1, labelB2) visible in the TeamPortal and synced down to all iPads at their next subsequent cloud sync.
|
Tagging pane without an added label for the selected ball event |
|
|
In the Team Portal
You can use the Team Portal to pre-populate labels and/or to cleanup/manage a potentially long list of labels:
- Define labels in Team Portal for each session type. These labels will then sync to the apps when iPads connect to the cloud and will be available as options for the relevant session type.
- You can delete labels in the team portal - for example to remove similar worded labels and/or typos.
Preview of the Labels management page showing all labels for all session types
About Editing/Updating Labels:
Editing/removing labels in Team Portal does not change any already tagged ball events. All labels are free-text content attached at tagging time and stored as free-text meta data with the ball data.
To change any text label for already synced or historical sessions, you must edit the session and re-add the new label.
5. Exporting Metadata
After the session:
-
Custom tag values appear in the CSV export under a single column named CustomTags.
-
Each ball event’s tags are concatenated using “|” delimiters, for example for Grip:4-seam, Ball Weight: 6Oz, Pitch Quality: Plus, Pitch Intent:Upper Left
GRIP_4S|BW_6OZ|PQ_PLUS|PI_UL -
Free-text labels will appear in a separate column “CustomLabel”. This requires an update to your org’s CSV configuration - contact your account manager for next steps.
-
The same data is exposed via the post-session API in JSON as:
"customTags": {
"freeText": "Spin like a basketball",
"tags" : [
{
"category": "Grip",
"tag" : "4S",
},
{
"category": "Ball Weight",
"tag" : "6OZ",
},
{
"category": "Quality",
"tag" : "PLUS",
},
{
"category": "Intent",
"tag" : "Upper Left",
}
]
}
In addition, the latest applied tag set name be exposed through the:
/api/v1/data/practice/session/{sessionId} endpoint
under the tagSet property.
For instance:
"tagSet": "Pitching BullPen"
6. Default Tag-Sets and Categories (Pre-Loaded)
To provide immediate usability, default sets and values are available for all organizations.
Set Name |
Categories Included |
Usage |
| Pitching Bullpen | Pitch Type (System Category), Grip, Quality, Intent | Standard pitching session |
| Command Work | Pitch Type, Grip, Ball Weight, Intent | Location-based pitching |
| Legacy Pitching | Pitch Type, Pitch Set, Legacy Flags (A–X) | Backward compatibility |
| Batting Practice | Hit Type(System Category), Hitting Drill, Batter Side | Standard hitting |
| Legacy Batting | Hit Type, Batter Side, Legacy Flags | Backward compatibility |
7. Custom Metadata for Videos
We have enhanced the ability to attach tags to video recordings captured as part of a session: use the Teamportal video target menu to define the set of allowable values for a video tag (example “Cage1”, “Lane3”, “Backfield”, “Lane3 PitcherSide”,”Lane3 PitcherBack”).
When you start a session and connect to a specific camera, you then can assign each camera a separate tag that described the context and these tags will be available in the Video API.
8. Key Notes & Future Enhancements
-
This feature is available in App version >=1.80. Devices with App version < 1.80 will not synchronize any sessions captured using custom metadata.
-
To ensure backwards compatibility, CSV file export format will not change for any customers/organizations who have been created prior to version 1.80. Contact support to request your CSV file format to be updated with custom metadata as described above.