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
7
Brian Thomas Jr.WR · Jaguars · graded
✕
13
Pat BryantWR · Broncos · 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
Brian Thomas Jr.Pat Bryant
Target shareof team targets
19%74th
11%37th
Depth of targetair yards per target
14.589th
8.421st
After the catchyards per reception
3.339th
4.773rd
Catch ratereceptions per target
53%20th
63%52nd
EPA per target
+0.1943rd
+0.2963rd
First downsper target
36%45th
45%83rd
Drop ratedrops per target, lower is better
11%7th
6%31st
Yards per game
50.574th
25.243rd

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
Brian Thomas Jr.Pat Bryant
BrianDownfieldStays outsideWins before the catch
PatRarely deepStaticDropback target
Deep sharetargets 20+ yards downfield
25%82nd
8%11th
Screensshare of his targets
1%26th
8%67th
Middle of the fieldtargets between the numbers
14%20th
19%43rd
After the catchshare of his yards after the catch
22%24th
39%74th
Third-down shareof team targets on 3rd down
18%74th
7%26th
Red-zone shareof team targets inside the 20
9%48th
8%48th
Motiontargets with pre-snap motion
55%56th
42%13th
Play actiontargets off play action
19%54th
11%20th

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
Brian Thomas Jr.
Loading…
Pat Bryant
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

Brian Thomas Jr. gets the most from the ball in the air (+39.0 EPA), Pat Bryant gets the most after the catch (+21.0 EPA), and Brian also gives the most back on targets he does not catch (−34.6).

Brian Thomas Jr.+17.2
Pat Bryant+14.2
Air yardsAfter the catchIncompletionsInterceptions
PartBrianPat
Air yardson catches+39.0+0.43 a target · 61st+15.2+0.31 a target · 39th
After the catch+15.9+0.18 a target · 21st+21.0+0.43 a target · 79th
Incompletionstargets not caught−34.6−0.38 a target · 24th−10.9−0.22 a target · 83rd
Interceptionswhen targeted−3.1−0.03 a target · 74th−11.1−0.23 a target · 15th
Total+17.291 targets+14.249 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

Brian Thomas Jr.

Loading…

Pat Bryant

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 · B.Thomas and P.BryantSolid 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
Brian Thomas Jr.Pat Bryant

Targetslast 3 games

27
123456789101112131415161718
Brian 5Pat 5.7

Rec yardslast 3 games

754
123456789101112131415161718
Brian 35.3Pat 35

EPA / targetlast 3 games

-0.35+0.75
123456789101112131415161718
Brian +0.29Pat +0.24

aDOTlast 3 games

6.314.6
123456789101112131415161718
Brian 14.2Pat 6.2

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
B.Thomas
11Wk 149Wk 255Wk 349Wk 480Wk 590Wk 631Wk 78Wk 855Wk 910Wk 1011Wk 1112Wk 1228Wk 1387Wk 1466Wk 1518Wk 1639Wk 1749Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
51 ± 23
P.Bryant
0Wk 118Wk 20Wk 30Wk 40Wk 522Wk 66Wk 740Wk 820Wk 943Wk 1082Wk 1112Wk 1242Wk 1332Wk 1415Wk 1542Wk 1617Wk 1731Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
25 ± 22

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
StandardB.ThomasP.Bryant
Points a game6.5WR412.9WR85
Season90.8WR4543.8WR86
Most weeks3.6–8.30.0–4.2
Booms · busts2 · 612+ · under 50 · 1312+ · under 5
Half PPRB.ThomasP.Bryant
Points a game8.2WR414.0WR85
Season114.8WR4359.3WR85
Most weeks5.4–10.10.0–5.9
Booms · busts1 · 516+ · under 6.50 · 1216+ · under 6.5
PPRB.ThomasP.Bryant
Points a game9.9WR425.0WR84
Season138.8WR4274.8WR85
Most weeks6.9–11.80.0–7.6
Booms · busts1 · 620+ · under 80 · 1220+ · 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
WeekB.ThomasP.Bryant
Wk 111·
Wk 24918
Wk 355·
Wk 4490
Wk 5800
Wk 69022
Wk 7316
Wk 8·40
Wk 95520
Wk 10·43
Wk 11·82
Wk 132842
Wk 148732
Wk 1566·
Wk 161842
Wk 1739·
Wk 184931
Season707378

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
SeasonB.ThomasP.Bryant
Targets9149
Receptions4831
Yards707378
Touchdowns21
Target share19%39th11%93rd
Depth of target14.516th8.4116th
After the catch3.390th4.740th
Catch rate53%118th63%70th
EPA per target+0.1984th+0.2955th
First downs36%81st45%26th
Drop rate11%136th6%101st
Yards per game50.538th25.283rd
Careers · receiving yards a game, season by seasonRegular season
Brian Thomas Jr.Pat Bryant
255075
20242025*
PlayerGRecYdsTDYds/gBest seasonThis season
Brian Thomas Jr.2024 to 2025 · 2 seasons311351,9891264.22024: 1,28275.4 a game50.5below his career rate
Pat Bryant2025 to 2025 · 1 season1331378129.12025: 37829.1 a game29.1first 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.