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
87
Romeo DoubsWR · Packers · graded
✕
0
Calvin RidleyWR · Titans · 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
Romeo DoubsCalvin Ridley
Target shareof team targets
19%72nd
17%62nd
Depth of targetair yards per target
12.870th
12.666th
After the catchyards per reception
3.030th
4.977th
Catch ratereceptions per target
65%61st
47%8th
EPA per target
+0.4176th
+0.3469th
First downsper target
48%89th
36%44th
Drop ratedrops per target, lower is better
5%44th
11%6th
Yards per game
45.370th
43.367th

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
Romeo DoubsCalvin Ridley
RomeoRed-zone guyThird-down guyWorks the middle
CalvinStaticStays outsideNot the red-zone option
Deep sharetargets 20+ yards downfield
19%57th
11%23rd
Screensshare of his targets
2%34th
6%58th
Middle of the fieldtargets between the numbers
26%76th
14%19th
After the catchshare of his yards after the catch
24%33rd
28%45th
Third-down shareof team targets on 3rd down
23%84th
8%31st
Red-zone shareof team targets inside the 20
27%97th
4%20th
Motiontargets with pre-snap motion
59%65th
25%1st
Play actiontargets off play action
19%50th
19%55th

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
Romeo Doubs
Loading…
Calvin Ridley
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

Romeo Doubs gets the most from the ball in the air (+47.1 EPA), he gets the most after the catch (+20.5 EPA), and Romeo also gives the most back on targets he does not catch (−28.3).

Romeo Doubs+34.6
Calvin Ridley+12.2
Air yardsAfter the catchIncompletionsInterceptionsTwo-point tries
PartRomeoCalvin
Air yardson catches+47.1+0.55 a target · 83rd+17.6+0.49 a target · 71st
After the catch+20.5+0.24 a target · 35th+6.5+0.18 a target · 22nd
Incompletionstargets not caught−28.3−0.33 a target · 44th−14.8−0.41 a target · 15th
Interceptionswhen targeted−5.6−0.07 a target · 61st+2.9+0.08 a target · 100th
Two-point triesnot in the rates+1.1–
Total+34.685 targets+12.236 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

Romeo Doubs

Loading…

Calvin Ridley

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 · R.Doubs and C.RidleySolid 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 17
Romeo DoubsCalvin Ridley

Targetslast 3 games

27
1234567891011121314151617
Romeo 4Calvin 4

Rec yardslast 3 games

754
1234567891011121314151617
Romeo 60.7Calvin 54

EPA / targetlast 3 games

-0.35+0.75
1234567891011121314151617
Romeo +1.22Calvin +1.27

aDOTlast 3 games

6.314.6
1234567891011121314151617
Romeo 12.7Calvin 15.8

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
R.Doubs
68Wk 128Wk 225Wk 358Wk 45Wk 555Wk 672Wk 744Wk 891Wk 95Wk 1053Wk 1123Wk 1220Wk 130Wk 1436Wk 1584Wk 1662Wk 1718Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
45 ± 26
C.Ridley
27Wk 157Wk 227Wk 330Wk 4131Wk 518Wk 67Wk 78Wk 89Wk 910Wk 1013Wk 1112Wk 1213Wk 1314Wk 1415Wk 1516Wk 1617Wk 1718Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
43 ± 38

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
StandardR.DoubsC.Ridley
Points a game6.9WR374.3
Season110.4WR3430.3WR112
Most weeks2.5–8.82.0–5.2
Booms · busts2 · 512+ · under 51 · 512+ · under 5
Half PPRR.DoubsC.Ridley
Points a game8.6WR385.5
Season137.9WR3638.8WR116
Most weeks3.5–10.32.5–6.7
Booms · busts2 · 516+ · under 6.50 · 516+ · under 6.5
PPRR.DoubsC.Ridley
Points a game10.3WR406.8
Season165.4WR3747.3WR116
Most weeks4.5–13.23.0–8.3
Booms · busts1 · 520+ · under 80 · 520+ · 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
WeekR.DoubsC.Ridley
Wk 16827
Wk 22857
Wk 32527
Wk 45830
Wk 5·131
Wk 65518
Wk 772·
Wk 844·
Wk 991·
Wk 105·
Wk 115313
Wk 1223·
Wk 1320·
Wk 140·
Wk 1536·
Wk 1684·
Wk 1762·
Season724303

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
SeasonR.DoubsC.Ridley
Targets8536
Receptions5517
Yards724303
Touchdowns60
Target share19%42nd17%56th
Depth of target12.844th12.650th
After the catch3.0102nd4.934th
Catch rate65%56th47%135th
EPA per target+0.4135th+0.3446th
First downs48%16th36%82nd
Drop rate5%82nd11%137th
Yards per game45.344th43.349th
Careers · receiving yards a game, season by seasonRegular season
Romeo DoubsCalvin Ridley
255075100
2018202020222025*
PlayerGRecYdsTDYds/gBest seasonThis season
Romeo Doubs2022 to 2025 · 4 seasons592022,4242141.12023: 67439.6 a game45.3above his career rate
Calvin Ridley2018 to 2025 · 7 seasons904055,6784063.12020: 1,37491.6 a game43.3below 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.