NFL

Schedule Optimizer

The NFL schedule optimizer is a software application used by the NFL to generate and analyze potential game schedules, considering numerous constraints and objectives. It uses mathematical optimization techniques to create and evaluate thousands of feasible schedules, helping the NFL create a schedule that meets the needs of teams, broadcast networks, and fans. 

Company

NFL - ZettaLabs

Product

Schedule Optimizer

Collaborators

Timy Gonzalez

Role

Director of Product Design

Year

2022

Problem Statement

At first glance, the NFL's scheduling problem seems simple: 5 people have 12 weeks to schedule 256 games over the course of a 17-week season. That might seem like plenty of planning time for seemingly few decisions, but – when you actually work it out – the number of possible schedules is well into the quadrillions.`

Objectives & Goals

Maximize Fan Engagement and Viewership: A key goal is to create a schedule that features compelling matchups, especially in prime-time slots, to attract the largest possible television audiences and keep fans engaged throughout the season. This involves showcasing rivalries, potentially high-stakes games, and popular teams.

Ensure Competitive Equity (as much as possible): The league strives to create a schedule that is perceived as fair to all 32 teams. This involves considering factors like:

  • Strength of Schedule: While not perfectly equal, the optimizer aims to avoid extreme disparities in the difficulty of schedules.

  • Travel Burden: Minimizing instances of teams having to travel excessively, especially with short rest. This includes limiting consecutive road games and long-distance trips.

  • Bye Week Placement: Giving each team a bye week within a reasonable timeframe (Weeks 6-14) and considering past bye week placements for fairness over time.

  • Opponent Rest: Limiting the number of times a team faces an opponent coming off a bye week.

Accommodate External Constraints: The schedule must work around numerous logistical and external factors, including:

  • Stadium Availability: Avoiding conflicts with other events (e.g., concerts, other sports) at or near NFL stadiums.

  • Broadcast Partner Needs: Satisfying the requirements of CBS, Fox, NBC, ESPN, NFL Network, and Amazon Prime Video by providing them with attractive game slates.

  • International Games: Strategically placing international games in London, Mexico City, and Germany while minimizing the travel impact on participating teams.

Protect the Integrity of the Game: The schedule aims to avoid situations that could be perceived as compromising the fairness or competitiveness of games.

Create a user experience that is seamless and easy to use: The schedule optimizer tool should allow the scheduling team to run example scenarios by entering key parameters and let the AI in the application run a number of selected scenarios.

User Experience: The application should have a consistent design language and intuitive navigation to ensure a predictable and efficient user experience across different features.

UX Process

4. Code & Deploy

5. Measure and Learn

3. Conceptualize

2. Define

1. Discover

Deliverables

Deliverables

Deliverables

Deliverables

Deliverables

Needs

Users

Stakeholders

LOBs

FRDs

Accessibility


Business goals

User needs

User journeys

Information arch.

Visual preferences

Success Metrics

Design language

Layout design

Interaction design

Usability testing


Front-end coding

Back-end coding

API Integration

Testing & QA

UX Auditing
Deployment

Metrics for LOBs

Usage analytics

User feedback

Accessibility

Success metrics

Heuristic evaluations

Accessibility tests

Recommendations

Improvements plan

Front-end code

Back-end code

QA Test plan

Deployment plan

Developers docs

User stories

Journey maps

Taxonomies

Persona designs

Flow diagrams

Mind maps


Design system
Low-res wireframes

Hi-res wireframes

Prototypes/Animations

Graphic assets

Usability test analisys

Interviews

Surveys

Report


Research

Design

Learn

Iterate

Code

pen

lightbulb

brackets

ruler

UX Process

Discover

Needs

Discover the needs for this product by conducting user interviews and asking questions related to the need for the product.

Users

Find out which types of users benefit from this product.

Stakeholders

Find out who are the primary stakeholders fro this product. From end users to CEOs.

LOBs

Find out what lines of business are part of this project or could be part of this project.

FRDs

Find out if there are existing functional requirement (FRD) document or see if they are complete or need to be completed, who owns the document, etc

Accessibility

Find out if there are any specific accessibility requirements for ADA, WCAG, etc.

Deliverables

Interviews

Results of interviews with executive summaries and quantitative measurements.

Surveys

Results of surveys with executive summaries and quantitative measurements.

Reports

Reports of any other findings related to this discovery phase.

pen

Define

Business Goals

Define what the business goals are for this suite of applications.

User Needs

Define what the users needs mean for this specific.

User Journeys

Define what a user journey or journeys are for this suite of applications.

