Each league has their own system, but (at least for the ones I know about) nowadays it’s usually done with a computer program. They feed in all the constraints and have the program generate a random schedule that satisfies all of them. The constraints tend to be things like:
* there have to be at least X days between two matches involving the same team, including any previously arranged matches in other competitions
* teams in the same city shouldn’t have a home match on the same day
* a given team shouldn’t have more than X home matches in succession, or more than X away matches in succession
* matches can’t take place on certain days that have existing holidays or events (including local events or expected transport disruption)
* there must be matches at certain specific times that TV broadcasters have already built into their schedules
Sometimes a match has to be postponed part way through the season because something unexpected came up (e.g. there was an earthquake, or all the players got covid). In this case the teams, the league and the broadcasters will usually just negotiate a new date on an ad hoc basis.
Latest Answers