Documentation / Matches
FOOTBALL MATCH STATISTICS API
Match statsComplimentary key
Each side's figures for a match: shots, shots on target, possession, passes, corners, fouls, offsides, cards and expected goals. On the complimentary key it reads this season's Premier League.
GET
/v1/matches/{match_id}/statsTRY ITComplimentary
Kept in this browser for every docs page. No key yet? Get a free key
GET https://api.footballapi.org/v1/matches/mt_95kf4jw9a/statsThe answer appears below, with its status and time.
curl "https://api.footballapi.org/v1/matches/mt_95kf4jw9a/stats" \ -H "X-API-Key: your key"
PARAMETERS
match_idrequiredstringA match id from any result, fixture or match list, such as mt_e2hk79mn5. In the path.RETURNS
match_idstringOur id for the match, mt_ and 9 characters, the same in every answer and for goodhome_club_namestringThe home clubaway_club_namestringThe away clubkickoff_utcstringKickoff in UTC, ISO 8601match_statusstringWhere the match stands, such as finished or not startedstatslistEach side's figures for the matchstats[].club_namestringThe clubstats[].statsobjectEach side's figures for the matchstats[].stats.cornersintegerCornersstats[].stats.expected_goalsnumberExpected goalsstats[].stats.foulsintegerFouls committedstats[].stats.free_kicksintegerFree kicksstats[].stats.offsidesintegerTimes caught offsidestats[].stats.passes_accurateintegerPasses that reached a team-matestats[].stats.passes_totalintegerPassesstats[].stats.possession_pctintegerShare of the ball, as a percentagestats[].stats.red_cardsintegerRed cardsstats[].stats.savesintegerSaves by the goalkeeperstats[].stats.shots_blockedintegerShots blockedstats[].stats.shots_inside_boxintegerShots from inside the penalty areastats[].stats.shots_off_targetintegerShots off targetstats[].stats.shots_on_targetintegerShots on targetstats[].stats.shots_outside_boxintegerShots from outside the penalty areastats[].stats.shots_totalintegerShotsstats[].stats.yellow_cardsintegerYellow cardsEXAMPLE ANSWER
200GET /v1/matches/mt_95kf4jw9a/stats, taken 21 Oct 2026
{ "data": { "match_id": "mt_95kf4jw9a", "home_club_name": "Tottenham", "away_club_name": "Coventry", "kickoff_utc": "2026-10-19T19:00:00Z", "match_status": "finished", "stats": [ { "club_name": "Tottenham", "stats": { "corners": 4, "expected_goals": 0.9, "fouls": 15, "free_kicks": 14, "offsides": 6, "passes_accurate": 499, "passes_total": 559, "possession_pct": 66, "red_cards": 0, "saves": 0, "shots_blocked": 4, "shots_inside_box": 10, "shots_off_target": 7, "shots_on_target": 5, "shots_outside_box": 6, "shots_total": 16, "yellow_cards": 1 } }, { "club_name": "Coventry", "stats": { "corners": 4, "expected_goals": 0.83, "fouls": 14, "free_kicks": 15, "offsides": 1, "passes_accurate": 221, "passes_total": 285, "possession_pct": 34, "red_cards": 0, "saves": 2, "shots_blocked": 4, "shots_inside_box": 11, "shots_off_target": 7, "shots_on_target": 1, "shots_outside_box": 1, "shots_total": 12, "yellow_cards": 3 } } ] }, "meta": { "request_id": "req_e40600e3f584dc59" } }
ERRORS
401unauthorizedNo key, or a key we do not know.400bad_requestA parameter is missing or not in the right form; the message names it.403upgrade_requiredAnything outside this season's Premier League, on the complimentary key.404not_foundAn id or competition we do not have.422unknown_parameterA parameter this endpoint does not take.429quota_exceededThe day's 50 calls are used, on the complimentary key; they reset at 00:00 UTC.