Guide
How Oddsprey builds its predictions, what value means, and how we size stakes. Read this once and the rest of the app makes sense.
What Oddsprey does
Odds of 2.20 are not good or bad. They are just a price. The only question worth asking is whether that price is too high.
At 2.20 the bookmaker is saying this happens about 45 times in 100. If our model says 52, the price is too generous and we back it. If our model says 40, that same 2.20 is a bad bet and we leave it. Same odds, opposite call.
That is the whole product. We rate every fixture with a statistical model, put our number next to the bookmaker's, and only bet when ours is higher. We are not trying to pick winners. We are hunting mispriced bets.
Each match we cover comes with:
- An analyst write-up. The reasoning behind the call, in plain language.
- A correct-score read. The most likely scorelines and how confident we are.
- Value bets. The exact markets where our number beats the bookmaker's, with the edge shown.
Reading odds
Odds are the bookmaker's price on an outcome. They also tell you the payout.
Decimal odds
The standard across Europe. Odds of 2.50 return €2.50 for every €1 staked, your stake included. Return = stake × odds.
Implied probability
Flip the odds to get a probability. 2.50 works out to 40% (1 ÷ 2.50). That figure carries the bookmaker's margin, so a book's implied chances always add up to more than 100%.
Edge and value
Edge is the gap between our probability and the odds-implied probability. When our number is higher, the bet has value.
Say a team has a 50% chance in our model, but the odds are 2.10 (47.6% implied). That is roughly a 2.4% edge. Back enough spots like that and the maths works in your favour over time.
We flag a bet when three things line up:
- Our probability beats the odds-implied probability.
- The edge is big enough to be worth the risk.
- The market has not corrected the price yet.
How we size stakes
Every stake comes from the Kelly criterion. Kelly ties the bet to the edge: more edge, more stake, but never so much that a bad run wipes you out.
The formula
Kelly % = (p × odds − 1) / (odds − 1). Here p is the model's chance for the selection and the odds are decimal. The top half is the edge, what a euro staked returns on average, and dividing by (odds − 1) turns that into a share of the bankroll.
A 50% call priced at 2.10 gives (0.50 × 2.10 − 1) / 1.10, so 4.5% of the bankroll at full Kelly. The same call at 2.00 gives zero. No edge, no stake.
How we apply it
We stake a fraction of full Kelly, usually 10% to 50%, scaled by how much we trust the number and how big the edge is. On a €1,000 bankroll, a 2% Kelly call is a €20 bet. Fractional Kelly grows the account on winners and cushions the losing weeks.
How the numbers are built
We are not going to publish the method in full. How the inputs are weighted, and where we let the model disagree with the market, took the longest to get right and it stays in-house. Here is the shape of it.
We start from data and finish with a review.
- Match history. Goals, shots, and expected goals (xG) across each team's record.
- Team form. Recent results, home and away splits, availability.
- Market odds. Live prices from several bookmakers.
- Context. Injuries, suspensions, and what the raw data misses.
The core model is Dixon-Coles, a standard method for football scorelines. We calibrate it against past results, then our analyst writes up the standout matches and flags the risk and context the model alone would miss.
What the confidence label means
Every match carries High, Medium or Low confidence. It is not how likely the bet is to win. That number is the model chance, printed next to it. Confidence answers a different question: how much history the model had to work with on this fixture, and whether it could use its strongest method.
Two things decide it, and the rule is fixed rather than a judgement call:
- Which method priced it. Dixon-Coles is the validated one. Where a league has too little history for it, we fall back to weaker methods.
- How much recent form both sides have. We take the thinner of the two records, because a well-known side playing an unknown one is still an unknown fixture.
| Label | What it means |
|---|---|
| High | Priced by Dixon-Coles, with at least five recent matches for both sides. |
| Medium | Enough recent form to price the match, but either on a weaker method or with a shorter run of matches behind it. |
| Low | Fewer than three recent matches for one of the sides. The prediction still stands, but it rests on a thin record. |
So a Low confidence match is not a bad bet and a High confidence one is not a safe bet. The label tells you how much the number behind it is leaning on, which matters most when the two disagree: a big edge on a Low confidence fixture is the one to treat carefully.
Then comes the part we care most about. Every call is scored against what actually happened, and so is every bet we passed on. Losses tell us where the model is too confident. Missed winners tell us where it is too cautious. Both get fed back, and the weights move. The goal is a system that keeps sharpening itself, so the version pricing next month's matches is better than the one pricing this month's.
What a subscription gets you
Check our homework before you pay a cent. Every settled result stays free forever, wins and losses alike, with nothing quietly deleted. Most tipsters show you their best week. We show you all of them.
A subscription opens what is coming next:
- Every upcoming match, every market. The full slate, not a curated handful.
- The analyst write-up. The reasoning behind each call, in plain language.
- Correct-score top-3 picks. The scorelines we rate most likely.
- Kelly-sized value bets. The exact markets, with the edge and the stake.
- Your own running record. Every bet you take, tracked and graded.
And the results keep working after the whistle. Every graded match goes back into the model, so the wins compound and the losses get paid forward as a sharper number next week. You are not buying a list of tips. You are backing a system that gets better the longer it runs.
New accounts get 30 days with everything open. No card up front.
Common questions
Getting started
Create a free account to open every match for 30 days. Nothing to pay up front.
Want the plans first? They are on the pricing page.