An interactive essay2026-27 NHL season

Thirty-two.

32 clubs84 games each1,344 nights of hockey to place

Could you schedule the NHL?

For my 32nd birthday I wanted to show hockey fans what I see when I look at a schedule. Conveniently, the NHL has 32 teams.

  • Six years with the Edmonton Oilers
  • MBA in Hockey Management
  • Executive Director, Business of Hockey Institute
  • Over 50,000 games scheduled in the last five years

Every fan has complained about their team’s schedule. Four games in six nights in three time zones, a Tuesday home game against a team nobody wants to see, that one road trip that looks like a punishment. The complaints are usually fair. What they are missing is that the schedule is not a list of games. It is the answer to a very large question with a lot of people asking things of it at once.

So here is the question, and it is a real one: could you do it? Not perfectly. Nobody does it perfectly. Could you do it at all?

I should say what I am hoping for, because it is a slightly ridiculous thing to admit. Somewhere there are people whose actual job is to build this schedule, and the people who do the same job for the other leagues. My hope is that one of them reads this, gets to the end, and thinks: yes, that is the job. That is the ambition. If you are one of those people, I would love to hear where I have got it wrong.

Schedule data retrieved September 15, 2026 from the NHL’s public season feed. 32 of 32 clubs, 1,344 games, fully validated. Sources and method.

The size of it

One season, counted properly

Start with the shape of the thing. Thirty-two clubs each play a full season, and every one of those games has to land on a specific night, in a specific building, in a league that runs from the end of September to the middle of April.

32clubs
84games each
2,688Team appearances
2clubs per game
1,344Actual games

There is a trap in that arithmetic, and it is worth pausing on because it is the first thing that tells you a schedule is not a list. If you add up what every club plays, you get 2,688. But a game is not something one team has. It is something two teams share. Edmonton hosting Vancouver is one game that appears on two calendars. Count the calendars and you double everything. Divide by two and you get the real number.

Why halve it

Every game belongs to two clubs. Highlighted below: one game, two calendars.

Vancouver at Edmonton, September 29, 2026. One game. Two calendars. Counted once.

That is the job, stated once: find 1,344 slots. It sounds almost manageable written down like that, which is the last time it will.

Season runs
September 29, 2026 to April 10, 2027
Nights with hockey
185 of 194 days
Games at a non-standard venue
7 (outdoor games and the Global Series)

01First

Decide who plays who

Before anything can go on a calendar, you have to know what you are placing.

The league answers this part before it answers anything else, and it answers it the same way for everybody. Each club plays the seven other teams in its own division four times. It plays the eight teams in the other division of its conference three times. It plays all sixteen clubs in the other conference twice. Add those up and you get a full season, for every single club, with no exceptions.

Look at the grid below and the structure jumps out. The dense blocks along the diagonal are divisions playing each other most often. The lighter field on the other side is the rest of the league, seen twice a year. Every row adds up to the same total. Nobody gets an easier menu than anybody else.

Games between each pair of clubs
  • Same division
  • Same conference
  • Other conference
Games between each pair of clubs in the 2026-27 season. Rows are clubs, columns are opponents. Every row totals 84 games.
ClubBOSBUFDETFLAMTLOTTTBLTORCARCBJNJDNYINYRPHIPITWSHCHICOLDALMINNSHSTLUTAWPGANACGYEDMLAKSJSSEAVANVGKTotal
BOSBoston444444433333333222222222222222284
BUFBuffalo444444433333333222222222222222284
DETDetroit444444433333333222222222222222284
FLAFlorida444444433333333222222222222222284
MTLMontréal444444433333333222222222222222284
OTTOttawa444444433333333222222222222222284
TBLTampa Bay444444433333333222222222222222284
TORToronto444444433333333222222222222222284
CARCarolina333333334444444222222222222222284
CBJColumbus333333334444444222222222222222284
NJDNew Jersey333333334444444222222222222222284
NYINY Islanders333333334444444222222222222222284
NYRNY Rangers333333334444444222222222222222284
PHIPhiladelphia333333334444444222222222222222284
PITPittsburgh333333334444444222222222222222284
WSHWashington333333334444444222222222222222284
CHIChicago222222222222222244444443333333384
COLColorado222222222222222244444443333333384
DALDallas222222222222222244444443333333384
MINMinnesota222222222222222244444443333333384
NSHNashville222222222222222244444443333333384
STLSt. Louis222222222222222244444443333333384
UTAUtah222222222222222244444443333333384
WPGWinnipeg222222222222222244444443333333384
ANAAnaheim222222222222222233333333444444484
CGYCalgary222222222222222233333333444444484
EDMEdmonton222222222222222233333333444444484
LAKLos Angeles222222222222222233333333444444484
SJSSan Jose222222222222222233333333444444484
SEASeattle222222222222222233333333444444484
VANVancouver222222222222222233333333444444484
VGKVegas222222222222222233333333444444484
Rows are clubs, columns are opponents. Shading shows how many times they meet. Ordered by division, which is why the blocks appear.

