Okay, so today I wanna talk about my little experiment with Tim Tannehill, the former Titans QB. It wasn’t some crazy AI project or anything, more like a personal challenge to see how I could apply some sports analytics concepts I’ve been reading about.

First things first: Why Tannehill? Honestly, he was just on my mind. I was watching some old Titans games, and I started wondering if his performance decline later in his career was predictable, or just a matter of bad luck and team dynamics. I figured, why not dig in and see what I could find?
So, I started gathering data. Lots of data. I scraped game stats, passing charts, even some injury reports. It was a real pain, to be honest, but I managed to compile a decent dataset spanning his years with the Dolphins and the Titans.
- Passing yards per game
- Completion percentage
- Touchdown-to-interception ratio
- Sack rate
Then came the fun part: analyzing the data. I’m no data scientist, but I know my way around some spreadsheets and basic statistical tools. I wanted to see if there were any clear trends or correlations that might explain his performance arc.
I started with the basics, plotting his stats over time. What I noticed pretty quickly was a pretty significant drop in his yards per game and completion percentage around the 2020 season. That caught my eye. I was thinking maybe it was injury related? I dove into the injury reports and while he had some nagging issues, nothing major seemed to coincide directly with that performance dip.
Next, I looked at his offensive lines over the years. I hypothesized that maybe the line got worse over time, leading to more pressure and less time to throw. I compared the Titans’ offensive line rankings from Pro Football Focus for those years, and wouldn’t you know it, there was a pretty clear correlation. The line’s performance started to decline around the same time as Tannehill’s numbers.

I wasn’t trying to blame anyone here, but it seems like the combination of aging and maybe a less-than-stellar O-line impacted Tannehill’s later-career performance. Of course, there’s a million other factors to consider – coaching changes, play-calling, the quality of the receivers, even just plain old luck. I didn’t have the bandwidth to analyze all that, but this gave me some interesting insight.
What did I learn? Well, mostly that sports analytics is harder than it looks! It’s easy to cherry-pick stats to fit a narrative, but finding real, meaningful patterns requires a lot of work and a deep understanding of the game.
The Nitty Gritty: Tools and Techniques
- Data Scraping: I used Python with the Beautiful Soup library to grab stats from various sports websites. It’s not the most elegant solution, but it got the job done.
- Data Analysis: Mostly Excel, with some help from Google Sheets for visualization. I also messed around with some basic R scripts for statistical analysis, but nothing too fancy.
This was just a fun little side project, and I definitely don’t have all the answers. But it was a cool way to apply some data skills and gain a deeper appreciation for the complexities of football. I may be looking into another player soon, this was quite fun!