Priors was built by Nathaniel Ham, a Computer Science & Statistics student minoring in Data Science at the University of Illinois Urbana-Champaign.
The idea is simple. When a prediction market prices something at 30 cents, it’s saying that thing happens 30 percent of the time. I wanted to know if that was actually true, so I recorded the prices of hundreds of thousands of settled markets and checked them against what really happened. That check became the foundation for everything Priors does now.
Priors started as one question about accuracy and grew into a full analytics platform. Today it does a few different things.
It measures how accurate prices really are. The calibration explorer takes over 500,000 settled markets and shows whether prices matched reality, broken down by category, price, and how long before close.
It finds live edges. The edge scanner applies that history to markets trading right now. Where there's enough data to judge a market honestly, it computes a fair value and flags where the current price is out of line, with a confidence interval so noise doesn't get mistaken for a real signal. Where there isn't enough history, it says so instead of guessing.
It compares venues. Priors tracks the same events on Kalshi and Polymarket at the same time and shows where the two markets disagree.
It scores your record. Upload your trade history and you get your calibration, your real profit and loss down to the cent, and an honest read on why you're up or down. Traders can turn that into a verified public profile that shows losses as well as wins.
Checking prices against reality turned up a few things worth sharing.
Sports markets get sharper as a game approaches, then fall apart in the final hour. Markets that resolve on a schedule, like economic data, just keep getting more accurate the whole way down.
Buying both sides of a two-outcome market costs about 101 cents for a guaranteed 100. That's roughly a quarter of what a sportsbook charges.
Nearly a third of prices on linked markets broke basic no-arbitrage bounds, and almost all of it happened in the last hour of trading.
When I ran the same test on Polymarket, that final-hour breakdown didn't show up at all. That was the most interesting result to me, because it means the breakdown isn't a rule of prediction markets in general. It's something specific to how Kalshi's markets are built.
Priors runs on Next.js and TypeScript, with a PostgreSQL database on Supabase, deployed on Vercel.
The hard part is the data. A nightly job archives market prices before Kalshi’s API deletes them after 68 days, which builds a history that can’t be rebuilt any other way. It records each settled market’s price at one hour, one day, and one week before close, then measures calibration by grouping markets that share an event rather than treating each contract as its own data point. That grouping matters more than it sounds. One game spawns dozens of connected markets, and counting them as independent makes the error bars lie. Handling it properly moved confidence-interval coverage from 67.5 percent up to 94.8 percent.
There’s a lot more to dig into. I want to see how calibration changes over the months, whether certain traders are consistently sharper than the market itself, and where the real gaps between the two platforms come from. Priors is where I keep working on those questions.
The one thing I try to hold to is being honest before being impressive. Where the data supports a conclusion, Priors shows it plainly. Where it doesn’t, it says so instead of making up a number. A fair value you can’t defend is worse than none.
Priors runs on public Kalshi and Polymarket data, and it’s not investment advice.
Questions? Email support@getpriors.com.