There is one wrinkle worth noticing, because it is the first place the word “fair” starts to wobble. Three is an odd number. When two clubs meet three times, somebody hosts twice and somebody hosts once. There is no way to split it evenly, so the league does the next best thing: it hands out the extra home dates so that every club ends up with exactly the same number of them. Each team gets the extra game in 4 of its 8 three-game series, and gives it up in the other four. The individual series is lopsided. The season is not.

That is worth holding onto, because it is the pattern this whole subject runs on. Fair does not always mean identical. Sometimes fair means the imbalances cancel out if you count them over the right window.

Not every league is this hard

It is worth knowing that this structure is a choice, and that leagues sit at wildly different points on the difficulty scale. The Premier League is the clean end. Twenty clubs, everybody plays everybody twice, once at home and once away. Thirty-eight games, nineteen at home, nineteen away, and the matchup question answers itself in a single sentence with no exceptions and no leftovers.

The NHL is a step harder. Thirty-two clubs cannot play each other an even number of times inside a sensible season, so the league buys balance with that 2-1 split and squares it up across the year. Harder again, and this is the end I spend most of my time at, are leagues that realign three or four times mid-season as divisions get rebalanced, where clubs finish owed different numbers of games than each other, and where a handful of promises were made in the summer that somebody now has to keep. The NHL problem is enormous. It is also unusually well-behaved.

A note on where I am standing, since it shapes what I notice. I spent six years with the Edmonton Oilers, took an MBA in Hockey Management, and served as Executive Director of the Business of Hockey Institute. These days I build scheduling software, and I have put more than 50,000 games on calendars in the last five years. That background is why I find this interesting, and it is also not the same thing as having seen the NHL’s schedule get built. I have not seen that, and I will flag it every time it matters.

The reason this matters for what follows: the harder the structure, the more of the final schedule is decided by things that have nothing to do with hockey.

  1. Premier League20 clubs. Everybody twice, home and away. 38 games, 19 and 19.One sentence, no exceptions.
  2. NHL32 clubs. Four, three or two times depending on who. 84 games.Uneven by necessity, squared up across the year.
  3. Leagues I work onRealignments mid-season, clubs owed different totals, promises made in the summer.The structure itself keeps moving.

And now the hard part

Everything above is settled before a single date is chosen. Knowing who plays who is useful, and it is also nowhere near the answer. The 32 clubs in the grid below all have identical seasons on paper. What they do not have is identical calendars, because the calendar is where the actual problem lives.

02Second

Now find somewhere to put the games

This is where dates stop being interchangeable.

The NHL is too big to feel, so here is a league small enough to hold in your head. Four clubs, four buildings, two weeks. Everybody plays everybody home and away, which is twelve games. Fourteen days to put them in.

Before anybody asks for anything, this is easy. Twelve games, fourteen days, no rules. Any game could go on any night. The grid below shows that: every square is a night a game could happen.

Then reality arrives, one request at a time. Turn them on in order and watch the grid. Nothing here is decorative, and nothing is random. A square goes dark because a named rule rejected that exact game on that exact night, and the rule will tell you why if you ask it.

Simplified example. Not the NHL’s actual availability.

Turn the requests on
168/ 168Nights still open across all twelve games
Twelve games × fourteen nights
  • Still possible
  • Ruled out
  • Where it sits now
