π Transfermarkt Scraper Β· 2,500 Free Players/Month
Pricing
from $2.00 / 1,000 player scrapeds
π Transfermarkt Scraper Β· 2,500 Free Players/Month
Transfermarkt Scraper gets you player data β‘ fast, π― 100% accurate and π ridiculously detailed β profile, market value & history, transfers, season stats & injuries, by player, club squad or scouting filter. π° $2 per 1,000 players, no start fee. Scrape your first 2,500 players free every month π
Pricing
from $2.00 / 1,000 player scrapeds
Rating
0.0
(0)
Developer
Omkar Cloud
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
Transfermarkt Scraper
Transfermarkt Scraper by Omkar Cloud gets you π― accurate, π detailed Transfermarkt player data.
Transfermarkt is the reference for what a footballer is worth, and every run reads it live β so you get today's market value, contract, agent and career for a single player, a whole club squad, a name search or a scouting filter, one row per player, and can successfully complete your project.
$2 per 1,000 players. And with Apify's free plan you get $5 of credit every month, so your first 2,500 players each month are free.
This is an excellent Actor made by Omkar Cloud, which is Rated Excellent β 4.7 based on 30 reviews on Trustpilot.
π Try Transfermarkt Scraper free β your first 2,500 players are Free.
What can I get
- β½ Any player, a whole squad, a name or a scouting filter β paste player ids or transfermarkt.com URLs, club ids to get every squad member, names to search, or filter by nationality, position, age, market value and contract year; mix them all in one run
- π° Market value on every row β the current value with the date it was set, the previous one, the all-time peak and the change since the last re-rating
- πͺͺ The full profile β name, photo, date and place of birth, height, preferred foot, main and side positions, shirt number, current club with joined date and captaincy, loan parent club, agent, outfitter, youth clubs and social links
- π Contract facts buyers pay for β contract end, option type, last extension, retirement status, plus caps and international goals for the national side
- π The whole career on demand β every market-value re-rating since 2004, every transfer with clubs, dates and fees, season stats per competition, injury history and every title won
- π§Ύ Source context on every row β the entry as typed, how the player was found (listed, club squad, search, scouting) and the club whose squad listed them
Why Transfermarkt Scraper
Most other Transfermarkt scrapers fail you in one of four ways:
- π URL-only β you must already know every player; no squad expansion, no name search, no scouting filters
- π§© Low-detail data β a name and a value, not the contract, the agent, the value history and the career
- πΈ A start fee on every run β three of the five biggest charge one, which punishes small runs
- πͺ¦ Works today, breaks next month β nobody maintains it
Transfermarkt Scraper is read live on every run, priced honestly with no start fee, and actively maintained.
Input
| Field | What it does |
|---|---|
| Players | Transfermarkt player ids (28003) or transfermarkt.com player URLs, one row each |
| Clubs (whole squad) | Club ids (418) or club URLs β every squad member becomes a row, tagged with source_club_id |
| Player Names | Names to search, like Haaland β every hit becomes a row |
| Squad Season | Season for the club squads, 2025 or 25/26. Empty = the current squad |
| Scouting search | Nationality, position, min/max age, min/max market value, contract end years, competition, free agents only β Transfermarkt caps this at 250 matches |
| Include Full Career History | Adds market value history, transfers, season stats, injuries and titles (add-on, $4 per 1,000 in total) |
| Stats Season / Competition | Optional scope for the season stats |
| Max Players | Cost control for the whole run β 1,000 players = $2 |
Example: A Full Transfermarkt Player
{"source_input": "28003","source_kind": "player","source_club_id": null,"id": 28003,"name": "Lionel Messi","full_name": "Lionel AndrΓ©s Messi Cuccitini","link": "https://www.transfermarkt.com/lionel-messi/profil/spieler/28003","image": "https://img.a.transfermarkt.technology/portrait/big/28003-1771694720.jpg","date_of_birth": "1987-06-24","age": 39,"place_of_birth": "Rosario","nationalities": [{ "id": 9, "name": "Argentina", "code": "ARG" },{ "id": 157, "name": "Spain", "code": "ESP" }],"height_m": 1.7,"preferred_foot": "left","position": { "id": 12, "name": "Right Winger", "short_name": "RW", "group": "Striker" },"shirt_number": 10,"current_club": {"id": 69261,"name": "Inter Miami CF","link": "https://www.transfermarkt.com/inter-miami-cf/startseite/verein/69261","country": { "id": 184, "name": "United States", "code": "USA" },"is_captain": true,"joined": "2023-07-15"},"national_team": { "id": 3437, "name": "Argentina", "is_current": true },"caps": 207,"international_goals": 125,"contract_until": "2028-12-31","last_contract_extension": "2025-10-23","status": "active","market_value": {"current": { "amount": 15000000, "currency": "EUR", "updated_at": "2026-06-02" },"previous": { "amount": 15000000, "currency": "EUR", "updated_at": "2025-12-11" },"highest": { "amount": 180000000, "currency": "EUR", "updated_at": "2018-05-30" },"change": { "direction": "unchanged", "amount": 0, "percent": 0.0 }},"agent": { "id": 1207, "name": "Relatives", "is_verified": false },"outfitter": "adidas","youth_clubs": "Grandoli FC (1992-1995), Newell's Old Boys (1995-2000)","market_value_history": [{ "date": "2004-12-20", "value": { "amount": 3000000, "currency": "EUR" }, "age": 17, "club": { "name": "FC Barcelona B" } },{ "date": "2018-05-30", "value": { "amount": 180000000, "currency": "EUR" }, "age": 30, "club": { "name": "FC Barcelona" } }],"transfers": [{"id": 3845482,"date": "2023-07-15","season": { "id": 2023, "name": "23/24" },"from_club": { "id": 583, "name": "Paris SG" },"to_club": { "id": 69261, "name": "Inter Miami CF" },"market_value": { "amount": 35000000, "currency": "EUR" },"fee": { "amount": null, "currency": null, "type": "free" }}],"total_transfer_fees": { "amount": 255000000, "currency": "EUR" },"season_stats_totals": { "appearances": 1120, "goals": 891, "assists": 402, "minutes_played": 92345 },"total_titles": 44}
Trimmed for readability β market_value_history, transfers, season_stats, injuries and titles carry the full career when Include Full Career History is on.
Get Started with 2,500 Free Players
- Open Transfermarkt Scraper β the form comes pre-filled with Lionel Messi.
- Add your own players, clubs, names or scouting filters and click Start.
- Download the results as JSON, CSV or Excel π.
Pricing
$2 per 1,000 players. No start fee. You pay for the rows you get, nothing else.
| What you scrape | Price |
|---|---|
| Player row β profile, market value, contract, agent, caps | $0.002 each β $2 per 1,000 |
| Same row with the full career history | $0.004 each β $4 per 1,000 |
| Actor start | $0 β most competitors charge one |
Apify's free plan gives you $5 of credit every month, so 2,500 players are free every month (1,250 with the full career history). A player reached twice in one run β listed and also in a squad β is scraped and billed only once.
Run It from Code
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('omkar-cloud/transfermarkt-scraper').call({clubs: ['418'], // Real Madrid's whole squadincludeCareerHistory: true, // market values, transfers, stats, injuries, titlesmaxResults: 30,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("omkar-cloud/transfermarkt-scraper").call(run_input={"nationality": "Brazil", # scouting search"position": "Centre-Forward","maxAge": 23,"minMarketValue": 10000000,"maxResults": 50,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["name"], item["market_value"]["current"]["amount"])
FAQ
Which players can I scrape?
Any player on Transfermarkt β by id, by URL, by club squad, by name search, or by scouting filter. Retired players work too; their row carries status: "retired".
What does a run cost? $2 per 1,000 players, $4 per 1,000 with the full career history, and no start fee. Set Max Players to cap any run.
How fresh is the data? It is read live from Transfermarkt on every run. Market values are exactly what the site shows at that moment.
Can I scrape a whole league? Yes. Put the league's clubs in Clubs to get every squad, or use the scouting search with a Competition filter.
Do I need proxies or a Transfermarkt account? No. The Actor handles everything.
What if a player has no data for a block?
The row is still pushed, with that block null. You are charged the same either way.
Popular Actors by Omkar Cloud
- Sofascore Players Scraper β player profiles with 114 season statistics
- Sofascore Scraper β live scores, fixtures & results for 26 sports
- IMDb Scraper β titles, ratings, cast & box office
- Booking Scraper β hotels with prices, ratings & rooms
- Rightmove Scraper β UK property listings with prices & agents
π¬ Have Questions? We Have Answers.
You're a developer β we know how hard completing a project can be. So we offer full support: just message us and we'll reply β with a solution within 1 working day.
You are important to us β just message us and we will solve your problem β within 1 working day. π©· Pinky Promise π€!

