Offensive and Defensive Ratings: The Engine Under Every NBA Spread

Basketball player attacking the rim while a defender contests the shot on an NBA court

Loading...

One stat, two halves: how ratings power spread models

The first time I put together a spread model that actually worked, the breakthrough was not a clever metric. It was understanding that offensive and defensive ratings — points scored and points allowed per 100 possessions — are not two stats. They are the two halves of one stat, and every spread model worth running treats them that way.

I had been carrying ORtg and DRtg around for years as standalone numbers, the way most public dashboards present them. Team X scores 116, allows 112. Team Y scores 113, allows 110. The numbers seemed informative. They were, mostly, just a rearrangement of records. What changed my work was treating the differential — net rating — as the primary input, and ORtg and DRtg as components that explain how the differential is produced. That reframing is what turns rating data into spread prices.

This piece walks the structural version of that lesson. We will define ORtg and DRtg cleanly, fix the most common misreadings of each, work through the adjustment that takes raw ratings into adjusted territory, and translate ratings into spread and totals prices. The league offensive rating in 2025-26 is 114.3 points per 100 possessions. That is the gravity well every team’s offensive number is being measured against. Knowing where 114.3 sits in the modern game is the first step in reading any team’s rating with sense.

Then we get tactical. Lineup-level ratings, where a starter sitting out is far more expensive than the public assumes. Three rating traps that have cost me money in the past. The arithmetic that takes a six-point rating differential and tells you what spread it should imply. The work is methodical, not magical. By the end you should be able to look at a team’s ORtg-DRtg line and see, immediately, what kind of game it is going to be.

Offensive Rating: points per 100 possessions, explained

Offensive Rating sounds simple. It is points produced per 100 possessions, expressed in the same units as a basketball score so the number stays intuitive. A team at 116 ORtg produces 116 points every 100 possessions. Raise their pace from 100 to 110 and they produce 127.6. Lower it to 95 and they produce 110.2.

The formula is:

ORtg = (Team Points / Team Possessions) x 100

That looks straightforward. The catch is that “team possessions” is computed from the pace formula. Same 0.44 free-throw coefficient, same possession boundaries, same per-48 scaling. Get the possession count wrong and your ORtg drifts.

League average ORtg sits at 114.3 in 2025-26, which is roughly two points higher than the previous season and significantly higher than five years ago. Both pace and eFG% are doing work in that increase. The number is one of the highest league-wide offensive ratings ever measured.

What ORtg captures correctly: efficiency. A team with a 120 ORtg is producing 120 points per 100 possessions, regardless of pace. Compared with a team at 108, the 120 team is twelve points better per 100 possessions of basketball. That gap is durable; pace can move it around in raw point terms, but the per-possession edge is what shows up in spread differentials.

What ORtg can mislead you on: schedule and opponent. A team scoring 117 against soft defences and 113 against good ones has a season ORtg that averages, but the average misrepresents both halves. Strength-of-schedule adjustments matter, and they matter more early in the season when sample sizes are small.

The other ORtg trap is bench-driven inflation. A team with a deep bench can pad ORtg in garbage time against tired second units. The number that matters for spread work is closer to “starter ORtg” or “first three quarters ORtg” — neither of which most public sites expose. The way around it is to look at ORtg in close-game splits, which proxies for the same thing.

In 2025-26 the elite offences sit at 120 or above. The bottom four are below 112. That eight-point spread between top and bottom is the largest source of variation between teams’ point production. If you are working from one input, ORtg is the input.

Defensive Rating: the mirror that everyone underrates

Defensive Rating is points allowed per 100 possessions, calculated symmetrically to ORtg. A team at 110 DRtg allows 110 points per 100 possessions. Lower is better, the inverse of offensive rating.

DRtg is the metric most punters underrate, and the one that has moved my own results the most when I started weighting it properly. Here is why.