Mon4
Tue5
Wed6
Thu7
Fri8
Sat9
Sun10
Mon11
Tue12
Wed13
Thu14
Fri15
Sat16
Sun17
RiversidevFoundry
RiversidevHarbourview
RiversidevSummit
FoundryvRiverside
FoundryvHarbourview
FoundryvSummit
HarbourviewvRiverside
HarbourviewvFoundry
HarbourviewvSummit
SummitvRiverside
SummitvFoundry
SummitvHarbourview

Select any square to see why. Use arrow keys to move, Enter to inspect.

Nothing selected. Choose a square to find out whether that game could move there, and what is stopping it if not.

Two of these are different in kind from the others, and the distinction matters more than anything else on this page. A building that is already hosting a concert is not a preference. Neither is a club whose players are sitting exams. Those are walls. You do not negotiate with them, you schedule around them. A club’s wish for a Saturday home date is a genuine, reasonable, revenue-shaped request, and it is still just a request. A preference never gets to knock down a wall.

That is the lesson, and it is why scheduling is hard. You started with 168 open nights and you have 17 left. Nothing in that grid was unreasonable. The concert was booked a year ago. The exams were set by a school board. The rest rule exists so that nobody gets hurt. Every single request, taken by itself, is fine. They become a problem only when they all have to be true at the same time.

And notice what happened to the calendar. At the start, a night was just a night. By the end, some nights can only hold one particular game, and some games only fit on one particular night. The dates stopped being interchangeable. That is the moment a scheduling problem becomes a scheduling problem.

03Third

Better for who?

A schedule can be improved. The question is always: better for who, and at whose expense?

Stay in the small league, because now we can do something with it that is impossible with the real one. There are exactly 223,084 ways to schedule those twelve games without breaking a single hard rule. Not an estimate. We checked all of them.

That means we can ask an honest question and get an honest answer. Every club wants a Saturday home game. There are two Saturdays. What does it cost to give them out?

What each Saturday costs

Read this left to right. The first two Saturdays are free. Better than free, in fact: schedules that hand out two Saturday home dates have fewer tight turnarounds than schedules that hand out none, so you improve two things at once and give up nothing. The third Saturday costs one tight turnaround. The fourth costs three more on top of that.

Tight turnarounds means games two days apart, the closest together this league’s rest rule allows. Each row is the best schedule that exists at that number of Saturdays, found by checking all 223,084 legal schedules.

This is the part that gets flattened when people talk about scheduling, and I want to be careful about it. Not every improvement is a trade. Plenty of the time a schedule is simply worse than it needs to be, and you can fix it for free. The first two Saturdays here are exactly that. But the last one is not, and no amount of cleverness makes it free, because we checked every possibility and the cheapest version still costs three turnarounds.

One more result from the same search, and it cuts the other way. Summit Pines is four hours from everybody else and would rather make one trip down the valley than two. That request costs nothing at all, at every level of Saturday generosity. Honouring it is free. If you assumed every request must cost something, you would have traded away something real to buy a thing you could have had for nothing.

Three schedules, same twelve games

Here are three of them side by side. Each is the best available schedule for its stated priority, so none is a straw man set up to lose. Switch between them and watch which clubs get moved around.

Still the fictional league
Mon4
GULatRIV
FORatSUM
Tue5
Wed6
FORatRIV
Thu7
GULatSUM
Fri8
RIVatFOR
Sat9
SUMatGUL
Sun10
Mon11
SUMatFOR
RIVatGUL
Tue12
Wed13
SUMatRIV
Thu14
GULatFOR
Fri15
Sat16
RIVatSUM
Sun17
FORatGUL
Clubs with a Saturday home game
2 of 4Harbourview, Summit
Tight turnarounds
10the fewest available
Summit’s trip down the valley
3 daysone journey, as requested
Longest anyone waits between games
3 daysRiverside

You make the call

Four decisions. Each one is real, each one has a defensible answer either way, and none of them has a right answer that a computer could find for you.

