Fantasy Premier League (FPL) Official API Scraper avatar

Fantasy Premier League (FPL) Official API Scraper

Pricing

Pay per event

Go to Apify Store
Fantasy Premier League (FPL) Official API Scraper

Fantasy Premier League (FPL) Official API Scraper

Scrapes the official Fantasy Premier League API — all ~700 players with xG, xA, ICT index, ownership, gameweek-by-gameweek point history, current season fixtures, and optional manager / mini-league data — delivered as a clean normalized dataset.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

3 days ago

Last modified

Share

Scrapes the official Fantasy Premier League API — all ~700+ players with xG, xA, ICT index, ownership percentage, per-gameweek point history, current season fixtures — delivered as a clean, normalized Apify dataset. Built for FPL analytics tools, content sites, fantasy-data pipelines, and DFS modellers.

What you get

  • All active FPL players (~700-840 depending on season) with full stats: goals, assists, clean sheets, expected goals (xG), expected assists (xA), ICT index, form, PPG, ownership percentage, current price, and GW transfer activity.
  • Gameweek history (optional): per-GW points, minutes played, price, transfers in/out, and selection count — one timeline per player.
  • Fixtures (optional): the full current-season fixture list with home/away teams, scores, kickoff times, and gameweek numbers.

Inputs

FieldTypeDefaultDescription
maxItemsinteger0 (all)Maximum player records to return. 0 = all ~700+ players.
includeHistorybooleanfalseFetch per-player gameweek history. Adds one API call per player — use for analytics, leave off for a fast bootstrap-only run.
includeFixturesbooleanfalseAppend fixture records to the dataset after players.

Output schema

Each player record contains:

FieldTypeDescription
player_idintegerFPL element ID
web_namestringShort name (e.g. "Salah")
first_name / second_namestringFull name
teamstringClub name
positionstringGKP / DEF / MID / FWD
now_costnumberPrice in 0.1m units (130 = £13.0m)
total_pointsintegerTotal FPL points this season
formnumberRolling 30-day average points per game
points_per_gamenumberSeason average points per game
selected_by_percentnumberOwnership percentage
minutesintegerMinutes played
goals_scored / assists / clean_sheetsintegerSeason totals
expected_goals / expected_assistsnumberxG and xA
ict_indexnumberInfluence, Creativity, Threat composite
transfers_in_event / transfers_out_eventintegerCurrent GW transfer activity
gameweek_historystringJSON array of per-GW stats (when includeHistory: true)
sourcestringSource API endpoint

Fixture records use position: "FIXTURE" and pack fixture metadata into the gameweek_history field as a JSON object.

Use cases

  • FPL analytics dashboards — pull the full player pool into your tool without maintaining your own poller.
  • DFS and betting models — xG, xA, ICT index, and ownership in one call, ready for modelling.
  • Content automation — generate weekly player rankings, top transfers, value picks.
  • Historical analysis — gameweek history gives you the full season-to-date timeline per player.

Performance

The bootstrap-static endpoint returns ~2 MB of JSON in a single call — typically under 1 second. A full run with includeHistory: true for all 700+ players takes a few minutes at the polite 100ms call rate. A bootstrap-only run (default) completes in seconds.

Cost

This actor uses the official open FPL API — no proxy required. Running cost is near zero. Priced at the standard PPE rate with a 0.8x coefficient reflecting the minimal compute needed.

Notes

  • The FPL API is public and official. No authentication, no proxy, no anti-bot measures.
  • Player IDs are stable within a season but may change between seasons as new elements are added.
  • The gameweek_history field is a JSON string — deserialize with JSON.parse() in your downstream pipeline.
  • Fixture records are identifiable by position: "FIXTURE" in the dataset.