Transfermarkt Scraper avatar

Transfermarkt Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Transfermarkt Scraper

Transfermarkt Scraper

Scrape Transfermarkt, the world's largest football player and club database. Search players, clubs, and competitions; get market values, transfer history, injuries, and squad data.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(11)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

11

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Scrape Transfermarkt — the world's most comprehensive football player and club database — without writing a single line of code. Search players, clubs, and competitions; retrieve transfer history, market value timelines, injury records, and squad data.

What data do you get?

Record typeKey fields
PlayerName, nationality, position, age, height, foot, club, market value, profile URL, image
Player (full)All above + transfer history, market value history, injury log
ClubName, country, league, squad size, avg age, total market value, stadium
CompetitionName, country, competition URL

Input

FieldTypeDescription
modeselectWhat to fetch (see Modes below)
querystringPlayer/club/competition name to search
playerIdstringTransfermarkt numeric player ID (e.g. 28003 for Messi)
clubIdstringTransfermarkt numeric club ID (e.g. 131 for Manchester City)
competitionIdstringCompetition ID (e.g. GB1 for Premier League, L1 for Bundesliga)
minMarketValueEurintegerFilter out players with market value below this (in EUR)
nationalitystringSubstring match on player nationality (e.g. Argentina)
positionselectPosition filter (Goalkeeper, Centre-Back, etc.)
maxItemsintegerMax records to return (default 50, max 1000)

Modes

ModeDescription
searchPlayers (default)Search players by name
byPlayerIdFull player profile including transfers, market value history, injuries
searchClubsSearch clubs by name
byClubIdClub profile + current squad
searchCompetitionsSearch competitions/leagues by name
byCompetitionIdAll clubs in a competition

Sample Input

{
"mode": "searchPlayers",
"query": "Messi",
"maxItems": 10
}

Sample Output

{
"playerId": "28003",
"name": "Lionel Messi",
"nationality": ["Argentina"],
"position": "Right Winger",
"age": 37,
"currentClub": "Inter Miami CF",
"marketValue": "€15.00m",
"marketValueNumeric": 15000000,
"profileUrl": "https://www.transfermarkt.com/lionel-messi/profil/spieler/28003",
"recordType": "player",
"siteName": "Transfermarkt",
"scrapedAt": "2026-05-10T12:00:00+00:00"
}

Filters

  • minMarketValueEur — only players with market value ≥ this EUR amount
  • nationality — substring match (e.g. France matches France, Ivory Coast would need exact)
  • position — exact match from dropdown

FAQs

Do I need a Transfermarkt account? No. All data is fetched from the public Transfermarkt API without authentication.

What are valid competition IDs? Common ones: GB1 (Premier League), L1 (Bundesliga), ES1 (La Liga), IT1 (Serie A), FR1 (Ligue 1), CL (Champions League).

How often is Transfermarkt data updated? Market values are updated roughly 2x per year (January and summer transfer window). Transfer data is updated in real-time.

What is the rate limit? Requests are spaced to respect the API — typically 1-2 requests per second.

Can I get all transfers for a player? Yes — use mode=byPlayerId with the player's numeric ID.