NFL Scraper avatar

NFL Scraper

Pricing

from $0.50 / 1,000 results

Go to Apify Store
NFL Scraper

NFL Scraper

NFL and college football games from ESPN with points by quarter, team records, TV networks and the spread, total and moneyline before kickoff. Leave the dates empty for the current NFL week, or read up to 120 days of games in one run.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

deriverge s.r.o.

deriverge s.r.o.

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

NFL Scraper returns one row per game for the NFL and college football from ESPN's public scoreboard: both teams with their records, points by quarter, kickoff time, stadium, attendance, the TV network and, before kickoff, the spread, total and moneyline. Clear both dates and click Start to get the current NFL week, from Thursday night to Monday night. Betting lines leave ESPN's feed at kickoff, so past games come back without them. It costs $1.00 per 1,000 results on the Free plan ($0.50 on Business), and the $5 of monthly credit in Apify's Free plan covers about 5,000 results.

What is in a game row?

Scoreboard rows look the same for the NFL and for college games. Standings, rosters, team schedules and news are separate modes, described below the limits.

FieldDescription
leaguenfl or ncaaf.
gameId, keyESPN's game ID and the row key built from it, for example espn:nfl:401872948.
name, shortNameThe away team first: Atlanta Falcons at Green Bay Packers, ATL @ GB. At a neutral site ESPN writes VS, as in BAL VS DAL.
startsAtKickoff in UTC. Sunday and Monday night games start after midnight UTC.
status, statusDetail, completedpre, in or post, ESPN's text such as 14:54 - 4th Quarter, Final or Final/OT, and whether the game has ended.
period, clockThe quarter, with 5 for overtime, and the game clock as ESPN shows it, such as 14:54.
seasonYear, seasonTypeThe season (2026) and its phase, for example regular-season.
home, awayTeam id, name, shortName, score, winner, record (1-2), periodScores with the points of each quarter (five entries after overtime) and logo.
venueStadium, city, state, country and indoor: false at Lambeau Field, true at AT&T Stadium.
attendanceReported crowd, for example 76955, and 0 until ESPN has a figure.
neutralSitetrue for a game at a neutral stadium, such as BAL VS DAL at the Maracanã Stadium on 27 September 2026.
broadcastsNetwork or streaming service: Prime Video, FOX, CBS, NBC.
oddsThe pregame line with the bookmaker, spread, overUnder, both moneylines and the price of each side. details names the favorite, as in BUF -7. The field is null after kickoff.
urlThe game page on espn.com.

How to scrape NFL games

  1. In Leagues, keep nfl and ncaaf, or remove one. An empty field reads both.
  2. Clear From date and To date for the current week, or enter US dates such as 2026-09-20 and 2026-09-21 for the Sunday and Monday games of week 2. One run reads up to 120 days.
  3. Pick a Game status. Not started yet keeps upcoming games with their lines, Finished keeps results.
  4. For team statistics and injury lists, turn on Include box score and injuries. For the whole league's injury report in one run, pick Injury report in What to return instead; it needs no dates.
  5. Click Start. The Output tab lists the games and exports them to CSV, Excel or JSON; the API tab shows how to pull the same data into your own code.

The same run through the API:

{
"leagues": ["nfl"],
"dateFrom": "2026-09-20",
"dateTo": "2026-09-21",
"statusFilter": "final",
"includeGameDetail": true
}

Example output

One row from a run on 29 September 2026: the Thursday night game of week 3, Atlanta's 35-14 win at Green Bay. odds is null because the game was over when the run read it.

{
"key": "espn:nfl:401872948",
"type": "game",
"sport": "americanfootball",
"league": "nfl",
"leagueName": "National Football League",
"gameId": "401872948",
"name": "Atlanta Falcons at Green Bay Packers",
"shortName": "ATL @ GB",
"round": null,
"startsAt": "2026-09-25T00:15:00.000Z",
"status": "post",
"statusDetail": "Final",
"completed": true,
"period": 4,
"clock": "0:00",
"seasonYear": 2026,
"seasonType": "regular-season",
"home": {
"id": "9",
"kind": "team",
"name": "Green Bay Packers",
"shortName": "GB",
"location": "Green Bay",
"score": 14,
"winner": false,
"record": "1-2",
"position": 0,
"homeAway": "home",
"periodScores": [
7,
0,
0,
7
],
"logo": "https://a.espncdn.com/i/teamlogos/nfl/500/scoreboard/gb.png"
},
"away": {
"id": "1",
"kind": "team",
"name": "Atlanta Falcons",
"shortName": "ATL",
"location": "Atlanta",
"score": 35,
"winner": true,
"record": "1-2",
"position": 1,
"homeAway": "away",
"periodScores": [
7,
10,
7,
11
],
"logo": "https://a.espncdn.com/i/teamlogos/nfl/500/scoreboard/atl.png"
},
"venue": {
"name": "Lambeau Field",
"city": "Green Bay",
"state": "WI",
"country": "USA",
"indoor": false
},
"attendance": 76955,
"neutralSite": false,
"broadcasts": [
"Prime Video"
],
"odds": null,
"url": "https://www.espn.com/nfl/game/_/gameId/401872948/falcons-packers"
}