Information Architechture

Define what the information architecture should be for this suite of applications.

Visual Preferences

Define the meaning of visual preferences for this suite of applications.

Deliverables

User Stories

Deliver documents with user stories for each one of the applications in this suite. User stories should be as granular as possible, including role, goal, benefit/reason, etc.

Journey Maps

Deliver documents with journey maps for each one of the applications in this suite. Journey maps should be as granular as possible, including personae design, scenarios, stages, etc.

Persona Design

Deliver documents with persona design for each one of the applications in this suite. Persona designs shouls be as granular as possible, including a realistic presentation, demographics, goals and motivations, etc.

Taxonomies

Deliver documents with taxonomies for each one of the applications in this suite. Taxonomies should be as granular as possible, including hierarchy, mental models, etc.

Mind Maps

Deliver documents with mind maps for each one of the applications in this suite. Mind Maps should be as granular as possible, including branches, sub-branches, keywords, connections, etc.

lightbulb

Conceptualize

Design laguage

Conceptualize a design language for the full suite of applications. This should include, visual style, UI components and guidelines, interaction guidelines, etc.

Layout Design

Conceptualize a layout design for the full suite of applications. This should include, gris systems, visual hierarchy, whitespace, responsiveness, etc.

Interaction Design

Conceptualize a layout design for the full suite of applications. This should include, grid systems, visual hierarchy, whitespace, responsiveness, etc.

Usability testing

Conceptualize a usability testing plan for the full suite of applications. This testing is made pre-deployment so only Figma designs will be used. This should include, navigation, information architecture, overall flow and user journeys, etc.

Deliverables

Design System

A complete design system using Figma.

Low-res Wireframes

Low-res wireframes using Figoma.

Hi-res Wrireframes

Hi-res wireframes using Figma, AI, Photoshop, Etc.

Prototypes / Animations

Prototypes using Figma, Framer, D3.js visualizations, etc

Graphic Assets

All assets in hi resolution. Assets within the Figma files can be downloaded by developers while in Figma dev mode.

Usability Test Analisys

Usability testing reports.

brackets

Code

Front-end Development

After UX Design sign off, using Figma, sent link to the developers in DEV mode.

Back-end Development

Back-end developers create the back end code to support the UI designs, interactions, databases, etc.

API Integration

Developers integrate APIs into the application.

Testing & QA

The QA team creates test plans of various types.

Deployment Plan

Create a deployment plan.

UX Auditing

UX designers review and audit design tickets.

Deliverables

Front-end Code

Front-end code is created through a software development cycle managed through the Azure DevOps agile ticketing system.

Back-end Code

Back-end code to support the UI designs, interactions, databases, etc.

QA Test Plan

QA test plans of various types and actual testing reports.

Deployment Plan

Developers and other stakeholders present a deployment plan.

UX Audit Tickets

Assign one or more UX designers to audit the development tickets that are in the UX/QA bucket in the DevOps ticketing system.

ruler

Measure & Learn

Success Metrics

Define metrics for the lines of business within the company.

Usage Analytics

Define usage analytics for post deployment measurements.

User Feedback

Gather user feedback before and after beta and general availability (GA)

Accessibility Tests

Define the accessibility test plan to comply with WCAG and ADA.

Deliverables

Success Metrics

Success metrics reports.

Heuristic Evaluations

Heuristic evaluation reports.

Accessibility Test Results

Accessibility test results.

Recommendations

Recommendations report for future iterations

Improvements Plan

Improvements plan. This includes backlog items, new features, changes to product roadmap, etc.

Journey Map

Personae Design

Amy McDonald

Age

38

Education

Masters in Sports Science

Status

Single

Occupation

Lead Scheduler

Location

NYC, NY

TEch literate

High

I want an efficient way reduce the time it takes to create optimized game schedules.

Bio

Amy lives in NYC . She is the lead scheduler for the NFL. She works with executives and third-party stakeholders to produce optimized schedules.

Core needs

Needs to produce optimized game schedules

Needs to work with stakeholders to obtain the parameters needed the schedule optimizer.

Needs to re-run the optimizer many times and record the optimizer run history

Frustrations

There is no similar software used for optimizing the game schedules using AI and ML.

Other stakeholders want to run their own optimizations, but Amy can't provide them with that service

Personality

Leader

Thinker

Analyser

Tech-savy

Novice

Analytical Skills

Consumer

Specialist

Advocate

Motivation

UI Designs

Design & Development Tools Used in this Project

NFL

Schedule Optimizer

