PolyArbitrage
Chrome side panel that prices the Polymarket event you are viewing against Kalshi.
Last updated
What it is
A Chrome extension that opens in the browser's side panel while you are on a Polymarket event page, looks for the same event on Kalshi, and prints both prices and the gap between them in each direction - Polymarket YES with Kalshi NO, and Polymarket NO with Kalshi YES. If either pair costs less than a dollar, a green badge appears, and a calculator splits a bankroll you type across the two legs.
We read the published package rather than the listing: version 1.3.0, 21.58 KiB, downloaded from the Chrome Web Store on 30 September 2026 and unpacked without being installed. What it does, from the code:
- Matching. It takes the Polymarket event title, drops a list of stop words, then fetches one page of up to 200 open Kalshi events and scores each Kalshi title by how many of the remaining keywords it contains. At least two hits wins. The match is cached in the browser for 24 hours.
- Pricing. For the comparison it takes the first market of the Polymarket event and the first market of the matched Kalshi event. On Kalshi it reads the YES and NO asks; on Polymarket it reads Gamma's displayed outcome prices, falling back to the best bid and ask only when those are missing.
- Refresh. Every 12 seconds, or every 4 seconds for Pro users when the gap is within 3 cents of breakeven. A background scan pairs the 50 highest-volume Polymarket events with Kalshi's and ranks the gaps, every 30 minutes for free users and every 5 for Pro.
Availability
The extension installs wherever Chrome does and asks for no account; Pro needs an email address and a card through Stripe. Nothing in the listing or the terms restricts a country.
The two legs are a different question. International Polymarket does not serve US persons, and Kalshi serves most of the world but not all of it. A reader outside both exclusion lists can hold both legs; a reader in the United States can hold the Kalshi one and not the Polymarket one, which is where Polymarket US comes in - and this extension does not read Polymarket US at all. The flags on this card describe the extension, not whether you may trade what it shows.
Permissions, stated plainly. storage, sidePanel and notifications; host access to
gamma-api.polymarket.com, api.elections.kalshi.com and the vendor's payment server on
workers.dev; and a content script on polymarket.com that reads the event slug from the page
address. No private key, no exchange login, no access to other sites. The store listing's own
permission paragraph mentions storage and the side panel and leaves out notifications and the
payment server. The listing's data-handling section declares personal, financial and payment, and
authentication information; the privacy policy, last updated April 2026, attributes that to the Pro
purchase - an email, a Stripe payment reference and the access token held in the vendor's
database.
Pricing
Free for the event you are looking at. Pro, read off the vendor's payment page on 30 September 2026, is 19.99 USD a month, 199 USD a year, or 259 USD once, with a 14-day refund offered on every plan. Pro unlocks the full ranked scan, Chrome notifications when a gap reaches 2%, the faster refresh, and the dollar amounts in the calculator, which free users see masked.
The payment page also lists spread-history charts as a Pro feature. The 1.3.0 package we read contains no charting code, so this card does not claim them.
Trading fees are the venues', and the extension does not include them in anything it prints - what a trade actually costs is the conversion to do before believing a gap.
Markets & resolution
Whatever Polymarket event you have open, against whatever Kalshi lists that the keyword count pairs it with. Nothing in the matching described above filters by category, so the categories on this card are the ones both venues list; the store listing's own worked example is a political event. It resolves nothing. The two venues it reads resolve differently - Kalshi as the exchange against a source named in each contract's rules, Polymarket through the UMA optimistic oracle - and a pair of positions only pays out a dollar if both resolve the way the pairing assumes. Why the same contract costs two prices is the list of reasons two titles that read alike are two different contracts.
Integrations
None. No API, no export, no link into either venue's trading interface beyond opening the Polymarket event page in a new tab.
Limitations
It compares the first market with the first market. Most events on both venues hold several
markets - one per candidate, date or bracket - and version 1.3.0 prices markets[0] of each against
the other without checking that they are the same outcome. On a multi-outcome event the gap shown
can be between two unrelated contracts.
The match is a keyword count. Two shared words out of a title, against one page of 200 Kalshi events, is enough to pair two events. The listing says there are no false matches; the code has no check that could make that so. Matching a question across venues describes what a match needs - the rule text, the settlement source, the close time and which side is YES.
The Polymarket price is not a fill price. It reads the displayed outcome price rather than the best ask, while the Kalshi side is an ask. The gap mixes a quote you could take with one you may not be able to, and ignores depth beyond the top of either book.
No fees, and the risks that remain are not in the number. The calculator's payout row, which the extension labels as certain, is a dollar per pair minus the two prices. It leaves out both venues' taker fees, resolution that differs between the two rule texts, capital held on both sides until each settles, and withdrawal cost and time on each side.
Small and unrated. 104 users and no reviews on the Chrome Web Store on 30 September 2026. The listing names no company or website - only a developer Gmail address - and marks the developer as a non-trader under EU consumer law, which the store notes means EU consumer rights do not apply to contracts with them. Last update 26 April 2026.
Nothing here has been run by us. We read the package; we did not install it or buy Pro.
Alternatives
Scanners that pair Kalshi and Polymarket on a web page rather than in a side panel: CrossOdds matches with embeddings and a language-model check and publishes a confidence score per pair, ArbBets adds more venues and walks book depth, and ArbiTrack adds PredictIt. Oddpool is the data API for the same two venues.
To check a pair yourself instead, the public polymarket-gamma-api and kalshi-api are the two sources this extension reads, and PMXT is one client over both.
Specs
- Interfaces
- none
- Export
- None
- Available in
- Global
- KYC required
- No
- Market subjects
- Politics, Sports, Macro, Crypto, Culture, Business
- Resolved by
- Resolves nothing
- Maker fee
- None
- Platforms
- Web
- AI features
- None
- Capabilities
- Screening, Cross venue, Alerts
- Pricing verified
- Availability verified
- Capabilities verified
- Markets verified
Background
How this part of the sector works, rather than which product to pick.
- Where a dashboard gets its data, and what it loses when that moves — A venue API, an indexer or the chain itself. Which one a dashboard reads decides how far back its history goes and what vanishes when that source changes.
- Why two dashboards show different volume for the same market — Volume is several quantities under one name - contracts or dollars, one side or both, swaps or also mints and merges, and whose day. How to tell which.
- What wallet tracking shows, and what it cannot — A Polymarket fill is a public transaction and a regulated exchange position is not, so wallet analytics exist on one venue and not the other.
Also worth comparing
- ArbBets — Cross-venue price gaps from $149 a month; the $59 plan covers sportsbooks only.
- ArbiTrack — Polymarket and PredictIt in one table, sold by the day; Kalshi was empty when checked.
- Artemis prediction-market metrics — Daily volume, open interest and fees across thirteen event venues, with methodology.
- CrossOdds — Kalshi–Polymarket gaps matched by embeddings, scored by an LLM, $20 a month with API.
- Lychee — No-code queries, charts and backtests over Kalshi and Polymarket history.
- Polymarket Analytics — Third-party Polymarket wallet, trader and market analytics, free to browse.
FAQ
Does PolyArbitrage need my Polymarket or Kalshi login, or a wallet key?
No. The package reads public prices from Polymarket's Gamma API and Kalshi's public API, places no orders and asks for no credentials. The only thing it sends to its own server is a Pro access token, when you have bought one, to check that it is valid.
What permissions does the PolyArbitrage extension ask for?
Storage, the side panel and notifications, plus access to Polymarket's Gamma API, Kalshi's public API and the vendor's own payment server, with a content script on polymarket.com pages. The store listing's own permission list names the first two and omits notifications and the payment server.
Does the PolyArbitrage spread include trading fees?
No. In version 1.3.0 the gap is one dollar minus the sum of two prices, with no fee on either leg, and the Polymarket side is the displayed outcome price rather than the best ask. A positive number in the side panel is therefore not a price you can necessarily fill at, before or after fees.
How many people use PolyArbitrage?
The Chrome Web Store listed 104 users and no ratings on 30 September 2026. Version 1.3.0 was published on 26 April 2026 and nothing has shipped since.