FanDuel Sportsbook Odds Scraper
Pricing
Pay per event
FanDuel Sportsbook Odds Scraper
Scrape live FanDuel Sportsbook odds in real time: moneylines, spreads, totals, futures, and runners across NFL, NBA, MLB, NHL, MMA, soccer, and tennis.
Pricing
Pay per event
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
10
Total users
2
Monthly active users
12 hours ago
Last modified
Categories
Share

🎰 FanDuel Scraper
🚀 Pull live FanDuel Sportsbook odds in seconds. Filter by league, scrape moneyline, spread, total, and futures markets. No API key, no registration, no manual line-watching.
🕒 Last updated: 2026-05-05 · 📊 28 fields per record · 7 leagues covered · moneyline + spread + total + futures · American & decimal odds
FanDuel runs the largest sportsbook in the United States and posts a constantly shifting board of game lines, prop markets, and futures across NFL, NBA, MLB, NHL, MMA, soccer, and tennis. The public web app reads from a JSON feed that we tap directly, which means every record arrives fully structured: home and away teams, American odds, decimal odds, point spreads, totals, and the underlying market identifiers FanDuel uses to keep the board in sync. There is no captcha pass, no headless browser, and no waiting for a page to render.
This Actor was built for line shoppers, arbitrage hunters, model builders, and anyone tracking how FanDuel prices the market against the rest of the industry. You pick a sport, set a cap, and get back a flat dataset that drops straight into Excel, Sheets, BigQuery, or your favorite betting model. Logos, league names, and event start times come pre-formatted, and the same record shape works for game-line markets and league futures, so a single pipeline handles both. Free runs are capped at 10 records so you can preview the schema before committing.
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Sports bettors and sharps | Line shopping across sportsbooks |
| Odds comparison and aggregator services | Building real-time best-price feeds |
| Sports analytics and model-building teams | Closing-line value tracking and EV models |
| Betting pool operators and pick'em apps | Auto-updating spreads, totals, and props for members |
📋 What the FanDuel Scraper does
- 🏈 Filter by league. Pick NFL, NBA, MLB, NHL, MMA, soccer, tennis, or scrape every supported league at once.
- 💰 Capture the big three. Every game-line record contains moneyline, spread, and total in one row.
- 🎯 Optional futures. Toggle a flag and pull division winners, championship outright odds, and award markets next to the game lines.
- 🔢 Bound the run. Use
maxItemsto keep test runs cheap and full pulls predictable. - 🌎 Multi-state failover. The scraper rotates through FanDuel state hosts automatically so a single regional outage will not break your pipeline.
Each record carries event identifiers, team names and abbreviations, official team logos, ISO and human-friendly start times, in-play status, and both American and decimal odds for every line. Futures records add a runners array with one entry per contender, each with its own American odds, decimal odds, and team logo, so you can rebuild a complete futures board from a single row.
💡 Why it matters: A single sportsbook never tells you the full price story. Pairing FanDuel with other books exposes the soft sides of the market, the books that move first, and the situations where the public sits on a stale number. This Actor is the FanDuel half of that comparison, structured the same way as our DraftKings Scraper so you can join the two on event names with one query.
🎬 Full Demo
🚧 Coming soon: a 3-minute walkthrough of running the Actor and joining the output to a second sportsbook for line shopping.
⚙️ Input
| Field | Type | Required | Description |
|---|---|---|---|
maxItems | integer | No (prefilled 10) | Caps the number of records returned. Free plans are limited to 10. Paid plans can request up to 1,000,000. |
sport | enum | Yes | One of ALL, NFL, NBA, MLB, NHL, MMA, SOC, TEN. |
includeFutures | boolean | No | When true, the dataset also contains league futures and outright winner markets in addition to game lines. |
Example: scrape today's MLB game lines.
{"sport": "MLB","maxItems": 100,"includeFutures": false}
Example: pull every supported league plus championship futures.
{"sport": "ALL","maxItems": 5000,"includeFutures": true}
⚠️ Good to Know: Odds move constantly. A line you scrape at 2:00 PM may already be stale by 2:05 PM. For best-price work, run the Actor on a schedule (every 1 to 5 minutes is typical) and key on
eventIdto detect line movement between runs.
📊 Output
Every run produces a flat JSON dataset. Each row is either a game-line event or, when includeFutures is enabled, a league futures market. You can download the results as JSON, CSV, Excel, HTML, or XML.
🧾 Schema
| Field | Type | Example |
|---|---|---|
🖼️ imageUrl | string | https://assets.sportsbook.fanduel.com/images/team/mlb/miami_marlins.png |
🆔 eventId | number | 35570352 |
📛 eventName | string | Baltimore Orioles (C Bassitt) @ Miami Marlins (S Alcantara) |
🏷️ sport | string | MLB |
🏟️ sportName | string | Baseball |
🏆 league | string | MLB |
🏠 homeTeam | string | Miami Marlins |
✈️ awayTeam | string | Baltimore Orioles |
🔠 homeTeamAbbr | string | MIA Marlins |
🔠 awayTeamAbbr | string | BAL Orioles |
🖼️ awayTeamLogo | string | https://assets.sportsbook.fanduel.com/images/team/mlb/baltimore_orioles.png |
⏰ startTime | string | May 5, 2026, 6:41 PM |
🟢 inPlay | boolean | true |
💵 moneylineHome | number | 132 |
💵 moneylineAway | number | -170 |
🔢 moneylineHomeDecimal | number | 2.32 |
🔢 moneylineAwayDecimal | number | 1.59 |
📐 spreadHome | number | 1.5 |
📐 spreadHomeOdds | number | -158 |
📐 spreadAway | number | -1.5 |
📐 spreadAwayOdds | number | 118 |
📊 totalLine | number | 14.5 |
📊 totalOverOdds | number | -120 |
📊 totalUnderOdds | number | -110 |
🪪 primaryMarketId | string | 734.167451276 |
🪪 competitionId | number | 11196870 |
🔗 url | string | https://sportsbook.fanduel.com/mlb/35570352 |
🕒 scrapedAt | string (ISO 8601) | 2026-05-05T23:53:57.308Z |
Futures records share the same record shape but add marketId, marketName, marketType, numberOfRunners, marketTime, and a runners array with one entry per contender.
📦 Sample records
✨ Why choose this Actor
| 🔍 | Capability |
|---|---|
| 💸 | Both odds formats. Every moneyline ships with American and decimal odds, so European and US workflows both work without extra math. |
| 🛰️ | State-host failover. The scraper rotates through 18 FanDuel state hosts on every retry, smoothing over single-region outages. |
| 🧱 | Flat schema. Game lines arrive as one row per event with the big three (moneyline, spread, total) in the same record. No follow-up calls. |
| 🎯 | Optional futures. Flip one boolean and the same dataset adds league futures with full runner-level breakdowns. |
| ⚡ | API-first. No headless browser, no captcha pass. Runs cost cents, even at scale. |
| 🤝 | Pairs with DraftKings Scraper. Identical event identifiers shape, identical record format, ready for line-shopping joins. |
| 🧾 | Predictable cost. maxItems is honored exactly, so test runs stay cheap and production runs are easy to budget. |
📊 A typical NFL Sunday returns 14 game lines and 6 to 12 futures markets in under 3 seconds.
📈 How it compares to alternatives
| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| ⭐ FanDuel Scraper (this Actor) | Pay per run | All 7 supported leagues | Real-time on demand | Sport, futures toggle, maxItems | None, ready to run |
| Paid live odds APIs | Subscription, often $500+/mo | Multi-book | Streaming | Vendor-defined | Account, billing, key rotation |
| Manual screenshots | Free, time-expensive | Whatever you watch | Whenever you remember | None | Browser only |
| Generic web scrapers | Pay per run | Variable | Real-time | DIY selectors | Custom scripts and maintenance |
| Internal feed integrations | Negotiated | Single book | Streaming | Vendor-defined | Months of contracts |
For most line-shopping and modeling work, a scheduled run of this Actor delivers the same data as a paid feed at a fraction of the cost.
🚀 How to use
- 🔑 Sign up. Create a free Apify account at console.apify.com/sign-up?fpr=vmoqkp.
- 🎯 Open the Actor. Find the FanDuel Scraper in your console and click Try for free.
- ⚙️ Pick your sport and cap. Set
sport(or leave it onALL) and a sensiblemaxItemsfor your test. - ▶️ Run it. Click Start. The first records appear within a couple of seconds.
- 📥 Export. Download the dataset as JSON, CSV, or Excel, or pipe it into your warehouse via the Apify API.
⏱️ Total time: under 3 minutes from sign-up to first dataset.
💼 Business use cases
🌟 Beyond business use cases
Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.
🔌 Automating FanDuel Scraper
Plug the Actor into anything that can call an HTTP endpoint. Apify ships first-class clients in every popular language and a built-in scheduler.
- 🟦 Node.js / TypeScript: use
apify-clientto fire runs and pull dataset items in a few lines. - 🐍 Python: the Apify Python client wraps the same API for data science notebooks and Airflow DAGs.
- 📚 Reference docs: the full Apify API gives you raw HTTP control for any other stack.
For continuous odds tracking, attach the Actor to an Apify Schedule and have it run every 1, 5, or 15 minutes. Output goes to a versioned dataset you can stream into BigQuery, Snowflake, or your own database.
❓ Frequently Asked Questions
🔌 Integrate with any app
- Google Sheets - pipe odds straight into a live spreadsheet for quick analysis.
- Airtable - sync each run into a structured Airtable base.
- Slack - get pings when key lines cross thresholds.
- Zapier - trigger thousands of downstream actions from any FanDuel run.
- Make - drop the Actor into multi-step workflows visually.
- Webhooks - POST results to your own endpoints in real time.
🔗 Recommended Actors
- 🏈 DraftKings Scraper - the natural pair for line shopping; identical record shape on the DraftKings side.
- 🏟️ ESPN Sports Data Scraper - schedules, scores, and team metadata to enrich your odds rows.
- 🎟️ StubHub Scraper - real-time event ticket pricing for the same games you're tracking.
- 🎫 Ticketmaster Scraper - primary-market event listings for cross-referencing tip-offs and start times.
- 📅 Eventbrite Event Scraper - a broader event feed for sports-adjacent venue research.
💡 Pro Tip: browse the complete ParseForge collection for more sports, ticketing, and finance scrapers.
🆘 Need Help? Hit a snag, found a missing market, or have a feature request? Open our contact form and we will get back to you within one business day.
Disclaimer: This Actor is an independent tool that reads publicly available data published on FanDuel's website. It is not affiliated with, endorsed by, or sponsored by FanDuel or its parent companies. All trademarks belong to their respective owners. Sports betting involves risk; this Actor is a data tool and is not a tipster, advisor, or guarantor of outcomes. Use the data in compliance with applicable laws and the source site's terms of service.