The hosted Actor can collect normalized Understat football data from the Apify web interface. You do not need Python, a local installation or your own proxy.
- Open Understat xG Scraper on Apify.
- Select the Input tab.
- Choose one of the six reports in What report do you want?.
- Complete the applicable fields:
- League: select a competition and season.
- Team: enter a team name, slug or public Understat team URL and a season.
- Player: enter a numeric player ID or public player URL.
- Match: enter a numeric match ID or public match URL.
- Find a player ID: enter at least two characters of a player's name.
- Global trends: no target is required.
- Leave Maximum rows to save and charge at
1for the smallest test. - Keep the optional inclusion switches enabled for the complete selected report, or disable record groups you do not need.
- Click Start, wait for completion and open the Dataset tab.
- Select a purpose-built table view or export the Dataset as JSON, JSONL, CSV, Excel, XML or RSS.
Use data/sample-input.json. It is the same one-row League example used by the current Apify prefill. A successful result has recordType, sourceUrl and fetchedAt.
Apify's Free plan currently includes $5 in monthly prepaid usage for the Apify Store or your own Actors, and no credit card is required to start. Credit is limited, expires at the end of the billing cycle and does not roll over.
Check the current Apify pricing for the platform terms and the Actor Pricing tab for its current row rates.
recordTypetells you which fields apply to the row.sourceUrlidentifies the public source page.fetchedAtrecords when the source response was collected.- Numeric statistics such as goals, shots, xG and xA are JSON numbers.
- Stable IDs such as
teamId,playerId,matchIdandshotIdare strings. - Missing source values remain
nullor are omitted according to the row type; they are not silently changed to zero.
The run's separate SUMMARY record reports available rows, saved rows, counts by record type, truncation and billing details.
Raise maxItems only after validating a small result. It accepts 1 to 5,000 and is a run-wide limit across every enabled record type. One successfully delivered Dataset row creates one billable event; there is no start fee. The Actor saves only the affordable prefix if an Apify maximum charge limit is reached.
Apify also lets you save the input as a Task, schedule repeat runs and access the output through its API.