Offence in modern basketball is more stable than defence. A 117-ORtg team rarely collapses for a full game; the structure of NBA half-court offence is too well-rehearsed to break under most pressure. Defence, by contrast, is highly variable. A team with a 110 DRtg can post 100 in one game and 121 in the next, because defensive performance depends on activity, foul trouble, schemes against specific matchups, and player availability in a way that offence largely does not.

This variability is what creates spread edges. A team’s season-long DRtg is an average that hides a wide distribution. The matchup-specific DRtg — what you can project this team will allow against this specific offence on this specific night — is the more useful number.

The 2025-26 league has, to nobody’s surprise, made defence harder. The full-court press wave I described in the pace work produces more turnovers — 15.3 per 100 possessions, up from 14.3 — but also leaves defences vulnerable on the back end after a missed steal. Teams playing back-to-back games allow roughly 1.5 to 2.5 more points per 100 possessions above their season average. That is a DRtg shift roughly comparable to losing a starter, and books price it accordingly.

The league average DRtg in 2025-26 is, by definition, 114.3. The same number as offensive rating, because the league as a whole scores against itself. The best defences sit four to five points below that. The worst, four to five points above. Total spread of ten points across the league.

What DRtg captures correctly: how stingy a team is per possession. What it misses: defensive style — turnover-creating defences versus possession-ending defences have different distributions even at the same DRtg. The first creates higher variance for opponents and for totals; the second creates lower variance. Two teams at 110 DRtg can produce very different totals when they meet different offences.

Why opponent- and pace-adjusted ratings beat raw ratings

The first season I committed to ORtg/DRtg-based spread modelling, I lost twelve units in March before I realised what was wrong. The schedule. My raw ratings were treating wins against bottom-five offences as identical to wins against top-five offences. They were not. I had been overrating teams who had played soft schedules and underrating teams who had played hard ones.

Adjusted ratings — sometimes called opponent-adjusted ratings, sometimes simply adjusted ORtg/DRtg — fix this. The arithmetic varies by source, but the idea is the same: penalise teams for soft schedules, credit them for hard ones, and produce a number that reflects what they would have scored or allowed against an average opponent.

The size of the adjustment matters. Over a full season, raw and adjusted ratings can differ by three to four points per 100 possessions for teams with extreme schedules. Three points per 100 is, in spread terms, an enormous amount. A team you read as a six-point favourite on raw ratings might be a two-point favourite on adjusted ratings, and the closing line will reflect the latter every single time.

Where this matters most: November and December. Early-season schedules cluster. A team playing six of its first ten games against bottom-third defences will look like a top-five offence on raw numbers and like a mid-pack offence on adjusted numbers. The market is patient with this. The public is not. Public money piles into the raw read; sharps wait.

Pace adjustment is the other layer. A team’s raw ORtg is already per-100-possessions, so it is pace-neutral by construction. The pace adjustment matters in the rare case where a team plays a season schedule that systematically pulls them away from their preferred tempo. That is unusual. Schedule-based opponent adjustment is the heavyweight; pace adjustment is the lighter touch.

There is also a Four Factors adjustment some shops use: weighting eFG%, turnover rate, offensive rebound rate and free-throw rate into a more granular rating. The advantage is that you can see which component is driving over- or under-performance. The disadvantage is complexity. For most punters, opponent-adjusted ORtg/DRtg is the right level: better than raw, simpler than Four Factors, accurate enough for most decisions.

If a public site gives you only raw ratings and the spread you are pricing matters, do the schedule check yourself: list the team’s last fifteen opponents by their DRtg or ORtg ranks. If the average rank is above 18, raw ratings are flattering them. Below 12, raw ratings are punishing them. Adjust accordingly.

From rating differential to point spread

The arithmetic that turns rating differentials into spreads is genuinely simple. So simple that punters often refuse to believe it works. It does.

The basic formula: expected margin = (Home ORtg – Away DRtg + Away ORtg – Home DRtg) x Game Possessions / 100 / 2 + Home Court Advantage.

