Alright, let’s talk about something I tinkered with recently. The NFL season’s moving along, and like clockwork, discussions about playoffs start heating up. I got this itch, you know? I wanted to see if I could throw together a simple way to predict how the playoffs might shake out. Not super scientific, just something for fun.

Getting Started
So, first thing I did was just sit down and think about what actually matters for playoff predictions. Obvious stuff came to mind:
- Team records, wins and losses.
- Who’s playing who – the seeding.
- Maybe tiebreakers? Head-to-head results?
Honestly, I didn’t want to get too bogged down. The goal wasn’t perfect accuracy, just a quick ‘what if’ machine. I figured I’d start simple. I grabbed a notepad and sketched out the playoff bracket structure. You got your Wild Card round, Divisional, Championship, and then the Super Bowl. Seemed straightforward enough.
Finding the Info
Next up, data. You need the teams and their records. I just went online, found the current standings. Didn’t need anything fancy, just a list of teams, their wins, losses, and ties. I thought about trying to automate pulling this data, but honestly, for a quick project, it was faster to just type the main contenders and their records into a spreadsheet. Yeah, good old spreadsheet. Kept it simple.
I created columns for team name, wins, losses, ties. Then I manually put in the current projected seeds based on the standings I found. A bit tedious, sure, but it got the job done for what I needed right then.
Figuring Out the ‘Prediction’ Part
This was the core of it. How does Team A beat Team B in my predictor? I went back and forth on this. Should I factor in points scored? Points against? Strength of schedule? That all sounded like way too much work. Remember, simple was the goal.

So, I landed on the most basic logic: the team with the better win percentage wins the matchup. For tiebreakers, I initially just decided the higher seed would win, because that felt easiest to implement in my spreadsheet. I literally just used some IF statements. Something like =IF(WinPct_TeamA > WinPct_TeamB, "Team A Wins", "Team B Wins")
. Crude, I know, but it was a starting point.
I set up the Wild Card matchups based on the seeds I typed in. Then, the winners would automatically (well, after I set up the formulas) move to the next round’s slots. I had to manually adjust the seeding logic a bit for the divisional round, ’cause the highest remaining seed plays the lowest, etc. Took some fiddling with cell references.
Building and Testing
With the basic logic in place in my spreadsheet, I ran it. Filled out the bracket based purely on win percentages and seeding for ties. It produced… a bracket. Was it realistic? Eh, maybe not entirely. Upsets happen all the time, and this simple model didn’t account for that at all.
I looked back at last year’s playoffs and plugged those teams and records in. My simple predictor got some games right, but missed quite a few upsets. That didn’t surprise me. It showed the limitations pretty clearly. I thought about adding some randomness, maybe a small chance for the team with the worse record to win, but decided against it. Keep it deterministic for now.
The main thing was getting the structure working: putting teams in, having formulas decide winners, and populating the next round automatically based on those results. That part felt pretty good to get working, even if the prediction logic itself was basic.

Where It Stands
So now I’ve got this spreadsheet. I can update the team records and seeds as the season finishes. Then, it spits out a full playoff bracket prediction based on the simple ‘better record wins’ rule. It’s nothing revolutionary, and I wouldn’t bet any money based on it!
But it was a fun exercise. Took me an afternoon, mostly messing around with spreadsheet formulas and thinking through the playoff structure. It satisfies that little itch to see a potential bracket unfold, even if it’s based on super simple rules. Sometimes the process of building these little tools is more rewarding than the final output itself. Just neat to make something work, you know?