Odds Calculator Disclaimer 📊

Or: How I Learned to Stop Worrying and Love the Statistics

The Beautiful Game Meets Beautiful Code

This is a pet project of mine that began in 2022 and it exists because I'm a massive nerd who loves three things: football, statistics, and that sweet dopamine hit of finding a bet that the bookies have undervalued (ha, idiots!).

⚠️

This isn't a "I built a betting model and now I'm rich" story.

Nor will it make you rich.

This is about the journey of a self-taught coder who got obsessed with the idea that football, for all its beautiful chaos, might just be a tiny bit predictable.

And if it is? Well, that's where the fun begins, my friends.

What started as a humble spreadsheet has evolved into a full-blown statistical analysis engine. Every week, my model wakes up, stretches its digital limbs, and goes hunting across the Premier League website for fresh data. Goals, cards, possession stats – if it happened on the pitch, my script knows about it.

🍺 FAQ: Or "Things My Mates Ask Me Down the Pub"

If I had mates to go to the pub with

What does your model actually DO?

Glad you asked! Every week, this beast of a system:

1
Scrapes match data from the Premier League website (legally, don't worry) – we're talking goals, cards, the lot
2
Downloads ELO ratings from the brilliant folks at ClubELO who've been tracking team strengths since forever
3
Groups historical matches into "ELO bands" – basically asking "when teams were THIS far apart in strength, what usually happened?"
4
Calculates probabilities using actual historical data – none of this "I reckon Arsenal will win" nonsense
5
Fetches bookmaker odds through public APIs
6
Compares everything to find those juicy value bets where my model thinks something's more likely than the bookies do
7
Generates lovely JSON files that make my website update automatically because I'm too lazy to do it manually

The philosophy is simple: If teams with a 200-point ELO difference have historically resulted in home wins 67% of the time, and the bookies are offering odds that imply only 55%...

...well, that's what we call value, innit?

What's this ELO thing you keep banging on about?

ELO isn't an acronym (despite what it looks like) – it's named after Arpad Elo, an absolute legend who created this rating system for chess. The concept is wonderfully simple:

  • Every team starts with a rating (usually around 1500)
  • Beat a strong team? Your rating goes up loads
  • Beat a weak team? Your rating goes up a bit
  • Lose to a weak team? Your rating plummets faster than Manchester United's title hopes
  • Lose to a strong team? Meh, expected that, rating drops slightly

Think of it like a constantly updating "how good is this team RIGHT NOW" score.

It's dynamic, it's mathematical, and it doesn't give a toss what Gary Lineker thinks, which, let's be honest, is probably for the best.

The beauty is that ELO self-corrects. If a team goes on a mad run (looking at you, Leicester in 2016), their ELO shoots up. Hit a rough patch (hello, Chelsea in 2022)? It drops...

...it's like the stock market, but for football teams.

Fun Fact: You can actually buy shares in Manchester United (although, I wouldn't)

And Poisson? Ain't that a fish?

Named after the mathematician, Simeon Denis Poisson (English translation: Simon Dennis Fish).

The Poisson distribution is this brilliant bit of statistics that predicts rare events. And let's face it, scoring a goal in football is pretty rare...

...just ask any West Ham fan.

Here's the deal: If we know a team averages 1.5 goals per match, Poisson can tell us:

~22% Probability of scoring 0 goals
~33% Probability of scoring 1 goal
~25% Probability of scoring 2 goals
~20% Probability of scoring 3+ goals

Now multiply those probabilities for both teams, and boom! You've got a full matrix of potential scorelines.

The model uses this to generate those fancy score matrices you see on the site.