That looks ugly. Unpack it. Home team scoring projection is their ORtg against the away team’s DRtg, adjusted by possessions. Away team scoring projection is the mirror. The difference is the expected margin. Add home-court advantage on top.

Worked example. Home team ORtg 118, DRtg 112. Away team ORtg 115, DRtg 113. Expected game pace 105.

Home expected scoring: roughly 118 x (113 / 114.3) x 1.05 = around 122.5 points. Away expected scoring: 115 x (112 / 114.3) x 1.05 = around 118.3 points. Expected margin: 4.2 points home advantage on raw efficiency. Add 2 to 3 points of home-court advantage and you have a spread of about minus 6 to minus 7. If the book has the line at minus 4.5, you have an edge. If at minus 8, you do not.

Here is the simplified version that gets you 85 per cent of the way: net rating differential x 1.0 to 1.5 = expected margin, plus 2 to 3 points home-court advantage. A team with a +6 net rating advantage at home is expected to win by 8 to 11 points. A team with a +2 advantage on the road is expected to win by 0 to 1 points.

The 1.0 to 1.5 multiplier varies by source. Books seem to use something around 1.2 in 2025-26, with home-court advantage averaging closer to 2.5 points than the 3 points of older models.

Shane Battier captured the spirit of the workflow well — “Analytics is like blackjack. When the dealer has a five showing, what do you do? You double down. Why? Because the book tells you that is the best play at the time and gives you the most chance to win the hand and win money.” Rating differentials are the dealer’s five. When they tell you the game has a clear expected margin, you double down on the side that the math favours, accepting that variance will hit you sometimes. The work is in trusting the process.

The trap is when public numbers differ from books’. If your differential model says a team is a three-point favourite and the book is at minus six, the question is not “which is right.” It is “what does the book know that I don’t?” Usually injuries. Sometimes lineup-level data. Sometimes a closing-line move the public has not caught. Always investigate before deciding the book is wrong.

Combined ratings and the totals market

Totals are where ratings get their cleanest test. The expected total of a game is, to first approximation, the sum of both teams’ expected scoring against each other’s defence, scaled to game possessions.

Worked version: Home expected scoring = Home ORtg x (Away DRtg / League Average ORtg) x (Game Possessions / 100). Same for away with the mirror. Add the two together.

Concretely: Home ORtg 118, Away DRtg 113. Away ORtg 115, Home DRtg 112. League average ORtg 114.3. Game possessions 105.

Home expected: 118 x (113 / 114.3) x 1.05 = 122.5 points. Away expected: 115 x (112 / 114.3) x 1.05 = 118.3 points. Total expected: 240.8.

If the line is at 237, your model is over. If at 243, under. Position the bet accordingly.

This simplification works most of the time. It breaks in three specific cases.

First, when efficiency is non-stationary. A team that has been climbing in ORtg or DRtg for two weeks will be priced by the book at the trend, not the season-long number. Use trailing-15 or trailing-30 ratings for short-term games, not season-to-date.

Second, when a star is questionable. A team’s ORtg with their primary scorer is meaningfully different from their ORtg without. Books reflect this in real time once the inactive list drops. If you are pricing pre-IL announcement, you should be projecting two scenarios.

Third, when the game is expected to be close. Pace falls to 90-100 in close fourth quarters, and full-game totals in close projected games are usually lower than the rating math suggests. Three to five points lower, in my experience. Anchor on the math and apply that correction. Pace settling around 104.5 league-wide does not save you from the Q4 collapse in tight games.

The cleanest read: combined ratings tell you the total. Decay, injury and trend corrections tell you which side of the line to be on. Both pieces are required.

Lineup-level ratings: where star sittings hurt

A starter sitting out costs more than the team’s season-long rating suggests. This is where lineup-level data has rewritten my workflow over the last two seasons.

