Player, team and match analytics

Soccer Statistics API for Player, Team and Match Data

Access structured soccer statistics including goals, assists, xG, xA, possession, shots, passes, corners, cards, saves, tackles, season totals and career records for apps, media, fantasy, betting and analytics products.

Player Statistics Team Statistics Match Statistics Historical Data
Player Stats Season Advanced Metrics
{
  "player_id": "player_301",
  "season": "2026",
  "appearances": 28,
  "minutes": 2241,
  "goals": 17,
  "assists": 9,
  "expected_goals": 15.8,
  "expected_assists": 7.4,
  "shots_on_target": 41,
  "pass_accuracy": 84.6
}
Analyse Players Season, career and match performance
Compare Teams Possession, shots, passing and form
Structured soccer performance data

What Is a Soccer Statistics API?

A Soccer Statistics API gives applications machine-readable access to player, team and match performance data. Instead of collecting figures manually, developers can retrieve structured statistics and present them in score apps, media products, fantasy platforms, scouting tools, betting systems, dashboards and machine-learning workflows.

Statistics can be returned at different levels, including one match, a competition, a season, a selected date range or a player’s career. The strongest integrations preserve this scope so users understand exactly what each number represents.

Exact metrics, competitions and historical depth depend on confirmed API coverage and the selected plan.

Soccer Statistics Available Through the API

Goals and Assists

Retrieve goals, assists, appearances, starts, minutes played, penalties, own goals and scoring contributions.

Expected Goals and Expected Assists

Use xG and xA metrics where supported to analyse chance quality, attacking output and creative contribution.

Shots and Finishing

Access total shots, shots on target, blocked shots, shots inside the box, conversion rate and related attacking metrics.

Possession and Passing

Retrieve possession percentage, passes, completed passes, pass accuracy, key passes, crosses and long balls where available.

Defending

Analyse tackles, interceptions, clearances, blocks, recoveries, duels and defensive contributions.

Goalkeeping

Use saves, goals conceded, clean sheets, penalties saved and other supported goalkeeper statistics.

Set Pieces

Retrieve corners, free kicks, penalties, crosses and supported set-piece performance data.

Cards and Fouls

Access fouls committed, fouls suffered, yellow cards, second yellows, red cards and disciplinary totals.

Season and Career Statistics

Build season summaries, competition totals, recent form and career records for players and teams.

Match, Season and Career Soccer Data

The same player or team can be analysed at several levels. Preserve the selected competition, season, match and date-range context in every request and response.

Statistics level Typical data Common use
Product application
Match One completed or live fixture Possession, shots, passes, corners, cards, saves and player performance Match centres, live graphics and post-match reports
Competition One league, cup or tournament Goals, assists, clean sheets, cards, leaders and team performance Competition hubs, rankings and leaderboards
Season Performance during a selected season Appearances, minutes, goals, assists, xG, xA and season totals Player pages, fantasy research and scouting
Recent Form Selected number of recent matches Rolling goals, shots, possession, points and performance trends Previews, predictions and analytics dashboards
Career All supported historical appearances Career matches, goals, assists, minutes, cards and milestones Historical player profiles and media products
Attacking statistics

Soccer Player Attacking Statistics

Attacking data can support player comparisons, fantasy decisions, scouting, media graphics and predictive models. Use rate statistics together with appearances and minutes so small samples are not presented as definitive.

Goals

Show total goals, non-penalty goals, penalties scored, scoring frequency and goals per 90 minutes where supported.

Assists

Retrieve credited assists, key passes, chances created and assist-rate statistics.

Expected Goals

Use xG to describe estimated chance quality rather than treating every shot as equally likely to score.

Expected Assists

Use xA to analyse the quality of chances created for teammates where the metric is available.

Shots

Compare total shots, shots on target, blocked attempts, headed shots and attempts from different areas.

Finishing Efficiency

Analyse conversion rate, goals versus xG and scoring output while keeping sample size visible.

Possession and passing

Soccer Passing and Possession Statistics

Possession

Display team possession percentages and compare control across match periods, fixtures or seasons.

Passes and Accuracy

Retrieve attempted passes, completed passes and pass-completion percentage.

Key Passes

Use supported chance-creation metrics to identify passes that lead directly to shots.

Progressive and Final-Third Passing

Analyse advanced passing categories where they are included in coverage.

Crosses and Long Balls

Compare attempted and completed crosses, switches and long-range distribution.

Touches and Ball Progression

Use touches, carries and related progression data where supported.

Defending and goalkeeping

Defensive and Goalkeeper Statistics

Tackles

Retrieve attempted tackles, successful tackles and tackle success where available.

Interceptions

Measure passes and attacking actions disrupted by defenders and midfielders.

Clearances and Blocks

Use clearances, blocked shots and defensive actions in player and team analysis.

Duels

Compare ground and aerial duels, success rates and physical contest involvement where supported.

Saves

Retrieve goalkeeper saves, shots faced, save percentage and goals conceded.

Clean Sheets

Track team and goalkeeper clean sheets across matches, competitions and seasons.

Use Stable IDs and Preserve Context

Names can change, repeat or be formatted differently. Store stable player, team, match and competition identifiers and keep the scope of every statistic attached to the value.

Store the player identifier with every record
Preserve competition and season context
Store appearances and minutes with rate metrics
Record when statistics were updated
Separate unavailable values from true zero values
Cache historical data appropriately
Statistics Scope
player_id
  ├── match_statistics
  ├── season_statistics
  ├── competition_statistics
  ├── recent_form
  └── career_statistics

Each response should retain:
- scope
- filters
- sample size
- update timestamp

