FIFA publishes free 52-page World Cup match reports that parse into structured scouting data
17 June 2026
FIFA is publishing a free 52-page post-match summary for every 2026 World Cup group-stage game, each PDF carrying formations, pressing phases, line breaks, and player-by-player physical data.
FIFA’s Training Centre hosts the hub. As of June 16th, 2026, 12 completed group-stage matches have linked PDFs. Each report follows the same structure – team sheets, formations, key statistics, phases of play in and out of possession, line-break tables per player, defensive pressure maps, and physical data down to sprint zones. Because those sections sit in the same order every time, you can parse them across all 12 matches instead of reading each PDF on its own.
Defensive-block comparison across 11 matches
FIFA’s reports break out-of-possession time into high block, mid block, and low block. The table below covers all 22 team-matches from the first 11 extractable PDFs, sorted by low-block percentage.
| Team | Match | Low block | Mid block | High block | Result |
|---|---|---|---|---|---|
| Australia | M06 vs Turkiye | 56% | 18% | 1% | W 2-0 |
| Japan | M11 vs Netherlands | 50% | 33% | 1% | D 2-2 |
| Qatar | M08 vs Switzerland | 47% | 17% | 4% | D 1-1 |
| Scotland | M05 vs Haiti | 34% | 25% | 4% | W 1-0 |
| Bosnia and Herzegovina | M03 vs Canada | 31% | 14% | 1% | D 1-1 |
| Paraguay | M04 vs USA | 28% | 14% | 3% | L 1-4 |
| Czechia | M02 vs Korea Republic | 26% | 13% | 6% | L 1-2 |
| Sweden | M12 vs Tunisia | 25% | 24% | 2% | W 5-1 |
| Mexico | M01 vs South Africa | 25% | 11% | 9% | W 2-0 |
| Ecuador | M09 vs Cote d’Ivoire | 24% | 19% | 4% | L 0-1 |
| Cote d’Ivoire | M09 vs Ecuador | 24% | 27% | 11% | W 1-0 |
| Tunisia | M12 vs Sweden | 21% | 24% | 2% | L 1-5 |
| Haiti | M05 vs Scotland | 21% | 25% | 6% | L 0-1 |
| Korea Republic | M02 vs Czechia | 20% | 18% | 5% | W 2-1 |
| Morocco | M07 vs Brazil | 19% | 16% | 3% | D 1-1 |
| Netherlands | M11 vs Japan | 18% | 25% | 2% | D 2-2 |
| Brazil | M07 vs Morocco | 16% | 39% | 6% | D 1-1 |
| South Africa | M01 vs Mexico | 14% | 30% | 5% | L 0-2 |
| USA | M04 vs Paraguay | 14% | 8% | 7% | W 4-1 |
| Canada | M03 vs Bosnia and Herzegovina | 11% | 5% | 5% | D 1-1 |
| Turkiye | M06 vs Australia | 9% | 7% | 6% | L 0-2 |
| Switzerland | M08 vs Qatar | 8% | 13% | 10% | D 1-1 |
Australia against Turkiye spent 56% of their out-of-possession time in a low block and still won 2-0 – the most extreme low-block share in the tournament so far. Qatar sat in a low block for 47% against Switzerland, conceded 3.14 xG, and survived with a 1-1 draw. Japan spent 50% in a low block and 33% in a mid block against the Netherlands, conceding just 0.63 xG by compressing space centrally. At the other end, Turkiye (9% low block) and Korea Republic (10% low block) both played higher but with opposite results – Korea Republic won, Turkiye lost.
Australia and Japan both sat deep and still held opponents to low xG, so sitting deep did not by itself cost them. Australia took 27% possession and generated only 0.99 xG but scored twice, both times breaking forward the moment they won the ball. Turkiye, by contrast, had 63% possession and 1.66 xG but never broke Australia’s 5-4-1 low block, and all that territory produced nothing on the counter.
The pattern worth tracking through the rest of the group stage is whether the deep-block winners keep converting on the counter the way Australia did, or whether sitting deep and creating nothing the other way – the Paraguay and Czechia outcome – becomes the more common result.
Worked extraction – M01 Mexico 2-0 South Africa
Match context. June 11th, 2026, Mexico City Stadium, 13:00 kick-off. Mexico lined up with a back four and front three, South Africa with a back five and front two.
Key statistics.
| Mexico | South Africa | |
|---|---|---|
| Possession | 57.1% | 36.1% |
| xG | 1.78 | 0.10 |
| Attempts (on target) | 16 (4) | 3 (2) |
| Passes (completed) | 547 (495) | 351 (290) |
| Pass completion | 90% | 83% |
| Completed line breaks | 105 | 57 |
| Defensive line breaks | 10 | 3 |
| Final-third receptions | 117 | 36 |
| Crosses | 13 | 8 |
| Ball progressions | 23 | 8 |
| Defensive pressures (direct) | 170 (26) | 306 (45) |
| Forced turnovers | 31 | 32 |
| Total distance | 107.3 km | 97.1 km |
In-possession phases (% of match time).
| Phase | Mexico | South Africa |
|---|---|---|
| Build-up unopposed | 47% | 43% |
| Build-up opposed | 13% | 13% |
| Progression | 16% | 14% |
| Final third | 11% | 7% |
| Long ball | 3% | 6% |
| Attacking transition | 10% | 12% |
| Counter attack | 1% | 2% |
| Set piece | 5% | 5% |
Out-of-possession phases (% of match time).
| Phase | Mexico | South Africa |
|---|---|---|
| High press | 9% | 6% |
| Mid press | 3% | 3% |
| Low press | 0% | 1% |
| High block | 7% | 5% |
| Mid block | 25% | 30% |
| Low block | 11% | 14% |
| Recovery | 5% | 2% |
| Defensive transition | 12% | 10% |
| Counter-press | 8% | 7% |
Tactical read. Mexico dominated territory (117 final-third receptions vs 36) and generated 1.78 xG against 0.10. South Africa spent 30% of the match in a mid block and 14% in a low block but only managed 3 attempts. Mexico created 105 completed line breaks, nearly double South Africa’s 57. South Africa struggled to progress – 8 ball progressions across 90 minutes – so the back five rarely connected to the front two through the middle. Mexico forward Julian Quinones completed all 12 of his attempted line breaks (100%), the highest rate of any outfield starter.
Every match, parsed and searchable on our dashboard
We have already extracted every completed group-stage match into our World Cup 2026 dashboard. Open the Results tab to get the full breakdown for any match: possession, xG, shots on target, passes, pass accuracy, line breaks, threat, take-ons, offers and receptions in behind, defensive pressures, forced turnovers, crosses, corners, sprints, top speed, distance, fouls, and cards – all as side-by-side comparison bars. Below that, phases of play (in-possession and out-of-possession percentage splits), a shot-by-shot timeline with player, outcome, body part, and delivery type, top passing connections, and per-player tables with every stat down to individual xG and sprint counts. Each match links directly to the original FIFA PDF.
How to extract the data yourself
Every report follows the same page sequence.
- Team sheets (pages 1-2). Starting XI, substitutes, shirt numbers, positions, minute markers for goals, cards, and subs.
- Formations (page 3). Listed as “FORMATION X-X-X” for each team.
- Key statistics (page 4). Possession, xG, attempts, passes, line breaks, final-third receptions, crosses, ball progressions, defensive pressures, forced turnovers, second balls, distance.
- Phases of play (pages 5-6). In-possession and out-of-possession time shares as percentages. Eight in-possession categories and nine out-of-possession categories, including the high/mid/low block splits used in the comparison above.
- Line-height and team-length diagrams (pages 7-8). Build-up low, build-up mid, and final-third phase with distances in metres.
- Line breaks per player (pages 9-14). Attempted, completed, completion percentage, broken down by unit count, direction, and distribution type.
- Defensive pressures and duels (pages 15-30). Individual pressure counts, success rates, aerial duels, ground duels.
- Passing networks and distribution (pages 31-40). Pass maps, distribution in final third, offers made.
- Physical data (pages 41-52). Per-player total distance, speed zones, high-speed run count, sprint count, top speed.
Text extraction with PyMuPDF (pip install pymupdf) works on 11 of 12 current PDFs.
import fitz
doc = fitz.open("PMSR-M01 MEX V RSA.pdf")
text = "".join(page.get_text() for page in doc)
The phases-of-play block starts after the line IN POSSESSION and ends after Counter-press. Regex or line-offset parsing works because the section order is consistent across reports. The defensive-block comparison above took less than an hour to compile from the raw extractions.
Two open-source repos do most of the heavy lifting. Bustami/efi-fifa-data-wc-2026 scrapes per-player Enhanced Football Intelligence metrics from FIFA’s platform after each match – 124 columns covering xG, shots, passes, line breaks, pressures, and physical data. shufinskiy/sport_analytics_tools provides both a deterministic Python parser (PyMuPDF) and a Claude prompt that convert the 52-page PDFs into structured JSON.
2026
August
- 4th
July
- 29th
- 27th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 17th
- 17th
- 16th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 7th
- 6th
- 5th
- 5th
- 4th
- 3rd
- 2nd
- 1st
- 1st
June
- 30th
- 30th
- 29th
- 29th
- 29th
- 28th
- 28th
- 27th
- 26th
- 26th
- 25th
- 24th
- 24th
- 23rd
- 22nd
- 21st
- 21st
- 21st
- 20th
- 19th
- 19th
- 18th
- 17th
- 17th
- 16th
- 15th
- 15th
- 14th
- 14th
- 13th
- 13th
- 12th
- 12th
- 11th
- 11th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
- 1st
May
- 31st
- 31st
- 30th
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
-
How analysts should measure whether high pressing is creating control or exposing transition attacks11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
- 1st
March
- 24th
January
- 18th
2025
December
- 21st
- 16th
- 7th
- 3rd
November
- 29th
- 24th
- 20th
- 14th
- 12th
- 8th
- 7th
- 4th
- 2nd
October
- 31st
- 28th
- 22nd
- 20th
- 19th
- 12th
September
- 30th
- 28th
- 26th
- 24th
- 23rd
- 20th
- 18th
- 16th
- 14th
- 4th
- 3rd
- 1st
August
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 20th
- 17th
- 14th
- 12th
- 10th
- 8th
- 4th
July
- 10th
- 5th
- 4th
June
- 29th
- 14th
- 13th
- 12th
- 2nd
May
- 29th
- 25th
- 22nd
- 20th
- 15th
- 8th
April
- 30th
- 9th
March
- 28th
- 5th
February
- 26th
- 20th
- 19th
- 12th
- 8th
January
- 31st
- 30th
- 16th
- 12th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
2024
December
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
November
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 18th
- 16th
October
- 21st
- 12th
- 11th
- 9th
- 7th
- 6th
- 4th
- 3rd
- 2nd
- 1st
September
- 30th
- 29th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 4th
- 3rd
- 2nd
- 1st
August
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 20th
- 19th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
July
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 15th
- 14th
- 13th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
June
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
May
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
April
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 3rd
- 2nd
- 1st
March
- 31st
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 1st
February
- 28th
- 27th
- 26th
- 25th
- 23rd
- 22nd
- 21st
- 20th
- 18th
- 15th
- 14th
- 13th
- 12th
- 11th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
January
- 31st
- 30th
- 29th
- 28th
- 27th
- 25th
- 24th
- 22nd
- 21st
- 20th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
- 2nd
- 1st
2023
December
- 31st
- 29th
- 28th
- 27th
- 25th
- 24th
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 13th
- 12th
- 11th
- 10th
- 8th
- 7th
- 6th
- 4th
- 3rd
- 2nd
- 1st
November
- 30th
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
October
- 31st
- 30th
- 29th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 19th
- 17th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 1st
September
- 30th
- 28th
- 26th
- 25th
- 24th
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 9th
- 3rd
August
- 31st
- 28th
- 27th
- 26th
- 21st
- 20th
- 15th
- 14th
- 13th
- 12th
- 7th
- 4th
- 3rd
July
- 31st
- 30th
- 28th
- 27th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 12th
- 11th
- 10th
- 9th
- 8th
- 7th
- 6th
- 5th
- 4th
- 3rd
June
- 11th
- 10th
- 7th
- 5th
- 4th
- 1st
May
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 21st
- 20th
- 19th
- 18th
- 17th
- 16th
- 15th
- 14th
- 13th
- 11th
- 10th
- 9th
- 8th
- 7th
- 5th
- 4th
- 3rd
- 2nd
- 1st
April
- 29th
- 28th
- 27th
- 26th
- 25th
- 24th
- 23rd
- 22nd
- 22nd
- 21st
- 20th
- 2nd
March
- 6th
February
- 27th
- 20th
- 5th
January
- 19th
Receive every new post in your inbox.
Subscribe to receive Research reports and the Weekly Recap by email. By continuing, you agree to our Privacy Policy and Terms of Service.