Football API demos / 02

Fixture planner

One calendar. Every competition. Compare schedules and explore the time between kickoffs.

Built by Sportmonks with the Sportmonks Football API. The data on this site is recorded, not live.

The next three weeks

Who has the busiest schedule?

League nights. Cup ties. European trips. Put them on one calendar and see how closely the kickoffs stack up.

21-day comparisonUp to 6 teamsKickoff gaps, not recovery time

Recorded API data6 clubs · responses dated 19 Oct 2026 · all response pages included

Add Sportmonks responses

Paste a fixtures response or choose saved JSON files. Data stays in this tab, is not uploaded, and clears on refresh. Add each team and every response page. Leave out your API token.

Multiple files · up to 5 MB total

Choose your teams 6/6

One club from each of Europe's top five leagues, plus Feyenoord. Compare up to six teams.

All six club recordings are loaded. Toggle teams to narrow the comparison.

Premier LeagueEngland
La LigaSpain
BundesligaGermany
Serie AItaly
Ligue 1France
EredivisieNetherlands
Start date · UTC
Competition

2026-10-19 — 2026-11-08 · UTC · Imported snapshot

Less than 3 days between kickoffs

Fixtures by team and date. All dates use UTC. Gaps are approximate days between included kickoffs.
TeamsKickoffs in UTCWeek 1 19 Oct — 25 OctWeek 2 26 Oct — 1 NovWeek 3 2 Nov — 8 Nov
Mon19Tue20Wed21Thu22Fri23Sat24Sun25Mon26Tue27Wed28Thu29Fri30Sat31Sun1Mon2Tue3Wed4Thu5Fri6Sat7Sun8
MCIManchester City
BARFC Barcelona
FCBFC Bayern München
INTInter
PSGParis Saint Germain
FEYFeyenoord

Manchester City

Tue 20 Oct, 19:00 UTC
Sat 24 Oct, 11:30 UTC
Wed 28 Oct, 19:30 UTC
Sat 31 Oct, 15:00 UTC
Wed 4 Nov, 20:00 UTC
Sat 7 Nov, 17:30 UTC

FC Barcelona

Tue 20 Oct, 19:00 UTC
Sun 25 Oct, 20:00 UTC
Sat 31 Oct, 20:00 UTC
Tue 3 Nov, 20:00 UTC
Sun 8 Nov, 20:00 UTC

FC Bayern München

Wed 21 Oct, 19:00 UTC
Sun 25 Oct, 16:30 UTC
Wed 28 Oct, 19:45 UTC
Sat 31 Oct, 17:30 UTC
Tue 3 Nov, 20:00 UTC
Sat 7 Nov, 14:30 UTC

Inter

Wed 21 Oct, 19:00 UTC
Sun 25 Oct, 11:30 UTC
Wed 28 Oct, 17:30 UTC
Sat 31 Oct, 19:45 UTC
Tue 3 Nov, 20:00 UTC
Sun 8 Nov, 17:00 UTC

Paris Saint Germain

Tue 20 Oct, 19:00 UTC
Sun 25 Oct, 19:45 UTC
Fri 30 Oct, 18:00 UTC
Tue 3 Nov, 20:00 UTC
Sat 7 Nov, 19:45 UTC

Feyenoord

Wed 21 Oct, 19:00 UTC
Sun 25 Oct, 13:30 UTC
Sat 31 Oct, 15:30 UTC
Tue 3 Nov, 20:00 UTC
Sun 8 Nov, 11:15 UTC
Manchester City
6fixtures in view
Shortest gap: ≈ 3 days
FC Barcelona
5fixtures in view
Shortest gap: ≈ 3 days
FC Bayern München
6fixtures in view
Shortest gap: ≈ 3 days
Inter
6fixtures in view
Shortest gap: ≈ 3 days
Paris Saint Germain
5fixtures in view
Shortest gap: ≈ 3 days
Feyenoord
5fixtures in view
Shortest gap: ≈ 3 days

Fixture details

Select a fixture to explore

See the opponent, competition, status and the time since the previous included kickoff.

Gaps use consecutive kickoffs in the imported data, across all imported competitions. An earlier kickoff can fall before the visible window. Postponed, cancelled, suspended, abandoned, awarded and unconfirmed fixtures do not count. Missing competitions or pages can make gaps look longer. Day labels are rounded estimates from elapsed kickoff times. The 3-day highlight uses the exact gap and is a display threshold, not a claim about fatigue.

Behind the calendar

A small calculation. A few important details.

Compare like with like

Use the same recording window and competition coverage for every team. A missing cup competition can hide a midweek match, so this is a comparison of imported fixtures, not a guarantee of complete schedules.

Days between kickoffs

Calculate elapsed time between consecutive UTC kickoffs and show the result rounded to days. The ≈ symbol marks an estimate; highlights use the exact gap. This avoids local timezone and daylight-saving differences. Kickoff gaps do not measure time after the final whistle, travel or player workload.

Keep uncertainty visible

Unscheduled games stay off the date grid. Postponed or cancelled games remain labelled where a timestamp exists, but do not create gaps. Conflicting copies of a fixture are rejected rather than silently choosing one.

Get the data

All six schedules are bundled from the supplied responses dated 19 October 2026. The six responses contain 45 fixture entries, merged into 42 unique matches because three matches appear in both clubs' responses. Every response reports no additional pages. Use these requests to refresh the same recording window; the earlier week provides context for the first visible gap.

manchester_city.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/9
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

barcelona.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/83
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

bayern_munich.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/503
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

inter.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/2930
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

paris_saint-germain.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/591
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

feyenoord.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/73
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

team_fixtures.http
HTTP
GET https://api.sportmonks.com/v3/football/fixtures/between/2026-10-12/2026-11-09/{team_id}
  ?api_token={{apiToken}}
  &include=participants;league;state
  &per_page=50
  &page=1

If pagination.has_more is true, increase page until it is false. The imported JSON is processed locally; this demo never calls the API or stores your response.

Read the Sportmonks endpoint documentation ↗
API fields used by the fixture planner
FieldUsed for
idDeduplicate a shared match returned in both teams' responses.
starting_at_timestampPlace fixtures on UTC dates and calculate elapsed hours.
participants[].id, name, short_codeIdentify teams and label opponents.
participants[].meta.locationRead home/away explicitly, independent of array order.
league.id, league.nameCombine competitions or inspect one competition at a time.
state.developer_name, state.name, placeholderKeep fixtures with uncertain or inactive schedules out of gap calculations.
pagination.has_moreWarn when another response page is available.