Pick one. Nothing is scored, and nothing is sent anywhere.

  1. 01

    One trip or two?

    A club has two road games in the same distant city cluster.

    Hypothetical

    A western club has to visit two eastern cities. Played back to back on the road, it is one flight out, one short hop between the two, one flight home. Three days away.

    Split them, and the club flies east, plays, flies home, then flies east again ten days later. Six days away in total, four long flights instead of two, but a clear rest day either side of each game.

  2. 02

    The Saturday, or the softer week?

    A club wants a specific home date. Taking it compresses the days around it.

    Hypothetical

    A club has asked for a Saturday home game in late November. It is the best-selling night of the year for them and the request is entirely reasonable.

    The only way to place it, given what else is already fixed, is to move an existing home game to the Thursday. That gives the club three games in five days and a back-to-back on the other side of the weekend.

  3. 03

    A fix that moves the problem

    You can solve one club’s worst stretch. The solution lands on somebody else.

    Hypothetical

    One club has four games in six nights in March, the worst stretch anyone has in the season. You have found a fix: move one of those games back by four days.

    The fix is clean. It removes the worst stretch in the league. It also gives their opponent a back-to-back they did not previously have, and pushes that opponent’s road trip from three games to four.

  4. 04

    The stretch that looks like a mistake

    A club’s schedule has an obviously strange sequence. What do you conclude?

    Hypothetical

    A club sits at home for more than three weeks in the middle of winter, playing ten games in its own building. Three Saturdays fall inside that window. They play none of them.

    On paper this looks like somebody forgot. Saturday is the best night of the week, the club is at home, and the dates were simply not used.

04Fourth

What did your team get?

The real 2026-27 schedule, all 32 clubs, measured the same way.

Everything up to here has been a model. This is not. What follows is the published 2026-27 NHL regular season, every game of it, measured with the definitions set out at the bottom of this page. Pick a club and see the shape of its year.

One thing to keep in mind as you read: a number being high or low is not the same as a number being unfair. Some of what you are about to see is geography. Some of it is arithmetic. A little of it is worth knowing.

Atlantic

Metropolitan

Central

Pacific

VancouverCanucks

Pacific Division, Western Conference/84 games/Sep 29 – Apr 10

The season, end to end

Each mark is a game. Above the line is home, below is away. Select a highlighted stretch to see the games behind it.

OctNovDecJanFebMarAprTue, Sep 29 · at EDMThu, Oct 1 · vs EDMSat, Oct 3 · vs CGYSun, Oct 4 · vs VGKThu, Oct 8 · at CARSat, Oct 10 · at NJDSun, Oct 11 · at NYRTue, Oct 13 · at NYIThu, Oct 15 · at FLASat, Oct 17 · at TBLTue, Oct 20 · vs CARThu, Oct 22 · vs DETSun, Oct 25 · vs MINTue, Oct 27 · at ANAThu, Oct 29 · at SJSSat, Oct 31 · vs TORTue, Nov 3 · vs ANAThu, Nov 5 · at WPGSat, Nov 7 · at EDMMon, Nov 9 · vs PHIFri, Nov 13 · vs NYRSun, Nov 15 · at VGKMon, Nov 16 · at UTAThu, Nov 19 · at SEASat, Nov 21 · vs MINSun, Nov 22 · vs CHIWed, Nov 25 · at DETFri, Nov 27 · at PHISun, Nov 29 · at BOSTue, Dec 1 · at WSHFri, Dec 4 · vs BUFSat, Dec 5 · vs DALMon, Dec 7 · vs WSHThu, Dec 10 · vs NSHSat, Dec 12 · at LAKMon, Dec 14 · at SJSWed, Dec 16 · at ANASat, Dec 19 · vs SJSMon, Dec 21 · vs UTASat, Dec 26 · at CGYMon, Dec 28 · vs LAKWed, Dec 30 · vs SEASat, Jan 2 · at UTASun, Jan 3 · at SEATue, Jan 5 · vs NYIThu, Jan 7 · vs TBLSat, Jan 9 · vs FLAThu, Jan 14 · vs SEASat, Jan 16 · vs CBJMon, Jan 18 · at COLWed, Jan 20 · at NSHFri, Jan 22 · at CHISat, Jan 23 · at PITTue, Jan 26 · at MINThu, Jan 28 · at DALSat, Jan 30 · at STLMon, Feb 1 · vs MTLWed, Feb 3 · vs NJDSat, Feb 13 · vs WPGTue, Feb 16 · vs PITThu, Feb 18 · vs OTTSat, Feb 20 · vs COLSun, Feb 21 · vs BOSTue, Feb 23 · at DALThu, Feb 25 · at STLSat, Feb 27 · vs CGYWed, Mar 3 · vs CHISat, Mar 6 · at MTLTue, Mar 9 · at BUFThu, Mar 11 · at CBJSat, Mar 13 · at TORSun, Mar 14 · at OTTWed, Mar 17 · vs NSHSat, Mar 20 · vs STLSun, Mar 21 · vs EDMTue, Mar 23 · vs LAKThu, Mar 25 · vs VGKSat, Mar 27 · vs ANAMon, Mar 29 · at LAKWed, Mar 31 · at VGKSat, Apr 3 · vs SJSTue, Apr 6 · vs COLFri, Apr 9 · at WPGSat, Apr 10 · at CGY
Home Road League-wide break

