Compare
Price gaps across venues
How to read it
How to read it
Each card has two sides, one for each way the bet can go, in words: “Chicago Bears win by 2 or more points” is one side of CHI -1.5, and “New York Jets win, tie, or lose by 1 point” is the other. Under each side is every venue's price and how many contracts it shows. Lowest marks the cheapest price; Tied lowest marks every venue that shares it, and nothing is marked when every venue agrees. A price more than a minute old is not shown: the card says Out of date instead. The arbitrage label needs both prices to be 15 seconds old or less.
Buying both sidesis the cheapest way to hold both outcomes on two venues open to US users (Polymarket only when no such pair has prices), and what one pair costs after each venue's fees, worked out at the prices the card shows. When both venues settle the game the same way, the winning side pays $1, so a pair that costs more than $1 is not a free profit. When a side's Lowest price is on a venue the pair cannot use, the card says why.
Arbitrage is the label for a pair that passes every test. Arbitrage here means buying YES on one venue and NO on another costs less than $1 after both venues' taker fees, on contracts that settle the same way, for the size shown, with both prices under 15 seconds old. Prices move. An order can fill at a worse price, or not at all. Under $1, not arbitragemeans buying both sides costs less than $1 after fees, but something holds it back: the contracts settle differently, a match is not yet reviewed, a price is out of date, a venue shows too little size or none, a venue is not open to US persons, Arena's checks say a match may be wrong, there is no current Kalshi price to check against, or a fee could not be read. Each card lists its reasons. Prices differ means the venues disagree, but buying both sides costs $1 or more after fees. Prices agree means the venues show the same price on each side.
Polymarket's prices here come from its international exchange, which does not accept US persons. So by default Arena pairs only Kalshi and Novig for the arbitrage label.
Arena holds Novig's prices over Novig's live feed when it is connected, and polls Novig otherwise, market pages first. The list shows Novig for the markets Arena holds a recent price for and asks for a few more each refresh, so Novig prices can cover only part of the list at a time. Prices older than 60 seconds drop off. During a game, Novig's price shows only when Arena can confirm Novig updated it in the last minute. ProphetX fills before the game only, so its prices show only before the game.
Paper trades fill in Arena's sandbox and are not sent to Kalshi, Novig, Polymarket or ProphetX. Each price is the venue's own. Fees are each venue's published taker fees as Arena works them out, and a venue can charge differently. How Arena fills paper trades is on /docs/execution.