The NFL schedule optimizer is a software application used by the NFL to generate and analyze potential game schedules, considering numerous constraints and objectives. It uses mathematical optimization techniques to create and evaluate thousands of feasible schedules, helping the NFL create a schedule that meets the needs of teams, broadcast networks, and fans. 

Company

NFL - ZettaLabs

Product

Schedule Optimizer

Collaborators

Timy Gonzalez

Role

Director of Product Design

Year

2022

Problem Statement

At first glance, the NFL's scheduling problem seems simple: 5 people have 12 weeks to schedule 256 games over the course of a 17-week season. That might seem like plenty of planning time for seemingly few decisions, but – when you actually work it out – the number of possible schedules is well into the quadrillions.`

Objectives & Goals

Maximize Fan Engagement and Viewership: A key goal is to create a schedule that features compelling matchups, especially in prime-time slots, to attract the largest possible television audiences and keep fans engaged throughout the season. This involves showcasing rivalries, potentially high-stakes games, and popular teams.

Ensure Competitive Equity (as much as possible): The league strives to create a schedule that is perceived as fair to all 32 teams. This involves considering factors like:

  • Strength of Schedule: While not perfectly equal, the optimizer aims to avoid extreme disparities in the difficulty of schedules.

  • Travel Burden: Minimizing instances of teams having to travel excessively, especially with short rest. This includes limiting consecutive road games and long-distance trips.

  • Bye Week Placement: Giving each team a bye week within a reasonable timeframe (Weeks 6-14) and considering past bye week placements for fairness over time.

  • Opponent Rest: Limiting the number of times a team faces an opponent coming off a bye week.

Accommodate External Constraints: The schedule must work around numerous logistical and external factors, including:

  • Stadium Availability: Avoiding conflicts with other events (e.g., concerts, other sports) at or near NFL stadiums.

  • Broadcast Partner Needs: Satisfying the requirements of CBS, Fox, NBC, ESPN, NFL Network, and Amazon Prime Video by providing them with attractive game slates.

  • International Games: Strategically placing international games in London, Mexico City, and Germany while minimizing the travel impact on participating teams.

Protect the Integrity of the Game: The schedule aims to avoid situations that could be perceived as compromising the fairness or competitiveness of games.

Create a user experience that is seamless and easy to use: The schedule optimizer tool should allow the scheduling team to run example scenarios by entering key parameters and let the AI in the application run a number of selected scenarios.

User Experience: The application should have a consistent design language and intuitive navigation to ensure a predictable and efficient user experience across different features.

UX Process

4. Code & Deploy

5. Measure and Learn

3. Conceptualize

2. Define

1. Discover

Deliverables

Deliverables

Deliverables

Deliverables

Deliverables

Needs

Users

Stakeholders

LOBs

FRDs

Accessibility


Business goals

User needs

User journeys

Information arch.

Visual preferences

Success Metrics

Design language

Layout design

Interaction design

Usability testing


Front-end coding

Back-end coding

API Integration

Testing & QA

UX Auditing
Deployment

Metrics for LOBs

Usage analytics

User feedback

Accessibility

Success metrics

Heuristic evaluations

Accessibility tests

Recommendations

Improvements plan

Front-end code

Back-end code

QA Test plan

Deployment plan

Developers docs

User stories

Journey maps

Taxonomies

Persona designs

Flow diagrams

Mind maps


Design system
Low-res wireframes

Hi-res wireframes

Prototypes/Animations

Graphic assets

Usability test analisys

Interviews

Surveys

Report


Research

Design

Learn

Iterate

Code

pen

lightbulb

brackets

ruler

UX Process

Discover

Needs

Discover the needs for this product by conducting user interviews and asking questions related to the need for the product.

Users

Find out which types of users benefit from this product.

Stakeholders

Find out who are the primary stakeholders fro this product. From end users to CEOs.

LOBs

Find out what lines of business are part of this project or could be part of this project.

FRDs

Find out if there are existing functional requirement (FRD) document or see if they are complete or need to be completed, who owns the document, etc

Accessibility

Find out if there are any specific accessibility requirements for ADA, WCAG, etc.

Deliverables

Interviews

Results of interviews with executive summaries and quantitative measurements.

Surveys

Results of surveys with executive summaries and quantitative measurements.

Reports

Reports of any other findings related to this discovery phase.

pen

Define

Business Goals

Define what the business goals are for this suite of applications.

User Needs

Define what the users needs mean for this specific.

User Journeys

Define what a user journey or journeys are for this suite of applications.

Information Architechture