Back-to-backs

11sets

Joint 19th of 32, tied with 5 othersleague 815, median 12

6 on the road both nights

Longest road run

7games

Joint 1st of 32, tied with 3 othersleague 47, median 5.5

Jan 18–30

Longest homestand

7games

Joint 3rd of 32, tied with 4 othersleague 410, median 6

21 days, Feb 1–21

Busiest seven days

4games

Joint 7th, shared with 25 other clubsleague 45, median 4

Sep 29 – Oct 5

Saturday home games

13games

Joint 4th of 32, tied with 5 othersleague 514, median 11

13 of 24 Saturday games

Season distance

74,807km

11th of 32league 51k91k, median 72k

straight-line proxy, city to city

Ranked against all 32 clubs.

Worth a look

  • Vancouver play 11 sets of games on consecutive nights, a little below the league median (the league runs from 8 to 15, median 12). 6 of them are road games on both nights.

  • Their longest run of consecutive road games is 7, Jan 18–30, tied for the longest in the league. It spans 13 days.

  • The longest homestand is 7 games over 21 days, Feb 1–21, joint third-longest in the league.

  • The busiest stretch is 4 games in seven days, Sep 29 – Oct 5. The league ranges from 4 to 5, and a figure 25 other clubs share. 9 separate stretches reach it.

  • 13 of their 24 Saturday games are at home, joint fourth-most in the league. Across the league that figure runs from 5 to 14, with a median of 11. Saturday is the busiest night of the week by a distance, and clubs ask for it.

  • They get 6 breaks of three clear days or more, exactly the league median. The single longest gap is 9 days without a game.

  • Following the venues in order, the season traces about 74,807 km in straight lines, a little above the league median. The league spans 51,197 to 91,311 km. That is geography doing the work, not the scheduler.

The longest road stretch

  1. VancouverDenver1,779 km
  2. DenverNashville1,642 km
  3. NashvilleChicago640 km
  4. ChicagoPittsburgh659 km
  5. PittsburghSaint Paul1,180 km
  6. Saint PaulDallas1,391 km
  7. DallasSt. Louis882 km
  8. St. LouisVancouver2,860 km

About 11,032 km in straight lines between host cities, ending back in Vancouver. This is a proxy, not flight mileage: it does not know the routing, and it assumes the club did not fly home on off days inside the run.

Three things the league says

Computed across all 1,344 games, not chosen in advance.

  1. 01

    The best night of the week is not shared evenly

    5Anaheim
    14Boston, Los Angeles and Nashville

    Saturday carries more NHL games than any other night by a wide margin, and clubs ask for it, because it is when families come. Across the league the number of Saturday home dates runs from 5 to 14. That is close to a threefold gap on the most valuable night of the week, between clubs whose seasons are otherwise identical on paper. Why any particular club sits where it does is not something a published schedule can tell you.

  2. 02

    Travel is decided by the map, not the scheduler

    51,197 kmPittsburgh
    91,311 kmSeattle

    Following each club’s venues in order, the season traces anywhere from 51,197 km to 91,311 km in straight lines. The clubs at the top are the ones with the fewest neighbours; the clubs at the bottom are clustered in the northeast. Nobody decided this. It is what happens when you put a 32-club league on a continent this shape, and no amount of scheduling skill would close the gap.

  3. 03

    Choppy or blocky is decided before anybody complains about it

    27Vancouver, typical trip 2,845 km
    46Boston, typical trip 1,009 km

    Some clubs flip between home and away nearly twice as often as others. That sounds like an imbalance until you notice what it tracks: the correlation between how choppy a club’s schedule is and how far it has to travel is -0.653. Clubs whose opponents are close by get the choppy schedules, because flipping costs them a bus ride. Clubs whose opponents are far away get long blocks, because flipping would cost them a flight. This one is not a mystery and not an injustice. It is the schedule doing its job.

  4. 04

    Some clubs play on no rest almost twice as often as others

    8Calgary and Vegas
    15Pittsburgh

    Back-to-backs range from 8 to 15 sets, with a median of 12. This is the one on the list most likely to be a genuine consequence of decisions rather than geography, because unlike distance, the number of back-to-backs is something a schedule can in principle move around. Whether it could have moved in this particular season, without breaking something else, is exactly the question a published schedule cannot answer.

