DEV Community

Cover image for Data makes the call: 4 sports, 4 lessons for tech teams
KWAN
KWAN

Posted on

Data makes the call: 4 sports, 4 lessons for tech teams

By @vgutierrez, Software Engineering Consultant at KWAN · October 2026 · 9 min read


Introduction

An Instagram ad from Barcelona sent me down a rabbit hole. At the bottom I found four sports making their biggest calls with data models: football, Formula 1, American football and volleyball. Each one holds a lesson for any engineering
team.

The ad came from an institute linked to Barcelona, hiring engineers, data scientists and builders — exactly what I do every day. I have supported Barça all my life.

The institute is the Barça Innovation Hub, the club's innovation arm. Its director, Albert Mundet, calls it one of the leading living labs in southern Europe. The club is a data generator that happens to play football.

That raised a bigger question: how much of a match was settled by a data model before the ball rolled? I went looking in three sports I love and one I am very curious about.

Camp Nou, Barcelona

Camp Nou, Barcelona. Photo: Oh-Barcelona.com, Creative Commons Attribution 2.0.

The pipeline behind all four

The four sports look nothing alike. The sequence inside them is close to the same, and it runs in four steps. The same chain runs at Brentford, at McLaren and in the NFL.

  • Signal: what the sport produces without meaning to. Telemetry, video, scouting reports, biometrics.
  • Data model: the signal becomes a variable. The variable becomes a prediction about what raises the chance of winning.
  • Probability: the prediction becomes a number you can compare. Two options stop being a matter of taste.
  • Decision: a person still signs it. A coach, a team principal or a driver. The data only removes the excuse.

1. Football: the last sport to accept data

Football resisted longer than the others. The coach's instinct and the scout's eye were enough for decades.

A single game is logged as more than 3,400 events, each tagged with the player, the spot on the pitch and the outcome. Feed those events to a model and a new question appears. From this position, with this foot, against this many defenders, how often does the shot become a goal? That is expected goals (xG): the quality of a chance.

Brentford and Brighton: a market nobody had mapped

Matthew Benham, a physics graduate who traded derivatives in the City of London, founded Smartodds, a firm that sells models to professional gamblers. He bought Brentford and turned recruitment into a machine for finding cheap players nobody else priced.

Promotion arrived on 29 May 2021, with a 2-0 win over Swansea in the Championship play-off final (BBC Sport). It was the club's first top-flight season in 74 years. Brentford has never gone back down since: 13th, 9th, 16th and 10th in four seasons (Premier League).

Over its first three top-flight seasons Brentford spent £192M and sold £37M. That £155M net spend ranked 13th in the league, behind only the biggest clubs (Matchday Finance).

Tony Bloom built a betting syndicate before he took charge of Brighton, and ran the same play. Between 2021/22 and 2023/24 the club made close to £300M in profit from player sales alone (Matchday Finance).

Moisés Caicedo cost £4.5M and left for £115M; Alexis Mac Allister cost £7M and left for £55M. That money bought sixth place in 2022/23 and the club's first European qualification in 122 years.

Liverpool: every action gets a value

Liverpool asked a harder question: what is a possession worth? Its research team, led by Ian Graham, a Cambridge PhD in physics, scored every action by how much it raised the chance of a goal. When the club won the Champions League in 2019, nine of the eleven starters had been signed under that criterion (Trym Sørum).

The model paid for itself: Liverpool sold Philippe Coutinho to Barcelona for £142M and bought Virgil van Dijk and Alisson Becker.

Barcelona: the idea outlived the person

Until 2021 Barça ran a sports analytics department led by Javier Fernández, who holds a PhD in artificial intelligence. The department placed four papers at the MIT Sloan Sports Analytics Conference in three years, including a first place in 2019. Fernández left for Zelus Analytics, and in 2025 became Chelsea's director of data science.

The analyst left and the idea stayed: the Barça Innovation Hub, its institutional home, has taken stakes in twelve start-ups since February 2023. Six of them came in the 2024/25 season alone (FC Barcelona).

2. Formula 1: 1.1 million data points per second

Formula 1 is a show of distributed systems. The cars pass 300 km/h. Until this research I had never noticed how much data they generate, or what the teams do with it.

It is also the sport that looks most like my day job, with far less glamour. Both are distributed systems that have to answer before the next lap.

In my work the lap is set by when someone reads the number, not by how fast the pipeline can run.

At a company I work with, a data pipeline pulled reports from a vendor's API every hour, 60,590 requests a month. When we measured who read the output, the raw-data explorer it fed had served one distinct report, four times in its whole life.

We moved the refresh to twice a day: 4,980 requests a month, twelve times fewer. The pit wall does not need the fastest data, only the data that lands before the call.

Each car carries about 300 sensors, generating 1.1 million data points a second. Over a full race that adds up to around 6 billion points (AWS).

Cloud, history and the pit stop

Since 2018 the championship has run on Amazon Web Services (AWS), combining live telemetry with 70 years of race results.

