TerminalExecutionOdds337ToolsContact
    DocsLog in
    1. Home
    2. Guides
    3. Betting strategy that holds up: price, staking, testing and records
    4. How to frame a betting market from your own ratings

    How to frame a betting market from your own ratings

    How to frame a betting market: turn ratings into win chances that add to 100%, price an 8-runner race, test it against the exchange and know when to pass.

    By the B337 team. Last updated 7 October 2026.

    The short answer

    • To frame a betting market, rate every runner, turn the ratings into win chances, scale them so the field adds to exactly 100%, and price each runner at 1 / its chance.
    • For example, raw chances that add up to 122% are each divided by 1.22, so a runner on 18% raw becomes 14.75%, a fair price of $6.78.
    • Bet only where a price beats your frame and the exchange agrees: $8.00 against a $6.78 frame and a $7.70 exchange midpoint qualifies, while a gap the exchange rejects does not.
    • If moving a runner one rating point wipes out the edge, pass, and score your frames against the Betfair Starting Price over hundreds of races before you trust them.

    On this page

    1. Step 1: rate every runner on one scale
    2. Step 2: turn ratings into raw chances
    3. Step 3: normalise to 100% and price the field
    4. Compare your frame with the bookmakers and the exchange
    5. Margins of error, and when to pass
    6. Recording frames to test them
    7. Mistakes that make a frame look better than it is
    8. Where B337 fits a framing routine

    To frame a betting market, you rate every runner, turn the ratings into win chances that add up to exactly 100%, and price each runner at 1 / its chance. In the worked race below, a runner you frame at 14.75% has a fair price of $6.78, so a bookmaker's $8.00 sits 18% above your frame and $6.00 sits below it (illustrative prices).

    Framing a market in horse racing gives you your own fair price for every runner, the number a betting strategy judges each bet against, and a frame is only as good as the ratings behind it. The rest of the job is checking it against the market, passing when your numbers are too rough, and keeping a record that shows whether your frames beat the market at all.

    Step 1: rate every runner on one scale

    A rating is one number per runner that puts the field on one scale, so the gaps between runners mean something. Horse racing ratings compares the kinds, from handicap ratings to speed figures. Whatever the source, two rules apply:

    1. Rate every runner that will start, including the ones you would never back. A frame that skips runners hands their share of the 100% to the others.
    2. Rate before you look at the prices. Ratings set after seeing the market drift towards it, and a frame that copies the market cannot disagree with it usefully.

    Step 2: turn ratings into raw chances

    A rating gap is not yet a probability. One way to convert it is a chart that maps points behind the top-rated runner to a raw win chance, built from your own past frames: how often runners at each gap went on to win. This chart is illustrative, and gaps this race does not use are left out:

    Points behind the top-rated runnerRaw win chance
    030%
    125%
    221%
    318%
    415%
    512.5%
    79%
    96%
    12 or more3%

    Each figure is read off the chart one runner at a time, ignoring the rest of the field, so the raw chances will not add to 100%. A bunched field adds to more, a field with one clear standout can add to less, and step 3 fixes both.

    Make judgement adjustments now, on the raw scale, before you normalise. Ratings say how good a runner is, not how the race will be run. Here, Runner 5 draws barrier 1 and is the only runner with early speed, so you raise its raw chance from the chart's 12.5% to 16%. Write the reason beside the number: an adjustment you cannot explain later is one you cannot test.

    Another conversion shrinks each runner's weight by a fixed factor per point behind the top runner, as greyhound ratings shows for an eight-dog field.

    Step 3: normalise to 100% and price the field

    To normalise, add the raw chances, then divide each one by the total. Here they add up to 122%, so each is divided by 1.22. A fair price is then 1 / the framed chance.

    Example: An illustrative eight-runner race, not a real one: ratings in points (higher is better), raw chances from the chart in step 2, and Runner 5 adjusted for barrier and pace.

    RunnerRatingRaw chanceFramed chance: raw / 1.22Fair price: 1.22 / raw chance
    Runner 110430%24.59%$4.07
    Runner 210325%20.49%$4.88
    Runner 310118%14.75%$6.78
    Runner 410015%12.30%$8.13
    Runner 59916% (chart 12.5%)13.11%$7.63
    Runner 6979%7.38%$13.56
    Runner 7956%4.92%$20.33
    Runner 8923%2.46%$40.67
    Total122%100%

    The working for Runner 3: 18 / 1.22 = 14.75%, and 1 / (0.18 / 1.22) = 1.22 / 0.18 = $6.78. Each fair price is a rated price, the runner's worth on your numbers with no margin in it.

    A bookmaker's tissue price can be different: some compilers frame the draft to 100% and add the margin when the market opens, others draw it above 100% with the margin already in. Scaled the same way to 115%, your frame would put Runner 3 at 14.754% x 1.15 = 16.97%, a price of $5.89. That is a selling price; for betting, keep your frame at 100%.

    When a runner is scratched

    Take the scratched runner out and normalise again. If Runner 2 is scratched, the raw chances left add up to 122% - 25% = 97%, so each is divided by 0.97 and every price shortens. Runner 3 becomes 18 / 0.97 = 18.56%, a fair $5.39, so normalising works upwards too.

    Bookmakers reframe too. After a late scratching, the race-day Stewards can declare a deduction, stated in cents in the dollar, from winning fixed-odds bets placed before it. For NSW on-course bookmakers, Racing NSW's Rules of Betting set this out in BR 14. Racing NSW describes the method used since 1 August 2011 in NSW, the Northern Territory, Queensland and Victoria as an algorithm that re-frames the market to restore the market percentage it had before the withdrawal. Scratchings and deductions covers the payout side.

    Compare your frame with the bookmakers and the exchange

    Set each fair price beside the best bookmaker price and the Betfair exchange, whose back and lay prices bracket the market's view. Their midpoint is a common fair-price estimate near the jump, and value betting on horse racing explains why the exchange works as the racing reference. With illustrative prices:

    RunnerYour fair priceBest bookmaker priceExchange back / layExchange midpointEdge vs your frameEdge vs exchange midpoint
    Runner 1$4.07$3.30$3.40 / $3.50$3.45-18.9%-4.3%
    Runner 2$4.88$4.40$4.50 / $4.60$4.55-9.8%-3.3%
    Runner 3$6.78$8.00$7.60 / $7.80$7.70+18.0%+3.9%
    Runner 4$8.13$7.50$7.80 / $8.20$7.995-7.8%-6.2%
    Runner 5$7.63$8.80$8.60 / $9.00$8.795+15.4%+0.1%
    Runner 6$13.56$17.00$19.00 / $21.00$19.95+25.4%-14.8%
    Runner 7$20.33$15.00$17.00 / $19.50$18.16-26.2%-17.4%
    Runner 8$40.67$34.00$40.00 / $50.00$44.44-16.4%-23.5%

    The midpoint is the middle of the two chances rather than the middle of the two prices, as exchange price as fair odds sets out: 1 / ((1 / back + 1 / lay) / 2). On a tight spread the two agree, and on Runner 8's $40.00 to $50.00 they are $44.44 against $45.00.

    Edge = price / fair price - 1, worked on the unrounded fair price and midpoint. For Runner 3 it is 8.00 / 6.778 - 1 = +18.0% against your frame and 8.00 / 7.699 - 1 = +3.9% against the exchange. The best bookmaker prices add up to 105.7% and the exchange midpoints to 100.6%, so the bookmaker market as a whole is not generous. Three readings cover most races:

    • Runner 3 beats both. Your frame says 14.75% and the exchange 1 / 7.70 = 12.99%, so they disagree on the size of the edge, but both say $8.00 is too long. This is the bet, if it clears the checks in the next section.
    • Runner 5 beats only your frame. Its +15.4% comes entirely from your pace adjustment, and the exchange already has it at $8.80, so either the market missed the pace or priced something you did not. Pass.
    • Runner 6 beats your frame while the exchange rejects it, at 1 / 19.95 = 5.0% against your 7.38%. Recheck the rating, and note the wide $19.00 to $21.00 spread: a thin market makes its midpoint a weaker guide.

    Risk: Betting involves risk. A price above your frame is only as good as the frame, a value bet can still lose, and often does, and there is no guarantee of profit. See responsible gambling for limits and support.

    Margins of error, and when to pass

    Ratings carry error, and a frame turns a small rating error into a large price error. Move Runner 3 one point either way on the illustrative chart:

    Runner 3's ratingRaw chanceField totalFramed chanceFair priceEdge at $8.00
    One point higher21%125%16.80%$5.95+34.4%
    As rated18%122%14.75%$6.78+18.0%
    One point lower15%119%12.61%$7.93+0.8%

    One point of rating error spans fair prices from $5.95 to $7.93, and at $7.93, with the rating one point lower, the 18% edge is almost gone. A working rule: bet only where the price still beats your frame with the runner moved one point the wrong way, and still beats the exchange midpoint. Runner 3 clears both tests, just.

    Pass on the runner, or the whole race, when:

    • several runners have no rating you trust (first starters, long spells, no Australian form), since every share you guess for them comes out of the rated runners
    • the track rating may change before the jump, or a scratching changes the pace, and you have not re-framed
    • the edge rests on one judgement adjustment (Runner 5), or on a gap with the exchange you cannot explain (Runner 6)
    • the exchange spread is wide, so its midpoint says little

    Recording frames to test them

    No frame deserves trust until a record backs it. For each race, save the frame with the time you made it, the track condition you assumed, each adjustment and its reason, your bet prices, the Betfair Starting Price (BSP) and the result. How to track betting results covers the bet-by-bet fields.

    After a few hundred races, group your runners by framed chance and compare the winners each group should have produced, on your frame and on the BSP, with the winners it did produce. An illustrative record of 500 eight-runner races:

    Your framed chanceRunnersWinners expected on your frameWinners expected on the BSPWinners
    Under 5%1,00032.036.035
    5% to 10%1,17089.082.080
    10% to 20%1,060157.0146.5144
    20% to 35%670181.0186.5189
    Over 35%10041.049.052
    Total4,000500500500

    Winners expected is the sum of the chances in the group. In every group the BSP's count sits closer to what happened than yours, so on this record the market was the better frame.

    Check the noise before acting on one group. A group's winner count has a standard deviation of about the square root of (runners x average chance x (1 - average chance)). In the top group that is the square root of (100 x 0.41 x 0.59) = 4.9 winners, so 52 winners against your 41 is more than two standard deviations out: your frame underrates its clear favourites. In the 10% to 20% group, a 13-winner gap against a standard deviation of about 11.6 is not yet enough to act on.

    Test a fix, such as a steeper top to your chart, on the next 500 races, never these. A Brier score puts the comparison into one number, and closing line value in horse racing measures the prices you bet against the BSP.

    Mistakes that make a frame look better than it is

    MistakeWhat it costs
    Pricing raw chances without normalisingAt a 122% total, Runner 3's raw 18% prices at 1 / 0.18 = $5.56 instead of $6.78, and every price is about 18% too short (1 / 1.22 = 0.82), so a $6.00 that sits below your real frame looks like value. Below 100% the error runs the other way, and real value gets passed over
    Adjusting after normalisingLift one runner 3 points after the frame totals 100% and it totals 103%, so every other price is now wrong
    Re-using a frame after a scratchingThe scratched runner's share is still in the 100%, so every price left is too long, as the 97% re-frame above shows

    Where B337 fits a framing routine

    B337 does not rate runners or frame races: it has no ratings engine, no model and no selections, so the frame stays yours. The Terminal supplies the comparison: racing and sports prices from 40+ bookmakers side by side, Betfair back and lay beside them, price history (flucs) and closing lines, the last prices before the jump. Its EV overlays judge racing prices against Betfair's own market, an estimate rather than a forecast.

    Prices on the Terminal are read on a repeating cycle, so confirm a price in your bookmaker account before you bet. A free account opens a limited view of the Terminal with live odds; Betfair prices, closing lines and EV overlays start with Terminal View. Bookmaker and exchange names are trade marks of their owners. B337 is not affiliated with them.

    For free and confidential support call 1800 858 858 or visit gamblinghelponline.org.au.

    Risk: Betting involves risk. A frame is an estimate, a price above it can still lose, and the exchange can be wrong as well. See responsible gambling for limits and support.

    Questions

    How do you make your own odds for a race?
    Give each runner a chance of winning, make the chances add up to 100%, then divide 1 by each chance: a runner you give 20% is $5.00. Keep the frame at 100%, because adding a margin, as a bookmaker does when its market opens, makes every price shorter than your real view.
    Should a framed market add up to less than 100%?
    Framing to 80% or 90% builds an overlay into every price: at 80%, a runner you give 20% is priced at 1 / (0.20 x 0.80) = $6.25 rather than $5.00, the same as demanding 25% above your fair price. A 100% frame with the edge you need set as a separate rule does the same job and keeps your fair prices clean for scoring against the Betfair Starting Price.
    How do you price a race with first starters in it?
    A runner with no rating needs a judgement share, and every point you give it comes out of the rated runners. When unrated runners hold a big share of the field, the frame is mostly guesswork, so pass or bet only where the exchange agrees with you.
    Is framing worth it if the exchange already prices the race?
    Only if your frame turns out right more often than the exchange where the two disagree, and that takes a record of hundreds of races to show. Until then, the exchange midpoint is the cheaper fair price and your frame is a second check.

    Sources

    • Bookmakers and betting: betting deductions policy, Racing NSW
    • Rules of Racing, including the Rules of Betting (BR 14), Racing NSW

    Related

    • Betting strategy that holds up: price, staking, testing and records
    • What horse racing ratings measure and how to turn them into prices
    • Rated price meaning in racing and betting
    • Tissue price meaning in betting
    • Value betting on horse racing, measured against the exchange price
    • Kelly criterion betting: the stake formula and why to use a fraction
    • Line shopping in betting and what the best price is worth
    • Losing streaks in betting: the odds of a run and how long runs get
    • The martingale betting system and why doubling up after a loss fails

    Compare live odds on the Terminal

    A free account opens a limited view of the Terminal with live odds. Terminal View unlocks the rest of the board, read-only: 40+ bookmakers, Betfair back and lay prices, price history and closing lines. The screeners are a separate product.

    Create free accountSee plansJoin Discord

    Betting involves risk. Bookmakers can restrict or close accounts and void bets, automation can fail, prices move, and a positive expected value (+EV) bet can still lose. Promotions carry each bookmaker's own terms. There is no guarantee of profit. 18+ only. For free and confidential support call 1800 858 858 or visit gamblinghelponline.org.au. See responsible gambling for limits and support.

    Products

    • Terminal
    • Execution API
    • Full Automation

    Guides and tools

    • All guides
    • Betting glossary
    • Betting calculators
    • How betting bots work
    • Arbitrage betting
    • Middle betting
    • Matched betting
    • Betting exchanges
    • Odds types explained
    • Horse racing software
    • Money back racing promos
    • Bonus bet converter
    • Terminal pricing
    • Execution pricing
    • How tokens work

    Company

    • About
    • Security
    • Responsible gambling
    • Contact
    • Terms
    • Privacy

    Imagine what you could be buying instead.

    18+ only. For free and confidential support call 1800 858 858 or visit gamblinghelponline.org.au. Self-exclusion: BetStop (betstop.gov.au).

    B337 is software, not a bookmaker or wagering service provider. Bets are placed in accounts you hold with Australian bookmakers. Bookmaker names are trade marks of their owners; B337 is not affiliated with or endorsed by them. Bookmaker terms may restrict automated betting.

    Bet337 © 2026Join our Discord