A primer on coding in sport

A question often raised is: what is sports performance analysis?

Put quite simply, it is the observation and recording of events that occur during matches. The purpose of performance analysis is to provide information and evidence that supports decision making on how to improve the performance of teams and individual players.

In the world of sports analytics, the term 'coding' relates to the actual activity of recording these events that occur during a game.

Coding in high-performance sport

High-performance teams have many people coding matches so that they have access to a complete dataset of player and team performance attributes.

The following image is taken from the World Rugby Sevens event in 2014 showing performance analysts accessing and swapping coded data after a game.

Performance analysts swapping video after a rugby sevens game

In these environments, coding includes events such as:

Match events
Goals scored, circle entries, shots, penalty corners, turnovers, overheads, key umpiring decisions, disciplinary cards, and a range of other simple event types
Tactical execution
What’s happening in key areas of the pitch, free’s taken, and any other tactical focus points that the coach has been working on with the team
Player involvement
Typically, there will be a code for each player, and the person who does the coding records when each given player has a match involvement.

Each event may have additional ‘metadata’ attached to it. For example, player involvements might include additional information to identify positive versus negative involvements, or involvements in set plays. A coded goal for event might include information on how the goal was scored.

These larger, high-performance sporting organisations have the money and resources to invest in such large coding undertakings. They also have support coaches who can make use of the data outside of match day.

Here is one way that Barcelona FC use that data to support off-field coaching involvements.

"Before we sign a player, we must examine how he solves problems in the contexts he will face at Barcelona.", Raul told me, "It has become popular to categorize players using data without taking into account these contexts, but this distort realities."

The benefit of having comprehensively coded data for matches is that it allows these organizations to access information and answer questions very quickly. For example, if Barcelona was looking to bring on a new attacker, they could very quickly access video footage of that player’s involvements in certain types of attacking situations.

Without coded data, they would need to sift through hundreds of hours of video just to find the types of situations they were interested in.

Coding for match reporting

It's unrealistic to think that a local soccer club has the time, money, and other resources to run as comprehensive of a performance analysis program as Barcelona FC. I would think of coding at club level being for 2 primary reasons: match reporting and video playlists.

Match reports are useful as they provide data to back up gut feelings about a team’s performance.

I've been involved in matches where we lost and the team felt as though they had played poorly whereas when we looked at the data, it showed that we had dominated our opponent but didn’t do as good of a job in converting our chances.

In these situations, having the data can be useful when setting things such as a training focus for the week.

You don't need to have sophisticated software to record match events. Here's an example of coding a basketball match using pen and paper.

Pen and paper coding of a basketball game

Having this information makes it easy to do some simple analysis such as determining success when attempting 3pt shots. Take a photo of the sheet after each game and you’d have easy access to your match reports from across the season from your phone.

You can also go a step further and create a template to standardize the manual coding exercise. Here is a template I created to record field hockey events using the “Goal, Opportunity, Threats” methodology outlined by Ric Charlesworth in his 2001 book titled The Coach - Managing for success.

A standardized template for capturing match events

Combining coded match data with video

A real benefit that comes from having digitized coding is when you also have captured video. Think of a situation where your team is recording video of your match each week. That’s 70-90 minutes of match video per week for around 20 weeks. So that’s about 30 hours of video you’ve got lying around.

Let's say you are about to play the grand final and you want to show a few clips to your team to get them thinking about your style of play and certain things that your opponent does. It would be a painful exercise to have to sift through 30 hours of video, loading each video one after the other, and then scanning each one manually to find individual clips.

This is where modern performance analysis software such as Matchlib play a role. Allowing users to link and align captured events with video in their library, makes it quick and easy to locate the exact clips they're looking for.

The following image shows a coded match in Matchlib with a series of dots that represent events and the video at the top of the page.

Matchlib screen showing combined data and video view


This article has provided a solid overview of the purpose of coding as well as explaining how it is done through the use of the Matchlib tools.

While it is feasable to only capture video, the overall health of your library and, by association, the value of video in your coaching program is determined by the quality of both the video and data you have.

For a detailed walkthrough of using the Matchlib coding tool, read our step-by-step coding guide in the Docs section of the site