If this driver stops now, where does he come back out? What reaches the pit wall is a window for the stop, and a number for the undercut threat. That is the risk of a rival stopping one lap earlier and jumping ahead.

The stop itself became a record. At the 2023 Qatar Grand Prix, McLaren changed Lando Norris's tyres in 1.80 seconds (Guinness World Records). Mercedes turned that discipline into eight straight constructors' titles, from 2014 to 2021. Red Bull answered with four straight titles for Max Verstappen: 19 wins in 22 races, a record 86.35% (ESPN).

2015 Malaysian Grand Prix, opening lap

2015 Malaysian Grand Prix, opening lap. Photo: Morio, Creative Commons Attribution-ShareAlike 4.0.

Why a 1% gap changes everything

In 2025 qualifying, the gap from pole to tenth averaged 0.96% of lap time. The whole grid fitted inside 2.49%, the tightest field since at least 2021. Formula Dream measured that across 110 dry qualifying sessions.

At that margin a marginal gain stops being engineers' talk. Races are often settled at the pit stop.

3. American football: the decision that became a probability

I fell for American football in the 2023/24 season. My wife brought me in, and Taylor Swift brought her. We follow the Kansas City Chiefs, who won a Super Bowl while my wife was in labour with our first child. Unforgettable, and we have loved the team and the NFL ever since.

Only recently did I start to see how the franchises collect and use data. The first thing that caught my eye was the Next Gen Stats on screen during games. That is where this part of the rabbit hole began.

Formula 1 decides live; American football decides between plays, with seconds on the clock. Its most debated call is the fourth down.

A team gets four attempts to move the ball ten yards; on the fourth it either kicks or gambles on a fresh set. That choice is now a data model.

The NFL and AWS built the Next Gen Stats Decision Guide. Every player wears a chip in his shoulder pads, and the ball carries one too.

The system records the position of all 22 players ten times a second, and the ball 25 times a second. Seventy-five models run on AWS, turning that into more than 200 new data points on every play.

The number you cannot argue with your stomach about

The guide flags a fourth-down "go" only when it is worth at least two points of win probability. In 2017 teams took the gamble 31% of the time; by 2020 the share had reached 53% (NFL.com). The coach still decides, with a percentage next to every choice.

Some moved it inside the room. The Ravens put an analyst beside the offensive coordinator; their optimal-decision rate rose from 52% in 2016 to 75% in 2019 and 2020 (NFL.com). In 2019 they finished 14-2, the AFC's top seed.

Hard Rock Stadium before an NFL game

Hard Rock Stadium before an NFL game. Photo: Eisenthesky Productions, Creative Commons AttributionShareAlike 4.0.

4. Volleyball: the data model said what the average hid

Volleyball is the sport I am curious about rather than in love with. My wife enjoys it far more than I do, which is why I watch. My research turned up a case that shows why data should not be read blindly. I leave it seeing the sport with different eyes.

Volleyball has no tracking chips and no cloud deal. It is a sport of repeated, countable actions: serve, reception, set, attack, block.

In 2025, the Journal of Big Data published A toolbox for volleyball data analytics. Andrea Accornero and four colleagues offer an open Python toolbox for scouting data, tested on two seasons of Italy's second division.

The raw data has a person in it. A scout sits at the side of the court and codes every contact. The code records the player, the skill, the zone and the result. The same file feeds the plan for the next opponent and the in-match adjustments.

The toolbox adds clustering to group players by profile, multi-criteria analysis to rank tactical options, and Markov chains to model how a rally unfolds. All of it extends PyDataVolley, the open-source Python reader for these scouting files, and reading one takes a few lines:

# pip install openvolley-pydatavolley (Python 3.11+)
from collections import defaultdict
import datavolley as dv

# A sample match bundled with the package
plays = dv.read_dv(dv.example_file(), normalize_types=True)

# Kill rate by the zone each attack starts from
zones = defaultdict(lambda: [0, 0])
for p in plays:
    if p["skill"] == "Attack" and p["start_zone"]:
        zones[p["start_zone"]][0] += 1
        zones[p["start_zone"]][1] += p["evaluation_code"] == "#"

for zone, (att, kills) in sorted(zones.items(), key=lambda z: -z[1][1] / z[1][0]):
    print(f"zone {zone}: {att:>3} attack(s), {kills / att:.0%} kills")

Kill rate by attack zone, on the court

Output of the snippet above, drawn on the attacking half of the court. The stronger the colour, the more attacks a zone took; a dashed zone took fewer than 40. The three front zones hold 174 of 190 attacks and sit at the match average, 35%. Zone 9’s 80%, the highest rate, rests on five attacks.

graph

Source: sample match bundled with openvolley-pydatavolley 1.0.0 (University of Louisville v University of Dayton, 2019), run on 27 October 2026. Zone grid as defined by DataVolley.

