Site logo

Tennis Match Database

LIVE
πŸ“¬ infotennismylife@gmail.com
info, reports, debugging, sponsorship

TennisMyLife hosts a highly reliable Tennis Match Database. All historical match data, ATP stats, and ongoing tournaments are available as CSV downloads. Built and tested over years using purpose-built software, this database is a truly dependable resource.

Live Tournaments

Indian Wells is currently in progress β€” live results and stats are being updated in real-time.

πŸ”” New: ATP Challenger Tour added!

Historical Matches (1968–2026)

Quick commands
Copy & paste one of these commands to download all CSVs as they are into a tml-data folder. Choose the one matching your shell.
CMD (Windows - cmd.exe)
mkdir tml-data & powershell -NoProfile -Command "Try { $files=(Invoke-RestMethod 'https://stats.tennismylife.org/api/data-files').files; New-Item -ItemType Directory -Path 'tml-data' -Force | Out-Null; foreach($f in $files){ Write-Host 'Downloading ' $f.name; Invoke-WebRequest -Uri $f.url -OutFile (Join-Path 'tml-data' $f.name) } } Catch { Write-Error $_.Exception.Message; exit 1 }"
PowerShell (Windows)
New-Item -ItemType Directory -Force -Path .\tml-data | Out-Null; Invoke-RestMethod -Uri 'https://stats.tennismylife.org/api/data-files' | Select-Object -ExpandProperty files | ForEach-Object { Invoke-WebRequest -Uri $_.url -OutFile (Join-Path -Path '.\tml-data' -ChildPath $_.name) }
Bash / Linux / macOS
mkdir -p tml-data && curl -s 'https://stats.tennismylife.org/api/data-files' | jq -r '.files[] | "\(.url)\t\(.name)"' | while IFS=$'\t' read -r url name; do curl -sSL "$url" -o "tml-data/$name"; done
Requires curl and jq (or Python fallback script available in scripts/download_all.sh).
Download All
Download all CSV files in a single ZIP file. This may take a few seconds.
ATP Tour
YearFileSizeLast modified
Ongoingongoing_tourneys.csv493.00 B17/03/2026, 09:01:19
20262026.csv154.80 KB17/03/2026, 09:01:13
20252025.csv608.14 KB17/03/2026, 09:01:12
20242024.csv640.78 KB17/03/2026, 09:01:10
20232023.csv618.75 KB17/03/2026, 09:01:08
20222022.csv601.25 KB17/03/2026, 09:01:06
20212021.csv566.02 KB17/03/2026, 09:01:04
20202020.csv303.03 KB17/03/2026, 09:01:03
20192019.csv576.76 KB17/03/2026, 09:01:01
20182018.csv606.40 KB17/03/2026, 09:01:00
ATPATP_Database.csv1.03 MB17/03/2026, 09:01:15
ATP Challenger Tour
YearFileSizeLast modified
20262026_challenger.csv277.45 KB17/03/2026, 09:01:14
20252025_challenger.csv1.24 MB17/03/2026, 09:01:13
20242024_challenger.csv1.18 MB17/03/2026, 09:01:11
20232023_challenger.csv1.11 MB17/03/2026, 09:01:09
20222022_challenger.csv1.05 MB17/03/2026, 09:01:07
20212021_challenger.csv856.67 KB17/03/2026, 09:01:05
20202020_challenger.csv434.23 KB17/03/2026, 09:01:04
20192019_challenger.csv641.23 KB17/03/2026, 09:01:02
20182018_challenger.csv925.41 KB17/03/2026, 09:01:01
20172017_challenger.csv885.87 KB17/03/2026, 09:00:59

Documentation

TennisMyLife hosts a comprehensive tennis match database, including all historical match data, ATP player stats, and ongoing tournament results. All datasets are available as CSV downloads, making it easy for analysts, fans, and developers to explore tennis statistics.

There are many other tennis databases out there, but TennisMyLife stands out. Unlike Sackmann’s database, we use ATP player IDs, providing a more convenient way to calculate player records and cross-reference data directly on the official ATP website.

Database Columns Include:

  • tourney_id: Tournament ID based on ATP database
  • tourney_name: City where the tournament was played
  • surface: Hard, clay, grass, carpet
  • draw_size: Tournament draw (128, 64, 32, 16, 8, 4)
  • tourney_level: G (Grand Slam), A (ATP Tour), D (Davis Cup), F (Masters/ATP Finals)
  • indoor: Yes/No
  • tourney_date: Week of the tournament (YYYYMMDD)
  • match_num: Match number in the tournament
  • winner_id: ATP player ID of the winner
  • winner_seed: Seed of the winner
  • winner_entry: How the winner entered the tournament (e.g., Q, WC)
  • winner_name: Full name of the winner
  • winner_hand: Playing hand of the winner (R/L)
  • winner_ht: Height of the winner in cm
  • winner_ioc: Country code of the winner
  • winner_age: Age of the winner at match time
  • winner_rank: ATP ranking of the winner at match time
  • winner_rank_points: ATP ranking points of the winner at match time
  • loser_id: ATP player ID of the loser
  • loser_seed: Seed of the loser
  • loser_entry: How the loser entered the tournament
  • loser_name: Full name of the loser
  • loser_hand: Playing hand of the loser (R/L)
  • loser_ht: Height of the loser in cm
  • loser_ioc: Country code of the loser
  • loser_age: Age of the loser at match time
  • loser_rank: ATP ranking of the loser at match time
  • loser_rank_points: ATP ranking points of the loser at match time
  • score: Final match score (set by set)
  • best_of: Number of sets (3 or 5)
  • round: R128, R64, R32, R16, QF, SF, F
  • minutes: Match duration in minutes
  • w_ace: Aces by winner
  • w_df: Double faults by winner
  • w_svpt: Total serve points by winner
  • w_1stIn: First serves in by winner
  • w_1stWon: First serve points won by winner
  • w_2ndWon: Second serve points won by winner
  • w_SvGms: Service games played by winner
  • w_bpSaved: Break points saved by winner
  • w_bpFaced: Break points faced by winner
  • l_ace: Aces by loser
  • l_df: Double faults by loser
  • l_svpt: Total serve points by loser
  • l_1stIn: First serves in by loser
  • l_1stWon: First serve points won by loser
  • l_2ndWon: Second serve points won by loser
  • l_SvGms: Service games played by loser
  • l_bpSaved: Break points saved by loser
  • l_bpFaced: Break points faced by loser

We continuously monitor ATP updates, including additions, corrections, and removals from historical records. Our database is also enriched with verified data from newspapers, tennis blogs, and other statistics websites.

Frequent Updates & Live Results

TennisMyLife is updated daily, and ideally in real-time, following live ATP match results. We aim to provide fresh tennis statistics without waiting for weekly summaries.

We welcome collaborations and bug reports. Help us improve the quality of this tennis database and make it the most reliable source for ATP stats, match history, and player analytics.

Creator: Tennis My Life
License: MIT License
Temporal coverage: 1968–2026
Access: Free to use (isAccessibleForFree)