DOWN X DOWN › players › compare
Season over · final
2025
2025 season · final Every snap of the 2025 season, kept as it ended.Back to 2026 →

2025 season · compare · quarterbacks

Compare players

Two or three players of the same position, side by side: where each one grades against the league, where the ball finds each of them, and how their weeks line up.

56 in the league pool
Who · up to three, same position groupStart over
1
Cam WardQB · Titans · graded
✕
10
Justin HerbertQB · Chargers · graded
✕

The address bar is the share link. Copy it, text it, post it: whoever opens it sees the same players. The Compare button on player pages builds on this set until you start over or switch positions.

Where they rank · among 56 quarterbacks with 50 attempts+League percentiles
Cam WardJustin Herbert
EPA per dropback
-0.1817th
+0.0353rd
CPOEcompletion over expected
-1.938th
+1.669th
Sack rateper dropback, lower is better
9%28th
10%19th
Yards per attempt
5.915th
7.372nd
TD rateper attempt
3%13th
5%78th
INT rateper attempt, lower is better
1%87th
3%35th
Depth of targetair yards per attempt
7.233rd
7.853rd
Rush EPA per game
+0.5053rd
+0.9972nd

Each bar is the league pool; the markers are the players. Right is better, the dashed line is the median. The best value in each row is marked green.

Playstyle · how each is used, against the league's quarterbacksamong 56 quarterbacks
Cam WardJustin Herbert
CamBlitz himRPO offenseStatic
JustinScrambler
Deep shareattempts 20+ yards downfield
10%35th
13%63rd
Middle of the fieldattempts between the numbers
20%49th
22%67th
Play actionshare of attempts
19%33rd
22%49th
RPOshare of dropbacks
4%90th
1%21st
Scramblesshare of dropbacks
4%31st
9%79th
Shotgunshare of dropbacks
88%71st
85%62nd
Against the blitzEPA per dropback, blitzed minus not
-0.314th
+0.0658th
Motiondropbacks with pre-snap motion
40%10th
52%44th

Every trait is a share of his own dropbacks, so volume does not move it. Each bar is the league's qualifying quarterbacks; the markers are the players and the thin line is the median. Styles are not grades: a high or low share describes the role, not how well he plays it. The tags are each player's traits furthest from the middle.

The shape · percentile radarBigger and rounder is more complete
EPA / DBCPOESacksY/ATD rateINT rateDepthRush EPA
Where he wins · EPA per throw by lane and depthSame scale across
Cam Ward
Loading…
Justin Herbert
Loading…

Green cells turn targets into points, red cells lose them. Cells with one target are left grey.

Where the EPA comes from · the season split by what happened on his playsPassing and rushing EPA

Justin Herbert gets the most from the ball in the air (+69.8 EPA), he gets the most scrambling (+29.0 EPA), and Cam Ward gives the most back on sacks (−120.3).

Cam Ward−100.6
Justin Herbert+32.0
Air yardsAfter the catchIncompletionsInterceptionsSacksScramblesDesigned runsTwo-point tries
PartCamJustin
Air yardson completions+1.6+0.00 a dropback · 28th+69.8+0.11 a dropback · 64th
After the catchhis share, catch to whistle+213.4+0.35 a dropback · 29th+236.3+0.38 a dropback · 54th
Incompletionsspikes included−175.0−0.28 a dropback · 29th−139.1−0.23 a dropback · 71st
Interceptions−28.8−0.05 a dropback · 87th−66.5−0.11 a dropback · 37th
Sacks−120.3−0.19 a dropback · 8th−84.4−0.14 a dropback · 24th
Scrambles+10.7+0.02 a dropback · 35th+29.0+0.05 a dropback · 81st
Designed runskneels included−2.2 · 58th−14.1 · 12th
Two-point triesnot in the rates–+1.1
Total−100.6618 dropbacks+32.0615 dropbacks