On the bundled match, zones 2, 3 and 4 take 174 of the 190 attacks, and all three sit at 35%, the match average. Zone 9 tops the list at 80%, from five attacks. Five attacks are an anecdote, so read the sample size before the percentage.

The plan that moved the numbers, not the result

The case study is the 2025 Italian Cup final: Consolini against Trentino (Accornero et al., Journal of Big Data). Trentino's own staff collected the files and used the toolbox to design a targeted plan. Consolini had the better numbers all season. On 9 February 2025 the plan worked: Consolini's performance dropped across every main indicator.

The drop never reached the scoreboard: Consolini won 3-0, with the sets closing 25-20, 25-23 and 28-26.

The Markov model ran over Consolini's season. It gave the team 54.5% of short rallies, 56.1% of medium ones and 61.7% of long ones. The final turned on the shortest points. Trentino's improved serve, up 0.1856, did not turn the match.

The averages said one thing, the in-match data another, and the players settled it. The method needs open code and a scout's files, not a stadium full of sensors.

Four lessons for tech teams

A badly measured market pays whoever measures it first

Brentford and Brighton priced what nobody priced. Nobody had counted who read my hourly pipeline, and the first count cut its vendor calls twelvefold.

A decision without data is a bet, however senior the voice

The pit call settles the race. In a product, data beats defended conviction, and a lack of data is a reason not to roll out.

When I took over technology at one company, a single site had a Raspberry Pi wired to the facility's radio. It sounded alerts at set times so no customer got locked in after hours. Leadership wanted one in every branch.

I argued against it. That meant a fleet of devices to maintain across many sites, and not one number showing the first had stopped a lock-in. No data was the tiebreaker: the rollout would have bought a logistics problem with no proven value.

A recommendation changes behaviour only where the decision is made

The fourth-down number arrived inside the game. On one of our partners' dashboards, the "data updated" stamp read August 2026 while the newest row was from 31 December 2025. The stamp came from file dates, not from the data.

Now a check on every pull request reads the newest row and fails the build when it is more than ten days old.

Timing matters, and so does seeing the right information when you decide. Without the fix, teams would have been steering in directions chosen on wrong data.

The model sharpens the plan; someone still has to win the point

Consolini's numbers fell in the final. The scoreboard still read 3-0.

Years ago I worked on a loyalty platform with 5 million users at a multinational. Transactions vanished without a trace: duplicated or negative balances, redemptions that failed silently. I crossed our metrics, logs and customer records against the times of the failures.

One service's HTTP latency jumped by about a second, at random, never more than ten minutes apart. That spike was a symptom, not the cause. Over the following days it led us to the architecture problems behind the losses. The data pointed; people still had to dig.

Conclusion

The ad did not sell a job. It sold a signal: the question now is how long a club can compete against one that already decides with it.

I do not believe data replaces talent, the coach's eye or an athlete's courage. Data does not run, does not score, does not suffer. A person still decides, and the person who decides with data plays a different game from the one who decides by gut.

That game started years ago. Here is the question I took home from the rabbit hole: how much could a data model help me find the best path for my next decision?

I will surely be looking into that now.

Sources

  • Johan Cruyff Institute: Albert Mundet on the Barça Innovation Hub
  • Barça Innovation Hub: official page
  • BBC Sport: Brentford's 2021 play-off final win
  • Premier League: Brentford's league positions
  • Matchday Finance: Brentford and Brighton & Hove Albion financial results
  • The Athletic: the rivalry between Brighton's Tony Bloom and Matthew Benham
  • The Athletic: Liverpool's recruitment secrets, revealed by Ian Graham
  • Trym Sørum: how Liverpool made data their competitive advantage
  • Training Ground Guru: Barcelona's former head of analytics joins Chelsea
  • MIT Sloan Sports Analytics Conference: Javier Fernández's record
  • FC Barcelona: the Barça Innovation Hub's start-up investments
  • Amazon Web Services: Formula 1 partnership
  • Guinness World Records: the fastest Formula One pit stop
  • ESPN: Verstappen's 2023 season stats
  • NFL: Next Gen Stats Decision Guide
  • Accornero et al., A toolbox for volleyball data analytics, Journal of Big Data (2025)
  • OpenVolley: PyDataVolley, the open-source Python reader for DataVolley files
  • Hudl StatsBomb: what football event data captures
  • Amazon Science: a decade of NFL Next Gen Stats innovation
  • NFL Football Operations: tracking data behind Next Gen Stats
  • Formula Dream: how close the 2025 Formula 1 grid is

Glossary

  • xG (expected goals): the quality of a chance, measured by how likely it is to become a goal.
  • xT (expected threat): the value of a possession, measured by how much each action raises the team's chance of scoring.
  • AWS (Amazon Web Services): the cloud arm of Amazon, which processes Formula 1 telemetry and runs the NFL's data models.
  • NGS (Next Gen Stats): the NFL's advanced statistics platform, built with AWS.
  • NFL (National Football League): the professional American football league in the United States.

Top comments (0)