Scraper or feed

Should you scrape FanDuel odds, or subscribe to a feed?

FanDuel odds scraping is possible in principle. What matters is what you own afterwards — a pipeline you maintain forever, against a surface that changes without telling you. FanLine Wire is not a scraper: it subscribes to FanDuel's own market feed over a WebSocket.

Why this question keeps coming up

FanDuel publishes no public odds API: no developer portal, no self-serve key, no documented odds endpoint with a signup form behind it. The prices live in the app and on the site, so a scraper looks like the only door — and it is the one most people try first. The FanDuel API page and the odds API overview cover the routes that exist; this page covers building one versus subscribing to one.

What you would be taking on

You own the pipeline forever

A scraper is not a script you write once and forget. Rendered markup is not a contract, and nobody agreed to keep it stable: the page changes shape, the transport under it changes, the defences in front of it change.

A quiet failure is the expensive one

A scraper that errors is merely annoying. One that returns the previous price in the previous shape is worse: nothing tells you the line you hold has gone stale.

The terms are the platform's call

What you may do with FanDuel's data is set by FanDuel's terms, and enforcing them is FanDuel's decision, not ours. We do not advise on it: read the platform's terms first, then decide between an owned scraper and a feed.

Scraper you ownFeed you subscribe to
Who maintains the parserYou, for as long as it runsNobody — there is no page to parse
What breaks itA layout, a defence or a channel changeThe book's feed, which is what we watch
How a price reaches youOn your next successful fetchAs an event, when the book moves
Live & pre-matchTwo surfaces, two schedulesOne connection, both
Status changesInferred from diffsOPEN ↔ SUSPENDED pushed as events
Cost shapeYour servers, your proxies, your timeFree, $29/mo or $149/mo

FanLine Wire is not a scraper

The feed subscribes to FanDuel's own market feed over an AWS AppSync GraphQL WebSocket. Prices arrive as events — no rendered page is parsed, no polling loop runs, and no HTML that changes shape sits between the book and your code. Market discovery is REST; the stream is a subscription. The push payload carries the runner-level detail (marketStatus, selectionId, handicap, runnerStatus, decimalDisplayOdds), and that detail is push-only. Median gap between updates inside a burst on the reference run: 0.35 s. Mechanics: the WebSocket page.

Coverage measured 2026-09-15: 6 live and 1,258 pre-match markets. American odds arrive as signed integers, null when a selection is unpriced, and only OPEN is tradeable.

Look at the board before deciding anything

None of this needs to be taken on trust, and the snapshot needs neither a key nor a signup:

curl https://fanlinewire.com/odds.json

It returns generated_at, a monotonic sequence, a 20-row tape of fixtures[] with sport, fixture, market, status, inplay and prices[], the live.total and prematch.total counts, per-sport breakdowns, and drops[] — recent moves against the bettor, capped at 12, with pct in implied-probability terms. Poll no faster than every 10 seconds: a politeness floor on a shared endpoint, not a plan quota.

How to read the two options

Start with the platform's terms — the only honest answer about what you may collect, and FanDuel's question rather than ours. After that, who maintains the thing is the whole decision. A scraper is a pipeline you own; a subscribed feed is a client you point at a socket, with live and pre-match prices arriving as events over one connection. Plan limits and what each tier buys are on the pricing section.

Sibling pages answer the other halves: live odds without a key, and what each plan buys. This is not legal advice, and not a statement about what the platform permits — that is a terms question FanDuel owns and enforces. The maintenance and latency difference is what a build decision turns on.

Questions people ask

Is it legal to scrape FanDuel odds?

That is FanDuel's call, not ours. What you may do with the book's data is set by the platform's terms, and enforcing them is the platform's decision. Read those terms first, then choose between an owned scraper and a feed.

Is there a public FanDuel API to scrape instead?

No. FanDuel offers no public sportsbook odds API, no developer portal and no self-serve key. The programmatic routes to the book's own prices are its private market feed, an enterprise data agreement, or a third-party feed.

Does FanLine Wire scrape FanDuel?

No. The feed subscribes to FanDuel's own market feed over an AWS AppSync GraphQL WebSocket, so prices arrive as events: no rendered page is parsed and no markup change can break delivery.

How fast do scraped FanDuel odds go stale?

Faster than a fetch-and-parse pipeline can serve them: on the reference push run the median gap between price updates inside a burst was 0.35 s, and a cycle that reaches a page cannot be trusted to show the price that is live now.

What does the subscription cost instead?

Free covers 100 requests a day, Basic is $29/mo for 1,000 a day, and Full is $149/mo at 30 requests per second with the push WebSocket included. REST market discovery is on every plan.