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 · backs

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.

89 in the league pool
Who · up to three, same position groupStart over
23
Christian McCaffreyRB · 49ers · graded
✕
33
Bhayshul TutenRB · Jaguars · 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 89 backs with 30 touches+League percentiles
Christian McCaffreyBhayshul Tuten
Yards per carry
3.930th
3.725th
Rush EPA per carry
-0.0746th
-0.1225th
EPA per targetreceiving, 5+ targets
+0.3092nd
+0.3999th
Broken tacklesper touch
3%71st
1%38th
Explosive rate10+ run, 20+ catch per touch
8%40th
6%23rd
Touches per game
25.999th
6.528th
Receiving sharetargets per touch
29%77th
14%33rd
Yards per touch
4.863rd
4.017th

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 backsamong 89 backs
Christian McCaffreyBhayshul Tuten
ChristianThird-down backRed-zone backShort-yardage back
BhayshulBounces outsideUnder center
Inside runscarries at guard or tackle
52%40th
33%1st
Shotgun runscarries from the gun
27%23rd
28%25th
Receiving sharetargets per touch
30%77th
14%29th
Third-down shareof team touches on 3rd down
29%99th
5%31st
Red-zone shareof team touches inside the 20
55%99th
14%43rd
Short-yardage shareof team touches, 2 or fewer to go
40%92nd
17%42nd
RPOcarries on run-pass options
2%6th
8%28th
Motiontouches with pre-snap motion
69%87th
59%60th

Every trait is a share of his own touches, so volume does not move it. Each bar is the league's qualifying backs; 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
YPCRush EPAEPA / tgtBrk tacklesExplosiveTouchesRec shareYds / touch
Where he wins · EPA per target by lane and depthSame scale across
Christian McCaffrey
Loading…
Bhayshul Tuten
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 playsRushing and receiving EPA

Bhayshul Tuten gets the most on runs (−9.2 EPA), Christian McCaffrey gets the most after the catch (+97.8 EPA), and Christian also gives the most back on targets he does not catch (−18.8).

Christian McCaffrey+18.0
Bhayshul Tuten−4.7
Air yardsAfter the catchIncompletionsInterceptionsDesigned runsTwo-point tries
PartChristianBhayshul
Air yardson catches−28.6−0.22 a target · 97th−6.5−0.46 a target · 80th
After the catch+97.8+0.76 a target · 35th+12.6+0.90 a target · 54th
Incompletionstargets not caught−18.8−0.15 a target · 54th−0.7−0.05 a target · 89th
Interceptionswhen targeted−11.4−0.09 a target · 15th0.00.00 a target · 59th
Designed runs−21.1−0.07 a carry · 46th−9.2−0.11 a carry · 30th
Two-point triesnot in the rates–−0.9
Total+18.0440 touches−4.797 touches

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, and his designed runs. Bars share one scale, gains right of the line and losses left. The rate is per carry for runs and per target for catches, with its percentile among the league's qualifying backs; the best rate in each row is green.

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

Christian McCaffrey

Loading…

Bhayshul Tuten

Loading…

Designed carries by gap, from each team's play file.

On one field · every target, same fieldFilled is caught, a ring is not
Loading…
Depth butterfly · C.McCaffrey and B.TutenSolid 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
Christian McCaffreyBhayshul Tuten

Toucheslast 3 games

417
123456789101112131415161718
Christian 24.3Bhayshul 3

Scrimmage ydslast 3 games

1678
123456789101112131415161718
Christian 128Bhayshul 17

EPA / touchlast 3 games

-0.27+0.15
123456789101112131415161718
Christian +0.03Bhayshul -0.15

Targetslast 3 games

13
123456789101112131415161718
Christian 7Bhayshul 0.3

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 78+ · dud under 16
C.McCaffrey
142Wk 1107Wk 2140Wk 3141Wk 4139Wk 5111Wk 6201Wk 768Wk 8173Wk 996Wk 10121Wk 11142Wk 1274Wk 1314Wk 1487Wk 15146Wk 16181Wk 1757Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
125 ± 39
B.Tuten
11Wk 174Wk 221Wk 322Wk 411Wk 528Wk 622Wk 78Wk 826Wk 910Wk 1074Wk 1117Wk 1219Wk 135Wk 1423Wk 1516Wk 1617Wk 1723Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
26 ± 20

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

Fantasy · points, rank and range, week by week
StandardC.McCaffreyB.Tuten
Points a game18.5RB25.2RB48
Season314.6RB278.6RB48
Most weeks13.5–26.11.1–8.4
Booms · busts14 · 012+ · under 52 · 812+ · under 5
Half PPRC.McCaffreyB.Tuten
Points a game21.5RB15.6RB51
Season365.6RB183.6RB51
Most weeks15.2–28.91.6–8.9
Booms · busts12 · 016+ · under 6.50 · 816+ · under 6.5
PPRC.McCaffreyB.Tuten
Points a game24.5RB15.9RB52
Season416.6RB188.6RB53
Most weeks17.4–31.71.9–9.4
Booms · busts12 · 020+ · under 80 · 820+ · under 8

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.McCaffreyB.Tuten
Wk 16911
Wk 25542
Wk 35221
Wk 44914
Wk 5576
Wk 65414
Wk 712922
Wk 825·
Wk 910629
Wk 10305
Wk 118174
Wk 128917
Wk 135317
Wk 14·5
Wk 15737
Wk 16117·
Wk 17140·
Wk 182323
Season1202307

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.McCaffreyB.Tuten
Carries31183
Rush yards1202307
Rush TD105
Targets12914
Yards per carry3.963rd3.767th
Rush EPA per carry-0.0749th-0.1267th
EPA per target+0.307th+0.391st
Broken tackles3%26th1%55th
Explosive rate8%54th6%69th
Touches per game25.91st6.565th
Receiving share29%21st14%60th
Yards per touch4.833rd4.074th
Careers · scrimmage yards a game, season by seasonRegular season
Christian McCaffreyBhayshul Tuten
50100150
20172019202120232025*
PlayerGCarYdsTDYds/gBest seasonThis season
Christian McCaffrey2017 to 2025 · 9 seasons1121,65812,97998115.92019: 2,392149.5 a game125.1above his career rate
Bhayshul Tuten2025 to 2025 · 1 season1583386725.72025: 38625.7 a game25.7first season

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.