05Fifth

Some of it is on purpose

The complaints arrive every single year. Most of them are about patterns, and a pattern is not good or bad on its own.

Go back to your club for a second and look at the shape of it. Long homestands, or a constant flip between home and away. A stretch of road games that looks punishing. That shape is the thing fans argue about, and it is the thing most people get wrong, because they are judging the pattern without asking what sport it is in or where the club has to go.

Five home, then five away

In hockey
A real burden. Five nights, five cities.
In baseball
Utterly normal. Baseball is built out of series.

Straight alternation

Opponents nearby
A gift if your opponents are close by.
Opponents far away
A punishment if every flip is a flight.

Take a run of five home games followed by five on the road. In hockey that is a real burden: five straight nights away in five different cities, with everything that follows from it. In baseball the same shape is completely unremarkable. Baseball is built out of series, so clubs arrive in a city, play three or four games, and move on once. A ten-game homestand in baseball is normal and, if anything, popular. Identical pattern, different sport, opposite verdict.

Now flip it. Home, away, home, away, right through the season. That looks lovely and balanced on paper, and whether it is depends entirely on a map. If your away games are an hour down the road, alternating is the best thing that can happen to you: you sleep at home most nights. If your away games are three time zones away, alternating is a punishment, because every one of those flips is a flight.

This is visible in the real schedule

It is not a theory. Across the 32 clubs, how often a schedule switches between home and away tracks how far that club has to travel, and it tracks it strongly. The clubs with the closest opponents get the choppiest schedules. The clubs with the furthest opponents get long blocks. Nobody is being rewarded or punished. The schedule is shaped around the map, deliberately, club by club.

-0.653Correlation between choppiness and travel distanceA negative correlation means the further a club has to go, the fewer times its schedule flips between home and away. The relationship is strong enough to be deliberate rather than accidental.

And sometimes the building decides

The other thing that shapes a season is what else the arena is doing. The clearest case in this schedule is the New York Rangers, who share Madison Square Garden with the Knicks and with one of the busiest concert calendars anywhere in the world. Three sets of tenants, one building, and basketball and hockey overlap almost completely through the winter.

You can see what that does. The Rangers have one of the choppiest schedules in the league, the shortest longest-homestand of any club, and nearly the fewest Saturday home dates of anybody. Read those three numbers cold and it looks like a club that got a raw deal.

New York Rangers, 2026-27

home/away switches
461st-most of 32
longest homestand
55th-shortest of 32
Saturday home games
62nd-fewest of 32
km, typical road trip
7666th-shortest of 32

Three numbers that look like a raw deal, and a fourth that explains why it is not. For comparison, Vancouver switch 27 times on a typical trip of 2,845 km. The same choppiness would cost them a fortune.

It almost certainly is not. Look at the other half of the picture: the Rangers’ typical road trip is one of the shortest in the league, because half their opponents are a short flight or a bus ride away. A choppy schedule is cheap for them in a way it would be ruinous for Vancouver. The building forces the shape, and the geography makes the shape affordable. That is not a mistake anybody made. It is a tradeoff somebody looked at and accepted, and then accepted again the next year, and the year after that.

Which is the honest answer to almost every schedule complaint you will ever hear. Not “you are wrong to be annoyed”, because you are usually not. It is that the thing annoying you was weighed against something else, by someone who could see both, and lost. The complaint is real. So was the reason.

SpeculativeTo be precise about what is proven here: the Rangers’ numbers are facts, and the Garden’s tenants are a matter of public record. That the second causes the first is the obvious reading and still an inference. We do not get to see the building’s booking calendar.