Define what the information architecture should be for this suite of applications.

Visual Preferences

Define the meaning of visual preferences for this suite of applications.

Deliverables

User Stories

Deliver documents with user stories for each one of the applications in this suite. User stories should be as granular as possible, including role, goal, benefit/reason, etc.

Journey Maps

Deliver documents with journey maps for each one of the applications in this suite. Journey maps should be as granular as possible, including personae design, scenarios, stages, etc.

Persona Design

Deliver documents with persona design for each one of the applications in this suite. Persona designs shouls be as granular as possible, including a realistic presentation, demographics, goals and motivations, etc.

Taxonomies

Deliver documents with taxonomies for each one of the applications in this suite. Taxonomies should be as granular as possible, including hierarchy, mental models, etc.

Mind Maps

Deliver documents with mind maps for each one of the applications in this suite. Mind Maps should be as granular as possible, including branches, sub-branches, keywords, connections, etc.

lightbulb

Conceptualize

Design laguage

Conceptualize a design language for the full suite of applications. This should include, visual style, UI components and guidelines, interaction guidelines, etc.

Layout Design

Conceptualize a layout design for the full suite of applications. This should include, gris systems, visual hierarchy, whitespace, responsiveness, etc.

Interaction Design

Conceptualize a layout design for the full suite of applications. This should include, grid systems, visual hierarchy, whitespace, responsiveness, etc.

Usability testing

Conceptualize a usability testing plan for the full suite of applications. This testing is made pre-deployment so only Figma designs will be used. This should include, navigation, information architecture, overall flow and user journeys, etc.

Deliverables

Design System

A complete design system using Figma.

Low-res Wireframes

Low-res wireframes using Figoma.

Hi-res Wrireframes

Hi-res wireframes using Figma, AI, Photoshop, Etc.

Prototypes / Animations

Prototypes using Figma, Framer, D3.js visualizations, etc

Graphic Assets

All assets in hi resolution. Assets within the Figma files can be downloaded by developers while in Figma dev mode.

Usability Test Analisys

Usability testing reports.

brackets

Code

Front-end Development

After UX Design sign off, using Figma, sent link to the developers in DEV mode.

Back-end Development

Back-end developers create the back end code to support the UI designs, interactions, databases, etc.

API Integration

Developers integrate APIs into the application.

Testing & QA

The QA team creates test plans of various types.

Deployment Plan

Create a deployment plan.

UX Auditing

UX designers review and audit design tickets.

Deliverables

Front-end Code

Front-end code is created through a software development cycle managed through the Azure DevOps agile ticketing system.

Back-end Code

Back-end code to support the UI designs, interactions, databases, etc.

QA Test Plan

QA test plans of various types and actual testing reports.

Deployment Plan

Developers and other stakeholders present a deployment plan.

UX Audit Tickets

Assign one or more UX designers to audit the development tickets that are in the UX/QA bucket in the DevOps ticketing system.

ruler

Measure & Learn

Success Metrics

Define metrics for the lines of business within the company.

Usage Analytics

Define usage analytics for post deployment measurements.

User Feedback

Gather user feedback before and after beta and general availability (GA)

Accessibility Tests

Define the accessibility test plan to comply with WCAG and ADA.

Deliverables

Success Metrics

Success metrics reports.

Heuristic Evaluations

Heuristic evaluation reports.

Accessibility Test Results

Accessibility test results.

Recommendations

Recommendations report for future iterations

Improvements Plan

Improvements plan. This includes backlog items, new features, changes to product roadmap, etc.

Journey Map

Personae Design

Amy McDonald

Age

38

Education

Masters in Sports Science

Status

Single

Occupation

Lead Scheduler

Location

NYC, NY

TEch literate

High

I want an efficient way reduce the time it takes to create optimized game schedules.

Bio

Amy lives in NYC . She is the lead scheduler for the NFL. She works with executives and third-party stakeholders to produce optimized schedules.

Core needs

Needs to produce optimized game schedules

Needs to work with stakeholders to obtain the parameters needed the schedule optimizer.

Needs to re-run the optimizer many times and record the optimizer run history

Frustrations

There is no similar software used for optimizing the game schedules using AI and ML.

Other stakeholders want to run their own optimizations, but Amy can't provide them with that service

Personality

Leader

Thinker

Analyser

Tech-savy

UI Designs

Design & Development Tools Used in this Project

Timy Gonzalez

Copyright © 2025 Timy Gonzalez

Address

Mooresville, NC, USA

My Email

timygonzalez@mail.com

Call Me Now

704-402-4401