Useful Filters

Player or team identifier
Competition identifier
Season
Date range
Home or away context
Recent match count
Integration examples

Request Soccer Player Statistics in JavaScript, Python and PHP

These examples show a typical authenticated request pattern. Replace the example host, endpoint and authentication method with the values in the official API documentation.

// JavaScript
const playerId = 'player_301';

const response = await fetch(
  `https://api.example.com/v1/soccer/players/${playerId}/statistics?season=2026`,
  {
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY',
      'Accept': 'application/json'
    }
  }
);

if (!response.ok) {
  throw new Error(`API error: ${response.status}`);
}

const statistics = await response.json();
# Python
import requests

player_id = "player_301"

response = requests.get(
    (
        "https://api.example.com/v1/soccer/"
        f"players/{player_id}/statistics"
    ),
    params={"season": "2026"},
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Accept": "application/json",
    },
    timeout=15,
)

response.raise_for_status()
statistics = response.json()
<?php
$playerId = 'player_301';

$url = sprintf(
    'https://api.example.com/v1/soccer/players/%s/statistics?season=2026',
    rawurlencode($playerId)
);

$ch = curl_init($url);

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer YOUR_API_KEY',
        'Accept: application/json',
    ],
    CURLOPT_TIMEOUT => 15,
]);

$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);

curl_close($ch);

Example Soccer Player Statistics Response

The following response is illustrative. Final property names and metric definitions must follow the published API documentation.

{
  "data": {
    "player": {
      "id": "player_301",
      "name": "A. Morgan",
      "position": "Forward",
      "team_id": "team_18"
    },
    "scope": {
      "competition_id": "competition_24",
      "season": "2026"
    },
    "appearances": 28,
    "starts": 25,
    "minutes": 2241,
    "attacking": {
      "goals": 17,
      "assists": 9,
      "expected_goals": 15.8,
      "expected_assists": 7.4,
      "shots": 74,
      "shots_on_target": 41
    },
    "passing": {
      "passes_attempted": 812,
      "passes_completed": 687,
      "pass_accuracy": 84.6,
      "key_passes": 52
    },
    "discipline": {
      "yellow_cards": 3,
      "red_cards": 0
    },
    "updated_at": "2026-08-06T10:30:00Z"
  }
}
Team analysis

Soccer Team Statistics and Performance Trends

Team statistics help applications compare playing style, attacking output, defensive performance and recent form across competitions and seasons.

Team metric What it can show Common product use
Goals for and against Scoring output and defensive record Standings, previews and team comparisons
Expected goals Quality of chances created and conceded Analytics, modelling and performance review
Possession Share of controlled match time Playing-style analysis and media graphics
Shots and shots on target Attacking volume and shooting accuracy Match previews and prediction features
Passing accuracy Ball-retention and distribution quality Tactical dashboards and team profiles
Recent form Results and performance across recent fixtures Previews, fantasy research and odds analysis
Commercial applications

What Can You Build With a Soccer Stats API?

Fantasy Soccer Platforms

Use goals, assists, saves, cards, minutes and live player events to support scoring, selection and leaderboards.

Sports Media Websites

Create player profiles, team pages, leaderboards, match reports and statistical graphics.

Analytics Dashboards

Visualise xG, xA, possession, shots, passing, defensive actions and historical trends.

AI and Prediction Models

Prepare historical player, team and match features for responsible machine-learning and forecasting workflows.

Scouting and Recruitment Tools

Organise performance by player, competition, season, position and recent form for further human evaluation.

Betting and Trading Platforms

Combine statistics with fixtures, live scores, historical results and separately available odds data.

Responsible statistics

Use Soccer Statistics With the Right Context

Statistics can become misleading when sample size, competition level, player role or match context is removed. Applications should show the scope behind every comparison.

Show Sample Size

Display appearances, starts and minutes alongside averages and per-90 metrics.

Preserve Competition Context

Avoid combining unrelated leagues and seasons without explaining the aggregation.

Define Advanced Metrics

xG, xA and similar metrics can vary by data model. Use the provider’s documented definitions consistently.

Handle Missing Data Clearly

Distinguish unavailable values from genuine zeros and avoid silently inventing missing figures.

Soccer Statistics API Coverage

Statistics coverage may include international competitions, domestic leagues, cups and selected youth or women’s competitions. Available metrics and historical depth can vary by competition, season and plan.

Before launch, confirm whether your product requires basic match statistics, advanced metrics such as xG and xA, live player data, season totals, career records or historical event-level data.

Frequently asked questions

Soccer Statistics API FAQs

What data is available in the Soccer Statistics API?

Depending on coverage, data may include goals, assists, xG, xA, shots, possession, passes, corners, cards, saves, tackles and season or career records.

Can I retrieve player season statistics?

Player statistics may be filtered by competition and season where supported. Confirm the required league and historical depth.

Does the API include xG and xA?

Expected goals and expected assists may be available for supported competitions and plans. Use the provider’s documented definitions.

Can I use the data for a fantasy soccer app?

Yes. Goals, assists, saves, cards, minutes and live events can support fantasy scoring where the required fields are covered.

Can I use soccer statistics for machine learning?

Historical statistics can support model development where licence terms permit. Prevent data leakage and preserve prediction-time context.

Are career statistics available?

Career totals may be available for supported players and competitions. Historical completeness should be confirmed before publication.

Build with soccer statistics

Integrate Soccer Statistics Into Your Product

Review available plans, confirm competition and metric coverage, and begin building player profiles, team comparisons, dashboards, fantasy tools and analytical products.

Chat on WhatsApp