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 · wide receivers

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.

146 in the league pool
Who · up to three, same position groupStart over
11
Luke McCaffreyWR · Commanders · graded
✕
18
Kyle WilliamsWR · Patriots · 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 146 wide receivers with 15 targets+League percentiles
Luke McCaffreyKyle Williams
Target shareof team targets
7%11th
5%3rd
Depth of targetair yards per target
14.590th
19.098th
After the catchyards per reception
6.390th
7.998th
Catch ratereceptions per target
73%90th
48%9th
EPA per target
+0.6393rd
+0.4781st
First downsper target
40%62nd
33%36th
Drop ratedrops per target, lower is better
0%92nd
10%10th
Yards per game
22.639th
12.310th

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 wide receiversamong 146 wide receivers
Luke McCaffreyKyle Williams
LukeNot the third-down optionMotion manScreen game
KyleNot the red-zone optionStays outsideDownfield
Deep sharetargets 20+ yards downfield
20%65th
41%97th
Screensshare of his targets
13%84th
0%12th
Middle of the fieldtargets between the numbers
20%53rd
7%2nd
After the catchshare of his yards after the catch
34%64th
35%67th
Third-down shareof team targets on 3rd down
3%7th
6%22nd
Red-zone shareof team targets inside the 20
6%32nd
0%1st
Motiontargets with pre-snap motion
69%90th
44%19th
Play actiontargets off play action
19%51st
4%3rd

Every trait is a share of his own targets, so volume does not move it. Each bar is the league's qualifying wide receivers; 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
Target shareDepthYACCatch rateEPA / tgtFirst downsDropsYds / game
Where he wins · EPA per target by lane and depthSame scale across
Luke McCaffrey
Loading…
Kyle Williams
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 playsReceiving EPA

Kyle Williams gets the most from the ball in the air (+12.1 EPA), Luke McCaffrey gets the most after the catch (+10.7 EPA), and Kyle also gives the most back on targets he does not catch (−9.8).

Luke McCaffrey+9.5
Kyle Williams+9.8
Air yardsAfter the catchIncompletionsInterceptionsTwo-point tries
PartLukeKyle
Air yardson catches+5.6+0.38 a target · 52nd+12.1+0.57 a target · 84th
After the catch+10.7+0.71 a target · 98th+7.6+0.36 a target · 72nd
Incompletionstargets not caught−7.9−0.53 a target · 2nd−9.8−0.47 a target · 6th
Interceptionswhen targeted0.00.00 a target · 88th0.00.00 a target · 88th
Two-point triesnot in the rates+1.1–
Total+9.515 targets+9.821 targets

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

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

Luke McCaffrey

Loading…

Kyle Williams

Loading…

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

On one field · every target, same fieldFilled is caught, a ring is not
Loading…
Depth butterfly · L.McCaffrey and K.WilliamsSolid 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
Luke McCaffreyKyle Williams

Targetslast 3 games

27
123456789101112131415161718
Luke 1.7Kyle 2.7

Rec yardslast 3 games

754
123456789101112131415161718
Luke 8Kyle 22

EPA / targetlast 3 games

-0.35+0.75
123456789101112131415161718
Luke -1.10Kyle +0.42

aDOTlast 3 games

6.314.6
123456789101112131415161718
Luke 9.4Kyle 14.1

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 54+ · dud under 7
L.McCaffrey
0Wk 119Wk 256Wk 321Wk 450Wk 533Wk 60Wk 724Wk 80Wk 910Wk 1011Wk 1112Wk 1213Wk 1314Wk 1415Wk 1516Wk 1617Wk 1718Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
23 ± 20
K.Williams
12Wk 10Wk 28Wk 30Wk 40Wk 50Wk 60Wk 70Wk 80Wk 972Wk 100Wk 1118Wk 1233Wk 1314Wk 140Wk 1546Wk 1620Wk 170Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
12 ± 20

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

Fantasy · points, rank and range, week by week
StandardL.McCaffreyK.Williams
Points a game4.5WR602.3WR100
Season40.3WR9439.2WR96
Most weeks0.0–8.60.0–2.0
Booms · busts0 · 512+ · under 51 · 1412+ · under 5
Half PPRL.McCaffreyK.Williams
Points a game5.1WR652.6WR111
Season45.8WR10244.2WR104
Most weeks0.0–9.40.0–3.3
Booms · busts0 · 616+ · under 6.50 · 1416+ · under 6.5
PPRL.McCaffreyK.Williams
Points a game5.7WR742.9WR115
Season51.3WR10849.2WR112
Most weeks0.0–10.20.0–4.6
Booms · busts0 · 620+ · under 80 · 1420+ · 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
WeekL.McCaffreyK.Williams
Wk 1012
Wk 219·
Wk 3568
Wk 4210
Wk 550·
Wk 6330
Wk 700
Wk 824·
Wk 900
Wk 10·72
Wk 11·0
Wk 12·18
Wk 13·33
Wk 15·0
Wk 16·46
Wk 17·20
Wk 18·0
Season203209

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
SeasonL.McCaffreyK.Williams
Targets1521
Receptions1110
Yards203209
Touchdowns33
Target share7%130th5%142nd
Depth of target14.515th19.03rd
After the catch6.315th7.93rd
Catch rate73%14th48%134th
EPA per target+0.6311th+0.4728th
First downs40%54th33%92nd
Drop rate0%1st10%132nd
Yards per game22.689th12.3132nd
Careers · receiving yards a game, season by seasonRegular season
Luke McCaffreyKyle Williams
20242025*
PlayerGRecYdsTDYds/gBest seasonThis season
Luke McCaffrey2024 to 2025 · 2 seasons2229371316.92024: 16812.9 a game22.6above his career rate
Kyle Williams2025 to 2025 · 1 season1410209314.92025: 20914.9 a game14.9first 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.