FIXTURES_API

2026 FIFA World Cup Fixtures API

Every fixture in the 2026 FIFA World Cup - all 104 matches across 12 groups and 7 knockout stages - delivered as clean JSON via REST. Includes kickoff times in UTC, venues, host cities, and the team or qualification placeholder for each side.

104 matches: 72 group stage + 32 knockout
Kickoff times in UTC + venue + stadium
12 groups A–L with home/away ordering
Round of 32 → Final knockout bracket
Filter by team, group, stage, or date
Updates as fixtures shift or are postponed

Complete schedule from day one

The fixtures endpoint returns the full schedule the moment the draw is announced. Use it to populate calendars, build match-day reminders, or seed your prediction game with the full bracket from kickoff to the final.

Knockout placeholders

Knockout fixtures are returned with positional placeholders (e.g. "Winner Group A" or "Winner Match 73") until the group stage resolves. The API automatically updates them with the qualified team as soon as results are confirmed.

Filter by group, stage, team, date, or venue

Query parameters cover every realistic use case: group=A through L, stage=group-stage|round-of-32|round-of-16|quarter-finals|semi-finals|third-place|final, team=<id>, date=<YYYY-MM-DD>, date_from/date_to, and host_city=<slug>. Combine filters server-side instead of pulling the whole schedule and filtering client-side.

Built for bracket apps and prediction games

Every fixture exposes match_number, stage, group, and qualification_path so you can render a complete 48-team bracket from a single API call. Update fixture statuses live as the group stage resolves and knockout slots are filled.

ENDPOINT

/football/matches

Use competition_id={COMPETITION_ID} to scope this endpoint to the 2026 FIFA World Cup. The same endpoint works for 1,195 other competitions.

JavaScript
// Fetch all 104 World Cup 2026 fixtures
const response = await fetch(
  'https://api.thestatsapi.com/api/football/matches?competition_id={COMPETITION_ID}&season=2026&per_page=104',
  { headers: { 'Authorization': 'Bearer YOUR_API_KEY' } }
);
const { data } = await response.json();
// data is an array of 104 fixture objects

What the World Cup 2026 fixtures API returns

Selected fields from the JSON response. Full schema and example payloads are in the developer docs.

FieldTypeDescription
match_numberintegerFIFA fixture number (1–104).
kickoff_utcISO 8601UTC kickoff time. Convert client-side as needed.
stagestringgroup-stage | round-of-32 | round-of-16 | quarter-finals | semi-finals | third-place | final.
groupstring?A–L for group-stage fixtures; null for knockouts.
home / awayobject{ type: "team" | "placeholder", slug?, label }. Placeholder strings are filled in as the bracket resolves.
host_city_slugstringSlug of the host city (one of 16).
stadiumstringOfficial venue name.
statusstringscheduled | live | finished | postponed.

What developers build with the World Cup 2026 fixtures API

Bracket challenge apps

Render the full 48-team bracket and accept predictions for every match.

Calendar & reminder bots

Subscribe users to UTC kickoff reminders in Telegram, Slack, or Discord.

Match-day landing pages

Build SEO-friendly fixture detail pages from the matches endpoint alone.

Live tickers & widgets

Combine fixtures + lineups + events to power broadcaster-grade match centre experiences.

Fantasy game seeding

Seed your fantasy gameweeks with the full World Cup schedule before kickoff.

Travel & ticket sites

Cross-reference fixtures with host city pages to surface match-day travel packages.

Implementation notes

  • Cache the full fixture list and refresh once per hour during the tournament — kickoff times rarely change after the draw.
  • Treat home / away as ordered slots, not always literal home advantage; in knockouts these are positional only.
  • Render UTC client-side using the user's browser timezone for a localised experience without a server round-trip.
  • When the group stage finishes, refetch knockout fixtures to pick up the resolved teams.
  • Use webhook subscriptions if you need push notifications instead of polling the matches endpoint.

Frequently Asked Questions

How many matches are in the 2026 World Cup?

104 matches total: 72 group-stage matches across 12 groups, plus 32 knockout matches (16 Round of 32, 8 Round of 16, 4 quarter-finals, 2 semi-finals, 1 third-place playoff, and the Final).

When do World Cup 2026 fixtures start and end?

The tournament kicks off on June 11, 2026 at the Estadio Azteca in Mexico City. The Final is on July 19, 2026 at MetLife Stadium in New York/New Jersey. The tournament window spans 39 days.

How do I get only group stage fixtures?

Filter the matches endpoint by stage=group-stage or by date range June 11–27, 2026. You can also iterate per-group by filtering by group=A through L.

Are knockout fixtures available before the group stage finishes?

Yes — knockout fixtures are pre-seeded with the positional placeholder (e.g. "Winner Group A"). The team is filled in automatically once each group is decided.

How fresh is fixture data when kickoff times change?

Schedule changes (postponements, kickoff-time shifts, venue swaps) propagate to the API within minutes of the official FIFA announcement.

What timezone are kickoff times in?

All kickoff timestamps are returned in UTC (ISO 8601). Convert to any local timezone client-side, or use our free /tools/match-kickoff-time-converter to compare across cities.

Can I get fixtures as iCalendar (.ics) for a personal calendar?

Yes — append ?format=ics to the matches endpoint to receive an .ics feed you can subscribe to in Google Calendar, Apple Calendar, or Outlook.

Does the API include FIFA broadcast partner information?

Per-territory broadcast partners are returned alongside the fixture when available. Coverage varies by FIFA licensing agreements per region.

Start building with the World Cup 2026 API

7-day free trial. All endpoints included on every plan.