Matches, every kick.
Every World Cup match in a single table — date, stage, teams, score, attendance, venue. Pick a tournament + stage. Knockout dramatic finishes (AET, penalties) are flagged.
Tournament
1
Matches
final
3
Goals
3.00/match
0
Attendance
0/match
0
Dramatic finishes
AET + penalties
| Date | Stage | Match | Score | Venue | Att. | Weather |
|---|---|---|---|---|---|---|
| Jul 12, 1998 | F | 0–3 | Stade de France, Saint-Denis | — | ☀️23° |
GET /matches?year=1998 · client-side stage filter: final
Team logistics — 1998
32 teams · sorted by distanceDistance is stadium-to-stadium between consecutive matches, great-circle (haversine). First match counts 0 km — we don't guess a pre-tournament anchor. Rest days = full days between consecutive kickoffs (so a Mon → Fri turnaround is 3 days of rest). TZ shift = max hours offset between any venue's country and the team's home country. Multi-zone countries (USA, Brazil, Russia) use their capital city as proxy. DST ignored.
| Team | Matches | Distance | TZ shift | Avg rest | Min rest | Cities visited |
|---|---|---|---|---|---|---|
| 7 | 3,409 km | 4h | 4.3d | 3d | Saint-Denis → Nantes → Marseille → Paris | |
| 5 | 2,317 km | 0h | 4.5d | 3d | Bordeaux → Montpellier → Saint-Denis → Marseille | |
| 7 | 2,228 km | 0h | 3.7d | 2d | Saint-Denis → Marseille → Saint-Étienne → Toulouse → Paris | |
| 5 | 1,872 km | 0h | 4.3d | 3d | Lens → Toulouse → Lyon → Saint-Denis → Nantes | |
| 7 | 1,788 km | 0h | 4.0d | 3d | Marseille → Saint-Denis → Lyon → Lens | |
| 5 | 1,738 km | 4h | 4.0d | 3d | Toulouse → Paris → Bordeaux → Saint-Étienne → Marseille | |
| 4 | 1,656 km | 1h | 4.0d | 3d | Marseille → Toulouse → Lens → Saint-Étienne | |
| 7 | 1,604 km | 0h | 3.5d | 2d | Lens → Nantes → Bordeaux → Lyon → Saint-Denis → Paris | |
| 4 | 1,518 km | 0h | 4.0d | 3d | Nantes → Paris → Toulouse → Saint-Denis | |
| 4 | 1,509 km | — | 4.0d | 3d | Saint-Étienne → Lens → Nantes → Toulouse | |
| 4 | 1,465 km | 1h | 4.0d | 3d | Lyon → Toulouse → Saint-Denis → Bordeaux | |
| 4 | 1,292 km | 5h | 4.3d | 3d | Montpellier → Saint-Étienne → Toulouse → Lens | |
| 4 | 1,224 km | 5h | 4.3d | 3d | Bordeaux → Saint-Étienne → Nantes → Paris | |
| 5 | 1,190 km | 0h | 3.8d | 3d | Paris → Lens → Montpellier → Lyon | |
| 3 | 1,076 km | 0h | 5.5d | 5d | Montpellier → Nantes → Saint-Étienne | |
| 3 | 1,061 km | 0h | 4.5d | 4d | Nantes → Saint-Étienne → Lens | |
| 4 | 1,043 km | 7h | 4.3d | 3d | Lyon → Bordeaux → Saint-Étienne → Montpellier | |
| 3 | 1,008 km | 6h | 4.5d | 3d | Lyon → Montpellier → Lens | |
| 3 | 1,004 km | 0h | 5.0d | 4d | Saint-Denis → Bordeaux → Paris | |
| 3 | 985 km | 8h | 5.0d | 5d | Toulouse → Nantes → Lyon | |
| 3 | 942 km | 8h | 5.0d | 4d | Lyon → Marseille → Paris | |
| 3 | 913 km | 6h | 4.0d | 3d | Paris → Lyon → Nantes | |
| 3 | 905 km | 1h | 5.5d | 5d | Saint-Denis → Bordeaux → Saint-Étienne | |
| 4 | 885 km | 0h | 4.7d | 3d | Montpellier → Bordeaux → Marseille | |
| 3 | 774 km | 1h | 5.0d | 4d | Montpellier → Paris → Lens | |
| 3 | 771 km | 0h | 5.0d | 5d | Toulouse → Montpellier → Nantes | |
| 3 | 734 km | 0h | 4.5d | 3d | Marseille → Montpellier → Saint-Denis | |
| 3 | 728 km | 0h | 5.0d | 5d | Toulouse → Saint-Étienne → Saint-Denis | |
| 3 | 679 km | 2h | 5.0d | 5d | Lens → Saint-Denis → Bordeaux | |
| 3 | 579 km | 6h | 5.0d | 4d | Lens → Paris → Lyon | |
| 3 | 535 km | 1h | 5.0d | 5d | Marseille → Toulouse → Bordeaux | |
| 3 | 292 km | 2.5h | 4.5d | 3d | Saint-Étienne → Lyon → Montpellier |
Derived client-side from GET /matches?year=1998 + GET /stadiums
Coming next: goals-by-minute bucket, captain per match, and penalty-shootout granularity. Subscribe to the API to get the extra fields as they ship.