06Finally

What the schedule doesn’t tell us

The most useful thing a schedule analyst can say is often: I don’t know, and here is why.

Everything in the section above is real. It is also, on its own, not enough to judge anybody by, and I want to be precise about why.

A published schedule is an output. What we do not get is the input. We do not see which arenas were already booked when the league went looking for dates, and buildings hold concerts, basketball, conventions and circuses that were sold long before the hockey calendar existed. We do not see which clubs asked for what, and they all ask. We do not see what the broadcasters required, and a national television window is worth real money to everybody in the room, including the fans who want to watch the game. We do not see the holds that were placed and released, or the two dozen versions that came before the one that got published.

A pattern we can measure and cannot explain

Anaheim sit at home for 24 days and play no Saturdays

Homestand
10 games over 24 days
Window
Dec 22 – Jan 14
Saturdays inside it
3
Saturdays played
0
  • Dec 26idle: 11 games elsewhere in the league
  • Jan 2idle: 14 games elsewhere in the league
  • Jan 9idle: 13 games elsewhere in the league

So when a club’s schedule looks awkward, the honest reading is not that somebody made a mistake. Look at the finding above about the club that sits at home for 24 days over the holidays and never once plays on a Saturday during it. Something explains that. A building with a busy December is the obvious guess, and it is a good guess. It is still a guess. I cannot see the arena’s calendar, so I am not going to tell you I know.

The opposite error is just as easy, and it is the one people who know a bit about scheduling tend to make. Explaining that constraints exist is not the same as proving every outcome was optimal. “There were probably reasons” is not an argument. Sometimes there were reasons. Sometimes a schedule really could have been better and nobody had the time to find out, because the search space is astronomically large and the deadline was real.

The defensible position sits between those two, and it is narrower than either: we can look at what was published, measure it consistently, notice what is unusual, and ask sharper questions about it. We should not pretend to know decisions we cannot see.

A schedule is a decision, not a calendar

Here is what I wanted you to take from this, and it took me a while in this work to be able to say it plainly. A schedule is not a puzzle with a solution hiding in it. It is a stack of decisions about whose inconvenience matters, made by people who could not give everybody what they asked for because the requests conflicted.

Which means the goal was never a schedule without compromises. There is no such schedule. The goal is a schedule where you know exactly which compromises you made, and you could explain every one of them to the person it cost something. That is a higher bar than it sounds, and it is the one worth holding.

So go and complain about your team’s schedule. It is one of the great pleasures of being a fan and I am not going to talk you out of it. Just know that the Tuesday night you are annoyed about was somebody’s least-bad option at two in the morning, and that they knew it was not perfect when they chose it.

And the thing I said at the top still stands. If you do this for a living, at the NHL or at any league facing the same questions, I would love to know what this piece gets right and what it gets badly wrong. That is the only review I am really after.

Thanks for reading. Happy birthday to me.

Methodology

Where this came from and how it was counted

Every number on this page can be traced to a source and a definition.

Three different things

This page keeps three categories apart on purpose. What the published schedule says is fact. What we calculate from it is arithmetic, and correct as long as the definition is stated, which it is. What might explain any of it is speculation, and is labelled as such wherever it appears.

  • Published What the NHL released.
  • Calculated What we derive, using the definitions below.
  • Speculative What might explain it. Always labelled.
The dataSource, season, coverage, and the checks that run on every build
Season
2026-27 NHL regular season (id 20262027)
Retrieved
September 15, 2026
Primary source
https://api-web.nhle.com/v1/club-schedule-season/{TEAM}/{SEASON}The NHL’s public club schedule feed, queried once per club so every game is retrieved twice and the two copies can be compared.
Coverage
32 of 32 clubs, 1,344 unique games, 84 per club. Complete.
Filtering
Regular season only. Preseason, playoffs, exhibitions and the All-Star Game are excluded before anything is counted. Games are deduplicated by the NHL’s own game id.

Validation that runs on every build

  • 32 clubs present
  • 1,344 unique game ids, no duplicates
  • Every club at exactly 84 games, 42 home and 42 away
  • Home designations sum to the number of games
  • Every opponent is a real club, no club plays itself
  • Every date well-formed and inside the season window
  • Both clubs’ feeds agree on date, venue and designation for all 1,344 games
  • Every venue has known geography