The intuition is simple. A team’s season-long ORtg is a weighted average of every five-player combination it has used. The starting lineup, which plays the most possessions, contributes disproportionately. Replace one of those starters with a bench player and you do not get a small linear drop. You get a structural drop, because the bench player’s lineup-level rating is calculated on smaller samples against typically weaker competition, and his fit with the remaining starters has not been tested.

The data shows this consistently. A team that loses a 25-usage starter typically loses three to five points of ORtg, not the one or two points the season-long math would suggest. The fatigue research backs this up from a different angle: the probability of injury rises by 2.87 per cent for every 96 minutes played, and falls by 16 per cent for every day of rest. Teams making rest decisions are not being random; they are responding to a measurable fatigue load that, when not respected, produces injuries.

For betting, this means star DNPs are routinely under-priced in the first hour after they are announced. The market moves, but it moves to the season-long differential plus a fixed star adjustment. The actual impact is usually larger because it cascades: lineups that have not played together absorb minutes, fit suffers, defensive rotations break down.

Where lineup-level ratings really shine is in identifying which five-man combinations are over- or under-performing. A team’s best five-man unit can have a net rating 12 points higher than their starting five if rotations have evolved. That information is in lineup databases on most public sites, but few punters use it.

For a deeper look at how net rating specifically functions at lineup level, including its volatility and small-sample issues, I have written a focused piece on NBA net rating. The version above is the lineup-only summary.

Three rating traps that lose punters money

Three rating traps have cost me money. None of them is exotic. All of them are easy to fall into if you do not consciously watch for them.

First, comparing raw ratings across schedule strength. I covered this above but it bears repeating. A team’s 118 ORtg against a soft schedule is not the same as a team’s 116 ORtg against a hard one. Without adjustment, you will systematically overpay for soft-schedule teams. The fix is opponent-adjusted ratings. Most public sites now expose them. Use them.

Second, anchoring on season-long ratings in late season or after major roster changes. A team that traded a starter two weeks ago has a season ORtg that is no longer their true ORtg. The first month after a trade, ratings are dominated by the new combination, and the season number is a stale average. The trailing-30 (or trailing-15 for fast-moving rosters) is the live number.

Third, ignoring DRtg variance. I see punters anchor on ORtg and treat DRtg as a fixed multiplier. It is not. DRtg fluctuates more than ORtg, and matchup-specific DRtg projections are where many of the largest spread edges live. A team with a 110 season DRtg that has allowed 118 in its last five games is not, this week, a 110 DRtg team. Pricing them as one is one of the cleanest ways to bleed value.

The thread tying these three together: ratings are not constant. They are summaries of a moving target. Treating them as constants is the mistake that separates a punter who reads stats from a punter who uses them. The discipline is to update — every week, sometimes every game — and to remember that the published season number is convenient, not always accurate.

Questions about NBA ratings

How are NBA Offensive and Defensive Ratings calculated?

ORtg is points scored per 100 possessions; DRtg is points allowed per 100 possessions. The possession count uses the pace formula — FGA plus 0.44 times FTA minus offensive rebounds plus turnovers. Both ratings are pace-neutral by construction, so they let you compare teams across different tempos.

Is ORtg or DRtg more predictive for spreads?

The differential matters more than either component alone. That said, DRtg has higher week-to-week variance than ORtg, which makes matchup-specific defensive projections one of the more profitable areas of spread work. Anchoring on ORtg and undersampling DRtg is the more common public mistake.

What is a neutral NBA rating in the current league?

League average sits at 114.3 in 2025-26 for both ORtg and DRtg, by mathematical necessity. The best teams cluster around 120 ORtg or 108 DRtg; the worst around 108 ORtg or 120 DRtg. A net rating above plus six or below minus six over a meaningful sample is the contender or tank-tier marker.

Where do schedule-adjusted ratings differ most from raw?

Early-season and at the end of long road trips. Schedule clustering can produce three- to four-point gaps between raw and adjusted ratings. Look for it most in November and December and in March, when teams hit their most extreme stretches of opponent quality.

Prepared by the NBA Stats For Betting editorial staff.