← Back to Docs

Data Sources & Quality

Information about data provenance, quality, and limitations

Data Sources

2025 Season Data

Data Type Source Reliability
Match results Official CanPL SDP API High
Standings Official CanPL SDP API High
Team information Official CanPL sources High

Official API Data

The 2025 season data is sourced directly from the Canadian Premier League's official Sports Data Platform (SDP) API, providing authoritative match results and standings.

2019-2024 Historical Data

Data Type Source Reliability
Match results Historical records + verification High
Standings Calculated from match results High
Team information Official archives High

Historical data was compiled from official CPL match reports, verified third-party sports databases, and cross-referenced with multiple sources for accuracy.

Update Frequency

During Season (April - November)

Data Type Update Frequency Typical Delay
Match results After each matchday < 24 hours
Standings After each matchday < 24 hours
Team info As changes occur < 1 week

Off-Season (December - March)

  • Match results: No updates (season complete)
  • Standings: Final standings frozen
  • Team info: Updated for roster/stadium changes

API Cache Durations

Endpoint Cache Duration
/api/matches 1 hour
/api/standings 1 hour
/api/teams 24 hours

Data Quality

Completeness by Field

Field Completeness Notes
date 100% All matches have dates
home_team 100% All matches have team names
away_team 100% All matches have team names
home_goals 100% Final scores always recorded
away_goals 100% Final scores always recorded
season 100% Derived from date
venue 98% Some early matches missing

Data Verification Process

  1. Primary source collection - Data pulled from official APIs/records
  2. Cross-reference check - Verified against multiple sources
  3. Automated validation - Scripts check for invalid scores, date issues, duplicates
  4. Manual review - Spot checks on random samples

Standings Accuracy

Source Accuracy Notes
"official" Directly from CanPL API, excludes playoff matches
"calculated" Computed from match results, may include playoff matches

Known Limitations

Team Name Variations

Different data sources use different team name formats:

Forge FC "Forge", "Hamilton Forge"
HFX Wanderers FC "HFX Wanderers", "Halifax Wanderers"
Atletico Ottawa "Atlético Ottawa" (with accent)
York United FC "York9 FC" (pre-2021)

The API normalizes to standard names shown in the first column.

Playoff vs Regular Season

  • • Official standings from the API exclude playoff matches
  • • Calculated standings may include playoff matches
  • • There is no is_playoff flag in the current API response
  • • Future versions may add playoff filtering

Inactive Teams

Team Seasons Active
FC Edmonton 2019-2023
York United FC 2019-2024

These teams appear in historical data but not in current season matches.

Coordinate Precision

  • • Manually geocoded to stadium center points
  • • Accurate to approximately 50 meters
  • • May not reflect exact pitch center
  • • Subject to change if teams relocate

Historical Notes

2019 - Inaugural Season

  • • 7 teams competed
  • • Spring and Fall split season format
  • • Some early attendance figures missing

2020 - COVID-19 Impact

  • • "Island Games" format in PEI
  • • Shortened season (8 matches per team)
  • • No attendance data (closed doors)

2021 - Hybrid Format

  • • Bubble phases with gradual return
  • • York9 FC renamed to York United FC

2022-2024 - Normal Operations

  • • Return to home-and-away format (28 matches)
  • • FC Edmonton final season (2023)
  • • York United FC final season (2024)
  • • Vancouver FC joined (2023)

2025 - Current Season

  • • Inter Toronto begins play
  • • 8 active teams
  • • Data sourced from official SDP API

Reporting Issues

How to Report Data Errors

If you find incorrect or missing data, please report it via GitHub Issues:

Open GitHub Issues →

Required Information

## Data Error Report

**Endpoint:** /api/matches
**Date/Match:** 2024-05-15, Forge FC vs Cavalry FC
**Current Value:** home_goals: 2
**Correct Value:** home_goals: 3
**Source:** [Official CPL match report](link)

Report These

  • • Incorrect match scores
  • • Wrong dates
  • • Missing matches
  • • Team name typos
  • • Incorrect stadium names

Don't Report These

  • • Feature requests (use template)
  • • API performance issues
  • • Questions (use discussions)

Response Time

  • Critical errors (wrong scores): < 24 hours
  • Minor issues (spelling, metadata): < 1 week
  • Feature requests: Reviewed monthly

Data License

The match data in this API is provided for:

  • • Educational purposes
  • • Personal projects
  • • Research and analysis
  • • Non-commercial use

For commercial use, please contact the Canadian Premier League directly for official data licensing.

Related Documentation