Arbitrage calculator
Arbitrage calculator for two- and three-way markets: enter each side’s best odds and a stake to see if it is an arb, the stake per leg and the profit.
Check whether the best prices on each side make an arb, and split a stake across the legs.
The calculator runs in your browser with JavaScript; the formulas it uses are explained below.
An arbitrage calculator checks whether the best prices on every outcome of a market, taken at different books, add up to less than 100% implied probability. If they do, staking each side in the right proportion returns the same payout whichever outcome wins, and that payout is larger than the total staked. It handles two-way markets such as totals and three-way soccer moneylines: enter each side's best odds and a total stake, and it returns the stake for each leg and the profit.
How to use the arbitrage calculator
The inputs:
- The best odds on each outcome, in American, decimal or fractional format: two prices for a two-way market, three for a three-way market such as home / draw / away.
- The total stake you want to spread across the legs.
The outputs:
- The combined implied probability of those prices, and whether it is below 100% (an arb) or not.
- The margin: the return on the total stake.
- The stake per leg, the payout if that leg wins, and the profit.
Sizing the legs is most of the work, which is why the tool is also called an arbitrage stake calculator, or an arb calculator for short.
Some bettors call this tool an arbitrage betting calculator, but no arb is a guaranteed profit in practice: prices move between legs, and books void bets or limit accounts.
The formulas
Convert every price to decimal odds d_i. Then:
S = Σ 1 / d_i (combined implied probability)
arb if S < 1
margin = 1 / S − 1 (return on the total stake)
stake_i = total × (1 / d_i) / S
payout = total / S (the same whichever leg wins)
profit = payout − total
Each leg's stake is proportional to its implied probability, so every leg pays the same amount. A two-way market has two terms in S and a three-way market has three; nothing else changes.
Rounding the stakes
Rounding stakes to whole units pulls the payouts slightly apart, so check that every leg still returns more than the total staked.
Worked example: a two-way total
An NBA game total of 221.5. Book A has Over 221.5 at +110 (decimal 2.10); Book B has Under 221.5 at -102 (decimal 1.980).
- Implied probabilities: 1 / 2.10 = 47.62% and 1 / 1.980 = 50.50%, so S = 98.11%.
- Margin: 1 / 0.9811 − 1 = 1.92%.
- With $1,000 in total: $485.34 on the over and $514.66 on the under.
- Payout either way: $1,019.22, a profit of $19.22.
Rounded to $485 and $515, the over pays $1,018.50 and the under $1,019.90, both still above the $1,000 staked.
Worked example: a three-way soccer moneyline
A soccer match settled on the 90-minute result: home at 2.45 (+145) at Book A, the draw at 3.60 (+260) at Book B and away at 3.30 (+230) at Book C. With $500 in the arbitrage calculator:
| Leg | Odds | Implied | Stake | Payout |
|---|---|---|---|---|
| Home | 2.45 | 40.82% | $206.36 | $505.58 |
| Draw | 3.60 | 27.78% | $140.44 | $505.58 |
| Away | 3.30 | 30.30% | $153.20 | $505.58 |
S = 98.90%, a margin of 1.12% and a profit of $5.58. A three-way arb needs all three legs placed; leave out the draw and it is an ordinary bet. Margins this thin leave little room for a price that moves before the last leg is in.
Common mistakes
- Different lines. Over 222.5 at one book and Under 221.5 at another leave a gap: a final total of 222 loses both legs.
- Different settlement rules. Soccer moneylines settle on 90 minutes; tennis books differ on retirements, and esports books on forfeits and map counts. Both legs must settle under the same rules.
- Stale or pulled prices. An arb is often one book that hasn't moved yet. By the time the second leg is placed the first price may be gone, which leaves one side of an ordinary bet.
- Exchange fees. If a leg is on an exchange that charges commission on winnings, the posted price overstates the return. Adjust it before calculating.
- Limits and voids. Books limit accounts that take arbs and can void bets on prices they consider errors. Neither shows up in the math.
- DFS lines. Pick'em payouts depend on the whole lineup and aren't cash odds, so they can't be legs.
Finding arbs with the API
There is no /v1/arbitrage endpoint. /v1/best-lines returns the inputs instead: for each market at an identical line, the best price on every outcome across every sportsbook and exchange (DFS apps are left out), the books offering it in best_books, and books_quoting. Request decimal prices and the first step of the arbitrage calculator is a sum:
const res = await fetch(
'https://api.preciseapi.com/v1/best-lines?league=nba&markets=moneyline,spread,total&format=decimal',
{ headers: { Authorization: `Bearer ${process.env.PRECISEAPI_KEY}` } },
);
const { data } = await res.json();
for (const event of data) {
for (const m of event.markets) {
const s = m.outcomes.reduce((sum, o) => sum + 1 / o.best_price, 0);
if (s < 1) {
const legs = m.outcomes.map((o) => `${o.name} ${o.point ?? ''} ${o.best_price} @ ${o.best_books.join('/')}`);
console.log(event.id, m.key, m.period, `margin ${((1 / s - 1) * 100).toFixed(2)}%`, legs.join(' | '));
}
}
}
One call costs 3 credits and covers up to 200 events. The arbitrage API page covers the workflow in more depth, and the odds comparison API page explains how prices are matched across books. On the MCP server, find_arbitrage runs the whole check for a league and returns each leg's book, price and stake for a total you choose. Prices move quickly, so check every leg at the book before placing anything.
Frequently asked questions
What is an arbitrage bet?
Backing every outcome of a market at different books, at prices whose combined implied probability is under 100%, so the payout is the same whichever outcome wins and is larger than the total staked.
How much should go on each leg?
The total stake times the leg's implied probability, divided by the combined implied probability. In the two-way example, $1,000 × 0.4762 / 0.9811 = $485.34 on the over.
Can a three-way market be an arb?
Yes. Soccer moneylines have home, draw and away outcomes. The same formula applies with three terms, and every leg has to be placed.
Why do arbs disappear so quickly?
Most come from one book lagging the market, and the gap closes when it updates. Treat every arb as an observation at the moment you saw it. API access for live best lines starts on Edge; see pricing.
More calculators
- Implied probability calculator: Turn American, decimal or fractional odds into implied probability, and convert between formats.
- No vig calculator: Remove the vig from a two- or three-way market to get the hold, fair probabilities and fair odds.
- EV calculator: Expected value, edge and break-even price for a bet, from the odds and your fair probability.
- All sports betting calculators