The build fails rather than publishing a figure that does not reconcile. The reading experience never calls the NHL: it reads a versioned snapshot committed to the repository.

The definitionsWhat each metric counts, and what it does not
Dates

Every date is the calendar date the NHL published, stored and displayed as written. Nothing is converted through your device’s timezone, which is the usual way a schedule quietly shifts by a day for anyone west of Greenwich. We checked all 1,344 games: the published date matches the venue’s local date in every single one.

Back-to-backs

Two games on consecutive calendar dates, counted as pairs. Three games in three days contains two pairs, and both are counted, because the club plays on zero days’ rest twice.

Not this: This is not a measure of fatigue. It knows nothing about start times, time zones or when anyone actually slept.

Rest days

Calendar days without a scheduled game, between one game and the next. A back-to-back is zero. Squares on a calendar, nothing more.

Not this: This is not measured recovery time. The gap between two puck drops is not the same as the time a player had off, and we make no claim about the latter.

Runs of home or away games

Consecutive games sharing a home or away designation, as published.

Not this: A run of away designations does not prove a club stayed on the road the whole time. Clubs fly home between games, and several of the longest road runs this season contain a league-wide break. It is a shape on a calendar, not an itinerary.

Busiest seven days

The largest number of games inside any seven consecutive calendar days, counted inclusively: a window starting on a Monday ends on the following Sunday. Windows are anchored on dates the club actually plays.

Saturday home games

Games with a home designation whose published date falls on a Saturday. Saturday is by a distance the busiest night in the NHL week, and premium home dates are something clubs actively request.

Venue and physical location

A home designation is not the same as being at home. The three outdoor games this season are played at non-standard venues inside the designated home club’s own city, so that club has not travelled. The four Global Series games in Finland and Germany take both clubs away from home. We track the designation and the physical city separately and say which one we mean.

Season distance

Great-circle (straight-line) distance between HOST CITIES, following each club’s venues in date order and returning home at the end. City coordinates come from standard public geographic records, rounded to three decimal places.

Not this: This is a proxy, not flight mileage. It knows nothing about routing, aircraft or ground transfers, and it does not assume a club flew home on off days inside a road run. Treat it as a way to compare clubs, not as a distance anyone actually travelled.

Rankings and ties

Clubs sharing a value share the best rank available: if five clubs lead on a number, all five are first. Where a value is shared by a third of the league or more, we say so rather than printing a placing that carries no information.

The limitsWhat a published schedule cannot tell anybody
What we cannot see

Arena availability, club requests, broadcast requirements, holds placed and released, and every draft version before the published one. None of it is public. A published schedule is an output, and we do not get the inputs.

Arena calendars

Public event listings can show that a building hosts other things. They are not a reconstruction of what the league had in front of it when the schedule was being built, and we have not used them to make any claim on this page.

What we do not calculate

There is no overall fairness score and no schedule difficulty rating anywhere on this page. Both would require weighting things against each other that have no common unit, and the weights would be ours rather than anybody’s in the sport.

The fictional league

The four-club league in the middle of this piece is invented, including the clubs, the buildings, the concerts and the exam week. It is kept in separate files from the NHL data and is labelled wherever it appears. None of its numbers describe the NHL.

About

Tyler Fitch spent six years with the Edmonton Oilers, holds an MBA in Hockey Management, and served as Executive Director of the Business of Hockey Institute. He now builds scheduling software for sports leagues at LeagueNav Sports Inc., and has scheduled over 50,000 games in the last five years. He wrote this for his 32nd birthday, largely because the number lined up.

None of which means he has seen how the NHL builds its schedule. He has not, and the piece says so wherever it matters.

Independent analysis. Not affiliated with, endorsed by, or connected to the National Hockey League or any NHL club. Team names and abbreviations are used for identification only.

Built for a birthday. / 32

11 Who wrote this

We build this for a living

I run LeagueNav, where we build scheduling software for leagues that have the same problem the NHL has, at a size where nobody has a scheduling department. The constraints in this piece are the ones our customers hand us every season.

If your league is straightforward, the free schedule generator is genuinely free and will do it. If it looks more like the problem above, that is what managed scheduling is for.

More of this kind of work lives in Scheduling Studies.