The NFL Schedule is Created with 100,000 Decisions: How Optimization Tackles the Toughest Matchups

Published on May 14, 2025 by Brian Schaefer

The NFL just released its schedule for the upcoming season — a moment of excitement for fans and a jaw-dropping example of complex decision-making for those of us in the world of optimization. Behind the scenes, over 100,000 yes/no decisions are made to determine who plays whom, when, and where. Sound like a puzzle? It is — and a massive one.

So what exactly gets optimized?

The NFL regular season consists of 272 games — with each of the 32 teams playing 17 games. But building the schedule isn’t as simple as plugging those games into a calendar. The league faces an enormous number of binary decisions: Should Team A host Team B in Week W, during Time Slot T? That’s a binary variable — a yes/no decision — and the core building block of many real-world optimization models.

Let’s break it down:

  • 32 teams
  • 14 different opponents per team (since each team plays against 14 unique teams)
  • 18 weeks
  • 6 time slots per week (Thursday @ 8:15pm, Sunday @ 1:00pm, 4:05pm, 4:25pm, 8:20pm, Monday at 8:15pm)
  • Home or away for each game

This means each team has a decision to make for each of the 14 opponents, in each of the 18 weeks, across 6 time slots, and with the possibility of being either home or away.

That gives us: the number of binary decision variables per team= 14 × 18 × 6 × 2 = 3,024 decisions. So for all 32 teams, the total number of binary decision variables is 32 × 3,024 = 96,768. That’s a lot of decisions!

Penalties, Objectives, and the NFL’s Goal: Competitive Fairness

In academia, there are many proposed systems for creating a schedule, such as minimizing the variance in the strength of schedule between all the teams — ensuring all teams face roughly equal competition. But in practice, the NFL pursues a different objective: “competitive equity.” They use a system of penalty points to quantify undesirable outcomes. The optimization model then works to minimize the total penalty across the entire schedule.

Penalty Examples

  • A team playing three consecutive away games
  • A team playing an away game after a Monday night away game
  • A team starting the season with two away or two home games
  • A team playing consecutive road games across three time zones
  • A team facing multiple opponents coming off a bye week
  • Division matchups not being spread throughout the season
  • A short turnaround to a Thursday game after a late game or travel
  • A team’s bye week not being well-separated from a Thursday game

These aren’t just preferences — they’re encoded in the model as penalty weights. The model’s job is to find the best trade-off given these competing objectives and constraints.

Hard Constraints: Rules You Can’t Break

Unlike penalties, hard constraints are non-negotiable. Violating them renders a schedule invalid. Here are some examples:

  • Teams playing away on Thursday must be home the week before
  • Teams playing at home on Thursday should have minimal travel the prior week
  • No cross-country travel for Thursday games
  • No team has the earliest bye week in back-to-back seasons
  • All Week 18 games must be division matchups

These constraints form the legal backbone of the scheduling model. And just like in any business scenario, these could represent union rules, contractual obligations, or logistical impossibilities.

What This Has to Do With Your Business

The NFL’s scheduling process mirrors the kinds of decisions made across industries every day. You might be scheduling deliveries, assigning staff, allocating shifts, or routing vehicles. The common thread? Binary decision variables, multiple competing goals, and hard constraints that must be respected.

Optimization models like the one the NFL uses can be tailored to your business too. Whether you’re looking to:

  • Minimize labor cost while meeting demand
  • Balance workloads across teams
  • Schedule production across machines
  • Prioritize service fairness among customers

… you can assign weights to different goals, model penalties for less desirable outcomes, and let optimization find the best solution. When multiple goals are in tension, this is known as goal programming — and it’s one of the most powerful tools in the operations research toolbox.

We Built a Solver to Handle This Kind of Complexity

At SimpleRose, our optimization solver is built for exactly these types of high-stakes, high-complexity problems. From sports leagues to supply chains, we help companies make smarter decisions at scale.

Got your own “NFL schedule” problem? We’d love to help solve it.