A TEST BENCH FOR SPORTS MODELS. FREE.
You built the model.
Find out if it works.
A backtest can flatter a model. A live record can’t.
Send Pickpockt your model’s predictions. We supply the fixtures, record the Kalshi price the moment each one arrives, settle the market and grade the call. You get an honest record without building any of the plumbing, and it stays private until you choose to publish it.
01 / WHAT WE HANDLE
THE PLUMBING, DONE.Skip the plumbing.
Keep the model.
Testing a betting model honestly takes more infrastructure than the model does: schedules, odds history, settlement rules, grading. Pickpockt runs all of it, so the only thing you maintain is your model.
Fixtures
Every upcoming event in the leagues we carry, with stable IDs and both sides named. Match your model’s output against them and send.
The price at publication
When a prediction arrives we record the Kalshi price for that side at that moment — or DraftKings’ where we don’t carry a Kalshi market for the game — so your record is measured against a real market, not your own odds.
Settlement
Results come in and every market resolves: moneylines, spreads, totals, rounds and sets. Three-way draws and two-way pushes are handled for you.
Grading
Win rate, net units at flat 1u stakes, and closing-line value, by league and market — and a leaderboard for each. One grader, the same for every model.
A record you can’t rewrite
Predictions are timestamped on arrival and locked when the event starts. Nothing can be written with hindsight, so the result means something.
Your model stays yours
You send predictions, not code. Weights, features and training data never leave your machine.
02 / HOW IT WORKS
PUBLISHER API · NO APPROVAL, EVERFrom notebook
to track record.
Create a key, point your pipeline at the API, and every prediction your model makes from then on is recorded, settled and graded.
Run it on a schedule, from a script, or let an AI assistant with shell access do it. There is a form in Studio for picks you make by hand.
Read the API guide REST API, plus a dependency-free CLI for Node 22 or later.Predictions in. A record out.
Your code and model weights stay with you. A dedicated MCP integration is planned.
Create a model and a key
Any account, no application. Scope the model to a league and market if you like; it starts private until you switch it.
Send predictions
Batches of up to 100, retried safely on your own external IDs. The key publishes only to its own model.
Read the verdict
Your record fills in as events settle, graded exactly as it would be in public.
03 / YOUR RECORD
SIGNAL OR NOISE?Know whether it’s
signal or noise.
Your model has a probability. The book has a price. The gap between them is the edge your model is claiming, and settlement is where you find out whether it was real.
A private record
Every call, graded as it settles. Only you can see it until you publish.
The numbers that matter
Win rate, units at flat stakes, and closing-line value, cut by league and market.
Publish the ones you’re proud of
Run as many models as you like — one per league or market, or a v2 beside a v1 — and make each public or private on its own. No application, no approval.
Buffalo vs. Baltimore
Illustrative example. Edge is the model’s probability minus the book’s implied probability, in percentage points (pp), before adjusting for the book’s margin. It is a claim the record tests, not a promise of profit.
04 / PUBLISHED MODELS
GRADED AGAINST THE PRICE AT PUBLICATIONProud of it?
Put it on the board.
Public models are graded by the same rules as your private record, against the Kalshi price when each call was made (DraftKings where we don’t carry a Kalshi market). Below are the five most profitable public models in each league — ours included, and ours can lose their places. Every league and market has its own full board, so an NFL spreads model competes with NFL spreads models. No one grades their own homework, including us.
Standings
Loading the current standings.
Ranked by net units at flat 1u stakes, using the Kalshi price recorded when each prediction was published, or DraftKings’ where we don’t carry a Kalshi market. A model needs 100 graded predictions in a league to hold a numbered place; closer ones show “—”. Predictions without a recorded price are excluded from units. Past performance does not guarantee future results.
Every league and marketNOT BUILDING A MODEL?
Borrow someone else’s.
Free, on web and iOS.
Every published model’s picks and its full graded record are free to read. Follow the ones whose record holds up and see their calls before the game, in the browser or the iOS app.
THE DETAILS
A little more
intelligence.
What is Pickpockt?
A place to test sports betting models against real markets. You send your model’s predictions; Pickpockt supplies the fixtures, records the Kalshi price at the moment each one arrives, settles the market and grades the call. Your record is private until you choose to publish it. Pickpockt does not accept wagers.
Why not just backtest?
Backtests are easy to fool without meaning to: a feature that leaks the result, a price you could never have got, the best of fifty variants remembered and the rest forgotten. A forward record cannot be fooled that way. Every prediction is timestamped before the event and measured against the price on offer when it was made.
What do I need to build?
The model, and a job that sends its output. Event discovery, odds capture, settlement, grading and the dashboard are ours. The CLI needs Node 22 or later; the REST API works from anything that speaks HTTP, including an AI assistant with shell access.
Do I upload my model?
No. You send predictions: the event, the market, the side, and optionally your price or confidence. Code, features, training data and model weights stay in your environment.
Who can see my record?
Only you, until you switch a model to public — and back again whenever you like, with one switch per model in Studio. There is no application and no approval. Predictions are recorded, timestamped and graded from the first one either way, and public always means that model's whole record, including everything it made while it was private.
Can I run more than one model?
Yes. An account can hold many models — an NFL spreads model, an NFL moneyline model, a v2 beside a v1 — each with its own record, API keys, public page and Private / Public switch. Give a model a league and a market and anything outside them is refused, so its record is exactly what it claims to be. Publish the ones you are proud of; the rest stay private.
Can I edit or delete a prediction?
Predictions sent through the API are final the moment they are accepted. Picks entered by hand in Studio can be changed until the event starts. After that, nothing on the event can be added, changed or removed.
Which sports can I test on?
Pickpockt runs its own models for NFL, CFB, NBA, MLB, UFC, ATP and WTA, and carries fixtures for leagues it does not model — soccer first, across competitions including the Premier League, La Liga, Serie A, the Bundesliga, Ligue 1, the Champions League and MLS. You can send predictions on any league the platform carries. Where we do not run a model ourselves, fixtures and results come from Kalshi, a regulated exchange whose contracts name their settlement sources.
How are draws handled?
It depends on whether the draw is something you could have backed. In soccer the moneyline is three-way, so a draw is a real side with its own price: backing a team in a 1-1 is a loss, and backing the draw wins. In two-way markets like UFC and tennis nobody can back a draw, so a drawn result voids the prediction and grades as a push. Roughly a quarter of soccer matches end level, so which rule applies is not a detail.
What does edge mean?
It is the difference between your model’s stated probability and the probability implied by a sportsbook’s odds, expressed in percentage points. It is a disagreement with the price, not a promise of profit — the record is what tells you whether the disagreements pay.
How are the leaderboards ranked?
By net units at flat 1u stakes, using the Kalshi price recorded when each prediction was published (see below). The overall board ranks every public model across every league and market; each league, each market, and each league-and-market pair has its own board, ranked on just those calls — so an NFL spreads model is compared with NFL spreads models. A model needs a minimum number of graded predictions on a board before it can hold a place there, so a short hot streak cannot take it. Win rate excludes pushes. Predictions with no recorded price are excluded from units. Closing-line value is measured on moneyline predictions only. The Leaderboard can also rank by Kelly: each prediction staked at full Kelly on a 100u bankroll, sized from the model's own probability against that same book price, and skipped where the model shows no edge — which rewards calibration as well as picking winners.
Which prices are predictions graded against?
Kalshi’s. When a prediction arrives we record the latest Kalshi price for that side, and every figure — units, ROI, Kelly, closing-line value, the leaderboards — is measured against it. The price is the midpoint of Kalshi’s bid and ask, before fees, so it is slightly kinder than what you would pay to take the trade. Where we don’t carry a Kalshi market for a game, which today means most NFL and NBA lines, we use the DraftKings price instead. A prediction with no recorded price at all still counts toward the record, but not toward units.
Do Pickpockt’s own models get special treatment?
No. Pickpockt runs its own models the same way anyone can: one per league and market (PickPockt NFL Moneyline, PickPockt UFC Moneyline, and so on), owned by an ordinary account, graded by the same rules and ranked on the same boards, where any of them can lose its place. New accounts follow them so the picks feed is not empty on day one, and you can unfollow any of them like any other model.
What does it cost?
Nothing. Pickpockt is free to build on and free to read, with no paid tier. It is supported by tips, which go to the platform rather than to individual predictors.
Get in touch
Building a model? Tell us about your workflow, a league or market you need, or anything in the API that got in your way. Questions and feedback are welcome here too.
YOUR MODEL HAS AN OPINION.