Skip to content
DocsUnitley Docs home

Best price across books

How Unitley finds the best price at FanDuel's line across eight US sportsbooks, how old each price is, and how parlays are priced.

Different sportsbooks pay different prices for the same bet. Line shopping means taking the best one you can. Unitley shows FanDuel's line for every market, and next to each outcome it shows the best price for that same bet across the books it tracks.

The books

Every price comes from The Odds API. Unitley tracks eight US sportsbooks for the NFL:

BookRole
FanDuelThe line Unitley shows
BetMGMBest price and no-vig consensus
DraftKingsBest price and no-vig consensus
BetRiversBest price and no-vig consensus
ESPN BETBest price and no-vig consensus
Hard Rock BetBest price and no-vig consensus
Bally BetBest price and no-vig consensus
betPARXBest price and no-vig consensus

The same books are fetched for moneylines, spreads, totals and player props. Offshore books are left out.

How the best price is picked

  • Only at FanDuel's line. A book counts only if it offers the same bet: the same outcome at the same point. A book hanging −3.5 where FanDuel hangs −3 is offering a different bet, so its price is not compared.
  • The best price pays the most. The best price is the one with the highest decimal price, which means the biggest payout for the same stake.
  • A tie stays with FanDuel. Another book takes the best price only when it pays strictly more.
  • Each outcome on its own. The best price on one side can come from a different book than the best price on the other.
  • FanDuel can be the best. When no other book pays more, the best price is FanDuel's own.

The best price is reported with the book's name. The tools don't return every book's price, only FanDuel's line and the derived values: the best price, the no-vig consensus and the EV. The Odds API's terms don't allow Unitley to pass its prices on through Unitley's own API.

In the console, the Slate shows the best price and the book's name on each game card and in each game's odds table. In get_game_odds and get_player_props, each outcome has a best object with bookmaker, bookmakerName and americanOdds.

Check the price at your book

A best price can be at a book you can't use, or one that isn't legal where you are. Every get_game_odds and get_player_props answer carries a priceNote, and agents are told to pass it on:

Prices vary by state and move often. Check the price at your own book, and that the book is legal where you are, before betting.

How old a price is

Prices come from a cache that Unitley's odds jobs keep. Every price and every line carries fetchedAt, the time it was fetched, and updatedAgo, its age in words:

AgeShown as
Under a minuteUpdated just now
Under an hourUpdated 5m ago
Under a dayUpdated 3h ago
A day or moreUpdated 2d ago
No time on fileNot updated yet

A line's age is that of its oldest outcome. When a game hasn't started and its prices are over three days old, the console marks them Prices may be out of date. Prices move between fetches, so an hours-old price may be gone. See Data sources and limits for when prices are fetched.

Parlays

calc_parlay prices a parlay of 2 to 25 legs. Each leg takes americanOdds, and optionally your own probability, the leg's gameId and a label.

Run calc_parlay
curl -X POST https://console.unitley.com/api/v1/tools/calc_parlay \
  -H "Authorization: Bearer YOUR_UNITLEY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"legs":[{"americanOdds":-110},{"americanOdds":150}]}'
200 · the answer
{
  "data": {
    "legs": 2,
    "decimalOdds": 4.772727272727273,
    "americanOdds": 377,
    "impliedProbability": 0.2095238095238095,
    "combinedProbability": null,
    "expectedValuePercent": null,
    "correlationWarnings": []
  }
}
  • decimalOdds multiplies the legs' decimal prices: 1.909 × 2.5 = 4.772727272727273.
  • americanOdds is that price rounded to a whole number, +377.
  • impliedProbability is 1 ÷ 4.7727 = 0.2095238095238095.
  • combinedProbability and expectedValuePercent are null, because the legs have no probability.

With your chances of 0.55 and 0.42, combinedProbability is their product, 0.231, and expectedValuePercent is 0.231 × 4.7727 − 1 = 0.10250000000000026, about +10.3%.

Same-game legs

Multiplying the legs' chances is only right when the legs are independent. Legs on the same game are not: a team's spread and the game total move together. When two or more legs share a gameId, correlationWarnings lists them, with a message such as:

Legs 1, 2 are on the same game, so they are not independent: the combined chance and EV can be well off.

The combined chance and EV still come back, but treat them as unreliable.

The console's Parlay Builder prices each leg at FanDuel's price and marks same-game legs with a Same game tag. It shows a Correlated legs note, and it sizes no stake for a parlay with same-game legs. It also sizes no stake until every leg has your chance.

21+ · Gambling problem? Call 1-800-GAMBLER or visit ncpgambling.org

Unitley is an analysis tool, not a sportsbook: it takes no bets and holds no money. Nothing in these docs is a guarantee or financial advice. Only bet where it is legal for you. Unitley is not affiliated with the NFL, its teams, or any sportsbook.

©︎ 2026 Unitley · Analysis, not a guarantee.