Every play is split by what happened: completions at the catch into air yards and yards after the catch (nflverse's air EPA), the cost of the ones that fell incomplete or were picked, sacks, scrambles and designed runs. Bars share one scale, gains right of the line and losses left. The rate is per dropback, with its percentile among the league's qualifying quarterbacks; the best rate in each row is green.

Where the ball finds them · same scale, same fieldloading plays

Cam Ward

Loading…

Justin Herbert

Loading…

Targets placed by air yards and side of the field, from each team's play file.

On one field · every throw, same fieldFilled is caught, a ring is not
Loading…
Depth butterfly · C.Ward and J.HerbertSolid is caught
Loading…

Back to back by depth band. The widest band is where the offense goes to him; the gap between solid and faded is where it misses.

The race · cumulative yardsFlat steps are byes
Week by week · groupedSame Sunday, side by side
The shape of their seasons · each one's last 3 games, week by weekWeeks 1 to 18
Cam WardJustin Herbert

Dropbackslast 3 games

2538
123456789101112131415161718
Cam 25.7Justin 33

Pass yardslast 3 games

150262
123456789101112131415161718
Cam 177Justin 248.7

EPA / dropbacklast 3 games

-0.22+0.28
123456789101112131415161718
Cam +0.03Justin +0.15

CPOElast 3 games

-5.5+6.9
123456789101112131415161718
Cam +5.2Justin +8.4

Each line is a player's trailing 3 games (rates are pooled over the games, not averaged); the faint dots are single games. The shaded band is the league's middle half of single games at the position, the dashed line its median. A line that climbs out of the band is a role getting bigger.

Floor and ceiling · boom, solid or dud, week by weekBoom 262+ · dud under 150
C.Ward
112Wk 1175Wk 2219Wk 3108Wk 4265Wk 5222Wk 6255Wk 7259Wk 8145Wk 910Wk 10194Wk 11256Wk 12141Wk 13117Wk 14170Wk 15228Wk 16251Wk 1752Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
186 ± 63
J.Herbert
318Wk 1242Wk 2300Wk 3203Wk 4166Wk 5264Wk 6420Wk 7227Wk 8250Wk 9220Wk 1081Wk 1112Wk 12151Wk 13139Wk 14210Wk 15300Wk 16236Wk 1718Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
233 ± 78

Thresholds are the quartiles of every game week by qualified quarterbacks this season (598 player weeks). The right column is the average week and its swing.

Fantasy · points, rank and range, week by week
StandardC.WardJ.Herbert
Points a game11.0QB3217.9QB10
Season186.7QB22286.9QB10
Most weeks6.5–14.612.5–27.7
Booms · busts0 · 1125+ · under 125 · 225+ · under 12
Half PPRC.WardJ.Herbert
Points a game11.0QB3217.9QB10
Season186.7QB22286.9QB10
Most weeks6.5–14.612.5–27.7
Booms · busts0 · 1125+ · under 125 · 225+ · under 12
PPRC.WardJ.Herbert
Points a game11.0QB3317.9QB10
Season186.7QB22286.9QB10
Most weeks6.5–14.612.5–27.7
Booms · busts0 · 1125+ · under 125 · 225+ · under 12

Ranks are among players at each one's own position. A missing bar is a week he did not score: a bye or a missed game. The format you pick is remembered on this device.

Week by week · aligned
WeekC.WardJ.Herbert
Wk 1112318
Wk 2175242
Wk 3219300
Wk 4108203
Wk 5265166
Wk 6222264
Wk 7255420
Wk 8259227
Wk 9145250
Wk 10·220
Wk 1119481
Wk 12256·
Wk 13141151
Wk 14117139
Wk 15170210
Wk 16228300
Wk 17251236
Wk 1852·
Season31693727

Rows are league weeks, so byes and missed games show as gaps. The best value each week is marked green.

Season stats · side by side, with league rank
SeasonC.WardJ.Herbert
Attempts540512
Completions323340
Pass yards31693727
Touchdowns1526
EPA per dropback-0.1847th+0.0327th
CPOE-1.935th+1.618th
Sack rate9%41st10%46th
Yards per attempt5.948th7.316th
TD rate3%49th5%13th
INT rate1%8th3%37th
Depth of target7.238th7.827th
Rush EPA per game+0.5027th+0.9916th
Careers · passing yards a game, season by seasonRegular season
Cam WardJustin Herbert
100200300
202020212022202320242025*
PlayerGAttYdsTDYds/gBest seasonThis season
Cam Ward2025 to 2025 · 1 season175403,16915186.42025: 3,169186.4 a game186.4first season
Justin Herbert2020 to 2025 · 6 seasons953,43824,820163261.32021: 5,014294.9 a game232.9below his career rate

Regular season only, from each player's career file. * 2025 is through Week 22; its dot is hollow because the season is not over. "This season" compares this year's rate with his earlier seasons. Hover a dot for the season's line.