Skip to main content
Christian Kirk headshot
Position: Wide receiverFFT99

Christian Kirk

WR · SF · Bye 8

Age 295'11"200 lbs8 yr
FFT9956

Elite Profile

Calibrated public rating

RAW 56 · 100% cov

Projection

3.9

Half-PPR / game

Market ADP

279.0

Consensus overall

FFT fair value

Calibrated pick

Draft delta

Market minus FFT

Draft recommendation

Fairly priced

Risk / reliability

High Risk

34
Risk: High

Reliability

34 / 99

Coverage

80%

Live board

Today's Read

NO MARKET DATA

catches 15.6 points less often than his 7.22-yard target depth predicts. Volume is carrying his production more than skill is.

Model rank

Market

Confidence

medium

Full analysis

2026 week 2

Weekly Outlook

FFT · BDL · SLEEPER · MARKETS

Our projection

0.0

Weighted weekly consensus

BDL projection

BALLDONTLIE weekly

Sleeper projection

Sleeper weekly

Game status

IR-R

No injury description reported

Game market

Total · Spread

Implied team total · cross-book median

Live draft market

ADP 169.8 · Rostered 0.7%

BDL change +0.0%

BALLDONTLIE data checked 9/20/2026, 6:44:22 PM ET. Sportsbook values are consensus context, not betting advice.

Measured 2026 · Regular season

Season Production

Loading 2026 results…

Actual BALLDONTLIE box scores · FFT-computed fantasy points · Preseason excluded. Missing stats are not zeroes.

2026 / Player Game Center

Every play has a story.

Christian Kirk · Recorded performance, game context, fantasy takeaways.

Loading game data…

Measured game log

Weekly Performance

Actual BALLDONTLIE box scores · FFT-computed fantasy points. Missing weeks are never filled with zeroes.

No 2026 regular-season stat line recorded for Christian Kirk yet.

This view will populate automatically when measured games enter the data spine.

FFT Newsroom

Latest news for Christian Kirk

All reports

Position-relative

FFT99 Pillar Scores

Methodology

Opportunity

43

Watch

43

Top 50% at WR

Talent

57

Average

57

Top 40% at WR

Offensive Environment

67

Average

67

Top 25% at WR

QB Play

77

Strong

77

Top 2% at WR

Fantasy Playoff Schedule

26

Watch

26

Top 94% at WR

Player Profile

Opportunity43
Talent57
Offensive Environment67
QB Play77
Fantasy Playoff Schedule26

Games

11

Half-PPR

29.9

Total TD

1

Model Component Contributions

The measured inputs doing the most work inside this grade.

Target Share
11%
YPRR (Efficiency)
9%
Targets Per Game
7%
First-Read Share (proxy)
7%
Vegas
7%
TPRR
7%
Play Caller
6%
Age Prod
5%

Draft Economics

Value Over Replacement

-102.4

proj. half-PPR pts

Rank Delta

-264

position spots vs ADP

Value Grade

D

Reach

reachfair valuesteal

Market

279.0

FFT value

Board Δ

Playoff Schedule

Week 15

@ LAC

Rank 22nd

Neutral

Week 16

@ KC

Rank 23rd

Neutral

Week 17

vs PHI

Rank 26th

Tough

FFT99 vs ADP

Every dot is a real position peer with a market price.

Christian KirkCONSENSUS ADP →FFT99 →

Deep research dossier

Evidence, history and model transparency

The decision dashboard ends above. Open only the research sections you need below—the full evidence remains available without overwhelming the player overview.

The call record

Claims written down before the season, sealed at registration, and graded in public — misses kept.

No pre-registered call was made on Christian Kirk. The record holds 29 calls in total, selected from the board by signal strength and divergence — most players do not clear that bar, and silence here means we did not stake a claim on him, not that he graded badly.

2025 production

What he actually did last season. Measured, not projected.

Games

11

PPR pts

57.9

Half-PPR pts

29.9

PPR / game

5.3

Receiving

Targets

52

Receptions

28

Rec yards

239

Rec TDs

1

Target share

9.4%

Air yards share

7.7%

WOPR

0.19

Rushing

Carries

0

Rush yards

0

Rush TDs

0

Yards / carry

Passing

Pass yards

0

Pass TDs

0

Interceptions

0

nflverse season totals for 2025, joined on normalised name and position (gsis 00-0034775). These are actuals — nothing here is modelled.

What the market says

Every ADP source we hold, side by side, and where our model sits against them.

Consensus ADP

279.0

Median

279.0

Sources ranking him

2/4

Agreement

High

SourceRank / ADP
Yahoo ADPunranked
Sleeper ADP275.0
RTSports ADP283.0
Fantasy Football Calculator ADP (live)unranked

The sources that ranked him disagree by 8.0 picks between highest and lowest (standard deviation 4.0).

Mean and median are computed across the sources that actually ranked him — an unranked source never enters the average, because a sentinel treated as a pick number would drag a real player hundreds of slots. Spread, deviation and agreement are null under two ranked sources rather than 0, since one source cannot agree with itself. The FFT model rank is our own output and is never folded in as if it were an outside source.

