NFL Predictor
Project Overview
NFL Predictor is a machine learning model I built over winter break of 2025–26. It was my first coding-intensive personal project, and the one that sparked an interest in me to pursue a minor in Computer Science.
The model uses logistic regression to calculate win probability for any NFL matchup based on 10 years of historical data, weighing four features:
- Home/away status
- Long-term team performance (10-year window)
- Recent form (last 5 games)
- Opponent performance
To validate the model, I built a backtesting system that evaluated predictions across all 18 weeks of the 2025–26 NFL regular season, benchmarked against a 50% coin-flip baseline and a 60% Vegas Sportsbook target.
Tools Used: Python, Pandas, Scikit-learn, Matplotlib
The model, as shown above, had an accuracy of 64.7%, correctly predicting 165 out of 255 games over the full 18-week regular season. This clears both the 50% coin-flip baseline and the 60% professional bettor benchmark. To put it in context, at standard -110 sportsbook odds, a bettor needs roughly 52.4% accuracy just to break even. At 64.7%, a flat-bet strategy of $110 per game would have returned approximately $6,600 net profit on the season, which is an ROI of around 24%.
Model performance visualized over the season, compared against the coin-flip baseline and 60% professional benchmark:
This project introduced me to the full ML workflow: data pipeline design, feature engineering, model training, and systematic backtesting validation. It also clarified my interest in engineering work that sits at the boundary of data, systems, and real-world outcomes.