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 · tight ends

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.

72 in the league pool
Who · up to three, same position groupStart over
84
Josh OliverTE · Vikings · graded
✕
81
Grant CalcaterraTE · Eagles · not yet qualified
✕

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 72 tight ends with 15 targets+League percentiles
Josh OliverGrant Calcaterra
Target shareof team targets
7%22nd
--
Depth of targetair yards per target
3.410th
--
After the catchyards per reception
6.887th
--
Catch ratereceptions per target
79%80th
--
EPA per target
+0.5587th
--
First downsper target
47%85th
--
Drop ratedrops per target, lower is better
0%91st
--
Yards per game
10.720th
--

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 tight endsamong 72 tight ends
Josh OliverGrant Calcaterra
JoshStays outsideNot the third-down optionPlay-action target
Grantnot graded yet
Deep sharetargets 20+ yards downfield
0%12th
8%–
Screensshare of his targets
5%51st
0%–
Middle of the fieldtargets between the numbers
11%5th
31%–
After the catchshare of his yards after the catch
64%77th
41%–
Third-down shareof team targets on 3rd down
1%5th
2%–
Red-zone shareof team targets inside the 20
9%43rd
5%–
Motiontargets with pre-snap motion
45%18th
46%–
Play actiontargets off play action
60%92nd
38%–

Every trait is a share of his own targets, so volume does not move it. Each bar is the league's qualifying tight ends; 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

Grant Calcaterra is not graded yet, so no shape.

Where he wins · EPA per target by lane and depthSame scale across
Josh Oliver
Loading…
Grant Calcaterra
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

Grant Calcaterra gets the most from the ball in the air (+2.8 EPA), Josh Oliver gets the most after the catch (+15.5 EPA), and Grant also gives the most back on targets he does not catch (−5.1).

Josh Oliver+10.5
Grant Calcaterra+1.0
Air yardsAfter the catchIncompletionsInterceptionsTwo-point tries
PartJoshGrant
Air yardson catches−1.5−0.08 a target · 26th+2.8+0.22 a target
After the catch+15.5+0.82 a target · 95th+3.2+0.25 a target
Incompletionstargets not caught−2.6−0.13 a target · 85th−5.1−0.39 a target
Interceptionswhen targeted0.00.00 a target · 73rd0.00.00 a target
Two-point triesnot in the rates−0.9–
Total+10.519 targets+1.013 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 tight ends; the best rate in each row is green.

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

Josh Oliver

Loading…

Grant Calcaterra

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 · J.Oliver and G.CalcaterraSolid 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
Josh OliverGrant Calcaterra

Targetslast 3 games

15
123456789101112131415161718
Josh 2.3Grant 1.3

Rec yardslast 3 games

538
123456789101112131415161718
Josh 18.7Grant 8

EPA / targetlast 3 games

-0.24+0.76
123456789101112131415161718
Josh +0.48Grant +0.01

aDOTlast 3 games

3.08.7
123456789101112131415161718
Josh 3.1Grant 6.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 38+ · dud under 5
J.Oliver
5Wk 10Wk 212Wk 30Wk 435Wk 56Wk 69Wk 70Wk 89Wk 910Wk 10-3Wk 114Wk 120Wk 1324Wk 1418Wk 1519Wk 168Wk 1729Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
11 ± 11
G.Calcaterra
0Wk 16Wk 20Wk 316Wk 418Wk 56Wk 67Wk 70Wk 89Wk 90Wk 100Wk 118Wk 120Wk 130Wk 144Wk 150Wk 163Wk 1721Wk 1819Wk 1920Wk 2021Wk 2122Wk 22
5 ± 7

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

Fantasy · points, rank and range, week by week
StandardJ.OliverG.Calcaterra
Points a game2.7TE420.9TE73
Season40.0TE4313.6TE71
Most weeks0.0–3.80.0–1.0
Booms · busts2 · 129+ · under 30 · 149+ · under 3
Half PPRJ.OliverG.Calcaterra
Points a game3.2TE441.2TE75
Season47.5TE4818.1TE73
Most weeks0.0–4.70.0–1.5
Booms · busts1 · 1212+ · under 40 · 1412+ · under 4
PPRJ.OliverG.Calcaterra
Points a game3.7TE501.5TE77
Season55.0TE4922.6TE74
Most weeks0.0–5.60.0–2.0
Booms · busts1 · 1215+ · under 50 · 1415+ · under 5

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
WeekJ.OliverG.Calcaterra
Wk 15·
Wk 2·6
Wk 3120
Wk 4016
Wk 53518
Wk 79·
Wk 8··
Wk 10·0
Wk 11-3·
Wk 1248
Wk 13··
Wk 1424·
Wk 15184
Wk 1619·
Wk 1783
Wk 182921
Season16076

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
SeasonJ.OliverG.Calcaterra
Targets1913
Receptions159
Yards16076
Touchdowns41
Target share7%57th-
Depth of target3.465th-
After the catch6.810th-
Catch rate79%15th-
EPA per target+0.5510th-
First downs47%11th-
Drop rate0%1st-
Yards per game10.758th-
Careers · receiving yards a game, season by seasonRegular season
Josh OliverGrant Calcaterra
201920212022202320242025*
PlayerGRecYdsTDYds/gBest seasonThis season
Josh Oliver2019 to 2025 · 6 seasons63858611113.72024: 25821.5 a game13.3below his career rate
Grant Calcaterra2022 to 2025 · 4 seasons3342494215.02024: 29819.9 a game8.4below 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.