How much does it cost to scrape NFL data?

Free planStarterScaleBusiness
1,000 results$1.00$0.80$0.65$0.50
Box score and injuries, per 1,000$1.00$0.80$0.65$0.50

You pay only for the events in the table. There is no start fee, and compute time and proxies are included.

The NFL regular season has 272 games, so a season of results costs $0.272 on the Free plan, and box scores for all of them add $0.272. Games dropped by Game status, and games that did not change since the last run when the change mode is on, are not charged.

Limits

  • Player stat lines, and with them fantasy points, are not in the output. The box score option gives team totals.
  • The injury list in the box score held at most five players per team in our runs, so it is shorter than a full weekly injury report.
  • For college football the Teams mode lists 762 programs from every division, while League table covers the FBS by conference. Reading rosters or schedules without Team identifiers therefore means 762 requests; enter the schools you want instead.
  • The League table mode shows only the current season, with the American or National Football Conference in group. Divisions appear only as each team's division record.
  • Moving dates such as today are counted in UTC, and on Sunday evenings in the US UTC has already reached Monday. Use fixed dates or leave both empty on game days.

Weeks, dates and kickoff times

ESPN organizes the NFL by week. With both dates empty, a run returns the whole current week: 16 games from Thursday to Monday night in week 3 of 2026. With dates, it returns the games ESPN files under those US dates. 2026-09-20 gives the 14 games of that Sunday, including the night game between Indianapolis and Kansas City, which kicked off at 2026-09-21T00:20:00.000Z and went to overtime (Final/OT, five entries in periodScores).

College football

College rows cover the FBS, the top division. With dates, a run returns the FBS games ESPN files under those days: 71 for Saturday 19 September 2026. With both dates empty it returns the full FBS slate of the current week, 59 games on 30 September 2026. seasonYear is the calendar year of the season, as in the NFL.

Box scores, injuries and rosters

Include box score and injuries adds a detail object to every game, billed as a separate event. For NFL games it holds 24 totals per team. For Carolina's 34-3 win at Atlanta on 20 September 2026 they included thirdDownEff 6-14, completionAttempts 23/36, sacksYardsLost 2-15, redZoneAttempts 3-6, totalPenaltiesYards 9-63 and possessionTime 29:31, next to totalYards, netPassingYards, rushingYards and turnovers. injuries names players with ESPN's status, such as Questionable, Doubtful, Out or Injured Reserve, as the list stands when the run reads it.

Injury report returns one injury row per listed NFL player across all 32 teams: 245 players on 11 October 2026, before the Week 6 games, of them 129 Out, 65 Questionable and 51 on Injured Reserve. Each row has name, teamName, teamAbbreviation, position, status, injuryType (Hamstring, Ankle, or Coach's Decision for healthy scratches), injuryLocation such as Leg, returnDate as ESPN estimates it, and reportedAt. ESPN's feed also carries several hundred news items about active players, which the actor leaves out, and there is no injury report for college football. Put team abbreviations such as KC in Team identifiers to read only those teams.

Team rosters return one row per player with jersey, position, heightCm, weightKg, age, experienceYears and status; NFL rosters include the practice squad and players on injured reserve. League news returns the stories currently in ESPN's NFL or college feed with headline, summary and link.

FAQ

NFL and college scores are public facts, and ESPN serves them without a login through the feed behind its scoreboard. The actor collects game, team and roster data from that feed and takes only headlines, summaries and links from news. Betting lines are shown as ESPN displays them. You decide how the data is used and are responsible for it, including any use in betting products.

Can I get closing lines for past games?

No. To build your own record, schedule a run with Game status set to Not started yet before kickoff and keep each dataset. Lines are posted early: a run on 27 September 2026 found lines for all 30 NFL games of the next eight days.

How do I get a team's whole season?

Choose Team schedules in What to return, put the team's ID from any game row in Team identifiers (2 is Buffalo) and set Season year to 2026. The run returns Buffalo's 20 games of 2026 as game rows, 3 in the preseason and 17 in the regular season. These rows leave seasonType empty, so startsAt tells the preseason apart.

Support

This actor is built and maintained by deriverge s.r.o., a software company based in the Czech Republic. If a run fails or a field you need is missing, please open an issue in the Issues tab or write to us at info@deriverge.com. We respond in English and Czech. Runs can be scheduled in Apify Console or started from the API tab, which has examples for Python, JavaScript and cURL and works with Make, Zapier, n8n and the Apify MCP server. If the actor saves you time, a short review helps other people find it.