Season totals or exact team stints. Career totals count each season once.
| Season | Age | Team | G | GS | Receiving | Snap Counts | Defense | Advanced Receiving (2018+) | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tgt | Rec | Yds | TD | Ctch% | Y/R | Y/Tgt | AirYd/T | 1D | Off | Off% | Def | Def% | ST | ST% | Tkl | Solo | Ast | TFL | QBHits | Sk | Dis | Int | PD | FF | FR | TD | Sfty | ADOT | YBC/R | YAC/R | BrkTkl | Drops | Drop% | 1D | TgtRate | |||||
| 2018 | 22 | CAR | 16 | — | 49 | 36 | 333 | 2 | 73.5% | 9.3 | 6.8 | — | 20 | 526 | 46.8% | — | 0.0% | 107 | 25.6% | — | — | — | — | — | — | — | — | — | — | — | — | — | 6.2 | 4.9 | 4.4 | 2 | 3 | 0.1 | 20 | 88.2 |
| 2019 | 23 | CAR | 16 | — | 30 | 16 | 136 | 1 | 53.3% | 8.5 | 4.5 | — | 10 | 302 | 26.8% | — | 0.0% | 39 | 8.2% | — | — | — | — | — | — | — | — | — | — | — | — | — | 7.1 | 3.9 | 4.6 | 0 | 3 | 0.1 | 10 | 62.6 |
| 2020 | 24 | CAR | 16 | — | 31 | 20 | 145 | 1 | 64.5% | 7.3 | 4.7 | — | 11 | 672 | 65.3% | — | 0.0% | 19 | 4.7% | — | — | — | — | — | — | — | — | — | — | — | — | — | 6.3 | 3.4 | 3.9 | 0 | 1 | 0.0 | 11 | 59.2 |
| 2021 | 25 | CAR | 17 | — | 30 | 18 | 188 | 0 | 60.0% | 10.4 | 6.3 | — | 6 | 703 | 61.5% | — | 0.0% | 48 | 10.8% | — | — | — | — | — | — | — | — | — | — | — | — | — | 6.2 | 5.3 | 5.1 | 1 | 4 | 0.1 | 6 | 38.6 |
| 2022 | 26 | CAR | 17 | — | 30 | 21 | 197 | 0 | 70.0% | 9.4 | 6.6 | — | 8 | 556 | 54.4% | — | 0.0% | 169 | 35.8% | — | — | — | — | — | — | — | — | — | — | — | — | — | 2.3 | 0.7 | 8.7 | 2 | 3 | 0.1 | 8 | 87.8 |
| 2023 | 27 | CAR | 12 | — | 9 | 5 | 56 | 0 | 55.6% | 11.2 | 6.2 | — | 1 | 216 | 26.8% | — | 0.0% | 105 | 33.5% | — | — | — | — | — | — | — | — | — | — | — | — | — | 8.7 | 4.6 | 6.6 | 1 | 1 | 0.1 | 1 | 34.7 |
| 2024 | 28 | CAR | 5 | — | 6 | 3 | 7 | 0 | 50.0% | 2.3 | 1.2 | — | 1 | 94 | 34.4% | — | 0.0% | 9 | 7.2% | — | — | — | — | — | — | — | — | — | — | — | — | — | 4.2 | 0.3 | 2.0 | 0 | 1 | 0.2 | 1 | 16.7 |
| 2025 | 29 | LV | 15 | — | 13 | 13 | 114 | 0 | 100.0% | 8.8 | 8.8 | — | 5 | 318 | 35.9% | — | 0.0% | 96 | 26.1% | 1 | 0 | 1 | 0 | 0 | 0.0 | 0.0 | 0 | 0 | 0 | — | 0 | 0 | 3.2 | 3.2 | 5.5 | 0 | 0 | 0.0 | 5 | 103.2 |
| 2026 | 30 | LV | 5 | — | 4 | 4 | 52 | 1 | 100.0% | 13.0 | 13.0 | — | 4 | 126 | 37.2% | — | 0.0% | 14 | 9.4% | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
| Career | — | 119 | — | 202 | 136 | 1,228 | 5 | 67.3% | 9.0 | 6.1 | — | 66 | — | — | — | — | — | — | 1 | 0 | 1 | 0 | 0 | 0.0 | 0.0 | 0 | 0 | 0 | — | 0 | 0 | — | — | — | 6 | 16 | — | 62 | — | |
Career Value · VORP
21 career value over replacement — #3097 all-time of 4,695. 3/season above a replacement-level TE.
Pick #101 (Rd 4) · CAR · 2018 · +11.3 vs expected KV-H
Fan Rating
Rate Ian Thomas — All-Time
Explore More
Similar Players
9 seasons · peak 0.9 in 2018
VAL (Value Above League) measures each NFL season against that season's league; the dashed line is zero — a season that added nothing above the league's fringe. ● peak · ○ league-best season.
0.1 career wins over 9 seasons · 1 win = 13.08 VAL
Best season · 2018 · +0.1 wins
Latest season · 2026 · −0.1 wins
VAL 3.0 measures each part of a NFL player's game in his sport's own currency against what that season's fringe players produced, converted to team wins with rates fitted from every team-season in the encyclopedia.
#314 of 698 all-time TEs by KV-H
| Season | Age | Team | G | GS | Tgt | Rec | Yds | TD | Ctch% | Y/R | Y/Tgt | AirYd/T | 1D | VAL |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2018 | 22 | CAR | 10 | 0* | 49 | 36 | 333 | 2 | 73.5% | 9.3 | 6.8 | — | 20 | 0.9 |
| 2019 | 23 | CAR | 9 | 0* | 30 | 16 | 136 | 1 | 53.3% | 8.5 | 4.5 | — | 10 | 0 |
| 2020 | 24 | CAR | 13 | 10* | 31 | 20 | 145 | 1 | 64.5% | 7.3 | 4.7 | — | 11 | 0 |
| 2021 | 25 | CAR | 14 | 10* | 30 | 18 | 188 | 0 | 60.0% | 10.4 | 6.3 | — | 6 | 0 |
| 2022 | 26 | CAR | 13 | 9* | 30 | 21 | 197 | 0 | 70.0% | 9.4 | 6.6 | — | 8 | 0 |
| 2023 | 27 | CAR | 7 | 0* | 9 | 5 | 56 | 0 | 55.6% | 11.2 | 6.2 | — | 1 | 0 |
| 2024 | 28 | CAR | 3 | 0* | 6 | 3 | 7 | 0 | 50.0% | 2.3 | 1.2 | — | 1 | 0 |
| 2025 | 29 | LV | 7 | 0* | 13 | 13 | 114 | 0 | 100.0% | 8.8 | 8.8 | — | 5 | 0 |
| 2026 | 30 | LV | 3 | 0* | 4 | 4 | 52 | 1 | 100.0% | 13.0 | 13.0 | — | 4 | 0 |
| Career | 79 | 29* | 202 | 136 | 1,228 | 5 | 67.3% | 9.0 | 6.1 | — | 66 | 0.9 |
* GS not available from free sources — SG* estimated from snap share (nflverse 2012+)
| Season | Age | Team | G | GS | Off | Off% | Def | Def% | ST | ST% |
|---|---|---|---|---|---|---|---|---|---|---|
| 2018 | 22 | CAR | 16 | 0* | 526 | 46.8% | — | 0.0% | 107 | 25.6% |
| 2019 | 23 | CAR | 16 | 0* | 302 | 26.8% | — | 0.0% | 39 | 8.2% |
| 2020 | 24 | CAR | 16 | 10* | 672 | 65.3% | — | 0.0% | 19 | 4.7% |
| 2021 | 25 | CAR | 17 | 10* | 703 | 61.5% | — | 0.0% | 48 | 10.8% |
| 2022 | 26 | CAR | 17 | 9* | 556 | 54.4% | — | 0.0% | 169 | 35.8% |
| 2023 | 27 | CAR | 12 | 0* | 216 | 26.8% | — | 0.0% | 105 | 33.5% |
| 2024 | 28 | CAR | 5 | 0* | 94 | 34.4% | — | 0.0% | 9 | 7.2% |
| 2025 | 29 | LV | 15 | 0* | 318 | 35.9% | — | 0.0% | 96 | 26.1% |
| 2026 | 30 | LV | 5 | 0* | 126 | 37.2% | — | 0.0% | 14 | 9.4% |
| Career | — | — | — | — | — | — | — |
Career games and per-game totals are unavailable because the season rows do not establish complete career coverage. Published career totals are preserved.
* GS not available from free sources — SG* estimated from snap share (nflverse 2012+)
| Season | Age | Team | G | GS | ADOT | YBC/R | YAC/R | BrkTkl | Drops | Drop% | 1D | TgtRate |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2018 | 22 | CAR | 16 | 0* | 6.2 | 4.9 | 4.4 | 2 | 3 | 0.1 | 20 | 88.2 |
| 2019 | 23 | CAR | 16 | 0* | 7.1 | 3.9 | 4.6 | 0 | 3 | 0.1 | 10 | 62.6 |
| 2020 | 24 | CAR | 16 | 10* | 6.3 | 3.4 | 3.9 | 0 | 1 | 0.0 | 11 | 59.2 |
| 2021 | 25 | CAR | 17 | 10* | 6.2 | 5.3 | 5.1 | 1 | 4 | 0.1 | 6 | 38.6 |
| 2022 | 26 | CAR | 17 | 9* | 2.3 | 0.7 | 8.7 | 2 | 3 | 0.1 | 8 | 87.8 |
| 2023 | 27 | CAR | 12 | 0* | 8.7 | 4.6 | 6.6 | 1 | 1 | 0.1 | 1 | 34.7 |
| 2024 | 28 | CAR | 5 | 0* | 4.2 | 0.3 | 2.0 | 0 | 1 | 0.2 | 1 | 16.7 |
| 2025 | 29 | LV | 15 | 0* | 3.2 | 3.2 | 5.5 | 0 | 0 | 0.0 | 5 | 103.2 |
| Career | 114 | 29* | — | — | — | 6 | 16 | — | 62 | — |
* GS not available from free sources — SG* estimated from snap share (nflverse 2012+)
Source: nflverse (CC-BY 4.0) · 2016–2026 · 3 games
Folded from the per-game logs on file. Home/away, result, month and division come from the NFL schedule feed; where a game has no schedule row those dimensions leave it out rather than guess, and the count is shown.
| Home / Away | G | Tgt | Rec | Rec Yds | Rec TD | FPts |
|---|---|---|---|---|---|---|
| Home | 45 | 108 | 69 | 649 | 3 | 82.9 |
| Away | 36 | 94 | 67 | 579 | 2 | 69.9 |
| Wins / Losses | G | Tgt | Rec | Rec Yds | Rec TD | FPts |
|---|---|---|---|---|---|---|
| Wins | 19 | 48 | 31 | 264 | 2 | 38.4 |
| Losses | 62 | 154 | 105 | 964 | 3 | 114.4 |
| Regular season / Postseason | G | Tgt | Rec | Rec Yds | Rec TD | FPts |
|---|---|---|---|---|---|---|
| Regular season | 81 | 202 | 136 | 1228 | 5 | 152.8 |
| By opponent | G | Tgt | Rec | Rec Yds | Rec TD | FPts |
|---|---|---|---|---|---|---|
| vs ARI | 2 | 8 | 3 | 11 | 1 | 7.1 |
| vs ATL | 10 | 30 | 16 | 155 | 2 | 27.5 |
| vs BAL | 2 | 5 | 4 | 39 | — | 3.9 |
| vs BUF | 1 |
| By month | G | Tgt | Rec | Rec Yds | Rec TD | FPts |
|---|---|---|---|---|---|---|
| January | 4 | 9 | 6 | 46 | — | 4.6 |
| September | 15 | 30 | 19 | 181 | — | 18.1 |
| October | 26 | 56 | 37 | 350 | 2 | 47 |
| November | 16 |
| Division games | G | Tgt | Rec | Rec Yds | Rec TD | FPts |
|---|---|---|---|---|---|---|
| Division | 31 | 78 | 50 | 457 | 4 | 69.7 |
| Non-division | 50 | 124 | 86 | 771 | 1 | 83.1 |
A solid career by KV-H: a remarkably steady profile that scores 47 of 100, era-normalized against rec yds/g peers across 7 scored seasons.
Blend 47.4 × longevity 1 = KV-H 47· confidence 97%
Season-by-season quality (era-relative rec yds/g)
Nick Boyle
TE
85% match
2018 Draft ClassmatesFull class →
| 1 |
| 1 |
| 5 |
| — |
| 0.5 |
| vs CHI | 2 | 1 | 1 | 9 | — | 0.9 |
| vs CIN | 1 | 5 | 3 | 20 | — | 2 |
| vs CLE | 3 | 18 | 15 | 166 | — | 16.6 |
| vs DAL | 3 | 6 | 6 | 39 | — | 3.9 |
| vs DEN | 3 | 8 | 7 | 58 | — | 5.8 |
| vs DET | 2 | 5 | 2 | 40 | — | 4 |
| vs GB | 1 | 4 | 3 | 29 | — | 2.9 |
| vs IND | 2 | 6 | 6 | 36 | — | 3.6 |
| vs JAX | 2 | 2 | 1 | 9 | — | 0.9 |
| vs KC | 2 | 4 | 3 | 40 | 1 | 10 |
| vs LA | 2 | 3 | 2 | 22 | — | 2.2 |
| vs LAC | 4 | 4 | 3 | 28 | — | 2.8 |
| vs LV | 1 | 2 | 2 | 16 | — | 1.6 |
| vs MIA | 1 | 3 | — | — | — | — |
| vs MIN | 3 | 5 | 2 | 45 | — | 4.5 |
| vs NE | 2 | 3 | 2 | 18 | — | 1.8 |
| vs NO | 9 | 30 | 17 | 154 | 1 | 21.4 |
| vs NYG | 4 | 12 | 5 | 54 | — | 5.4 |
| vs NYJ | 1 | 2 | 1 | 17 | — | 1.7 |
| vs PHI | 1 | 5 | 4 | 40 | — | 4 |
| vs SEA | 3 | 6 | 5 | 42 | — | 4.2 |
| vs SF | 2 | 3 | 2 | 8 | — | 0.8 |
| vs TB | 7 | 12 | 11 | 80 | — | 8 |
| vs TEN | 2 | 2 | 2 | 13 | — | 1.3 |
| vs WAS | 3 | 7 | 7 | 35 | — | 3.5 |
| 29 |
| 20 |
| 169 |
| — |
| 16.9 |
| December | 20 | 78 | 54 | 482 | 3 | 66.2 |