Week-to-week, 2025

Consistency and range — the part a season total hides.

Weeks with a line

11

PPR / game

5.3

Std dev

4.5

Coeff. of variation

0.86

Boom rate

0% (0/11)

Bust rate

82% (9/11)

Best week

16.4 wk 12

Worst week

0.7 wk 18

Recent form — last 4 games with a line

2.8 PPR per game over weeks 14, 16, 17, 18-2.5 against his season average.

Every week (11 lines)
WkOppPPRTgtRecYdsCarRuYdTDRZ
3JAX5.583250000
4TEN5.043200000
5BAL10.444640000
9DEN6.684260000
10JAX1.33130001
11TEN1.64160002
12BUF16.465540013
14KC1.63160000
16LV6.753370000
17LAC2.15210000
18IND0.721-30000

The weekly LINES are measured: 2025 game logs, joined on gsis id 00-0034775. Everything derived from them above — per-game, standard deviation, coefficient of variation, boom and bust rates, recent form — is computed by us and carries the FFT model (beta) label. It is not an observed stat.

This whole block is on the PPR scale, including the thresholds — the artifact publishes boom and bust in PPR (WR: boom ≥ 20, bust ≤ 8) and converting only the points would leave the rates measured against a different ruler than the one they were defined on. The hero above is half-PPR because that is what the model ranks on. Two rulers, each labelled, rather than one silently mixed. Rates need at least 4 games to carry weight; recent form is the last 4.

Advanced usage & efficiency

Route concepts, red-zone opportunity, and separation-adjusted catch rate.

Red-zone opportunity

Scoring upside

RZ targets

10

RZ carries

RZ TDs

3

aDOT

7.2

Concept EPA / target

-0.141

Classified targets

67

Catch residual

-15.623

YAC over expected

-0.21

Most-run concept: QUICK_OUT on 29.8% of his classified targets.

Every field is derived by FFT from openly-licensed nflverse play-by-play, or taken from the free public NFL Next Gen Stats endpoint. No licensed trial data (Sportradar, BALLDONTLIE) is included, which is why this file can be committed and shipped with the build. Red zone: Plays snapped inside the opponent 20-yard line. Red-zone usage measures opportunity; this repo’s own backtest shows it adds little on top of plain volume, so it is retained as context and is deliberately not described as an edge.

How the model gets there

The component projection behind the headline number, and what it was built from.

Projected games

4.6

Half-PPR (season)

17.9

PPR (season)

21.8

Confidence

low

Proj targets

13.3

Proj receptions

7.9

Proj rec yards

98

Proj rec TDs

0.6

Proj carries

0.4

Proj rush yards

2

Proj rush TDs

0.0

Proj pass yards

0

Proj pass TDs

0.0

Proj INTs

0.0

Touchdown regression

He actually scored 1 touchdowns last season. Against his measured opportunity the model expects a change of -0.3. The gap between what a player scored and what his opportunity implies is one of the four signals the edge engine reads.

What this projection was built from

11 g in 2025, 4.7 tgt/g, 49% snaps (regressed to the role, not the position), SWR5 on depth chart, age 30, new team SF

fft-projection-2.3.0-beta. The model reads measured production, opportunity and age, and reads no ADP field at any stage — so it can disagree with the market, which is the only reason a disagreement is worth anything. Draft capital was not resolved for this player, which the model treats as unknown rather than as undrafted.

What this page is standing on

Which sources answered for this player, and which did not.

  • Identity join: Resolved to gsis 00-0034775 via the 2025 nflverse season file. The weekly log and advanced splits are keyed on that id.
  • Market ADP: A bundled snapshot of platform ADP, not a live feed. Shown for comparison and never read by the projection model.
  • Headshot: Resolved from exact-name.
  • Vitals: Height, weight, college and jersey are read from nflverse and keyed on gsis id 00-0034775 — not on name. Name keying matches players to relatives who share one: "Marvin Harrison Jr." also matches his father's 1996 row, and whichever came first in the file would win.
  • Not shown: draft round and pick. The bundled player file carries them on roughly 48% of rows and populates them late, so a blank is equally consistent with a genuine undrafted free agent and with a first-rounder nobody has ingested yet. The model’s own three-state read is used instead, above.

Model run caveats

  • No usable red-zone RECEIVING fit for QB — receiving touchdowns at that position come from the shrunk per-target rate alone.
  • Rookie draft capital on this run: 82 drafted (projected from round/pick), 141 confirmed undrafted, 177 with capital UNKNOWN.
  • 177 of 400 rookie projections (44%) have NO KNOWN DRAFT CAPITAL because this draft class has not been ingested by any source the model can read. For those players the draft-capital path did not run: a first-round pick and a camp arm receive the same number, separated only by depth-chart order. Those projections are flagged `isPositionalFloor` and must be read as a floor for the role, not as a valuation of the player.

How the model works

Inputs, method, and the forbidden-inputs list. It reads no ADP at any stage.

Where it loses

Pre-registered calls, graded in public, misses kept on the page.

Model Rankings

Every player, with the model's BUY / FADE call against consensus ADP built into the board.