Skip to main content
Romeo Doubs headshot
Position: Wide receiverH Tier

Romeo Doubs

WR · NE · Bye 11

Age 266'2"210 lbs4 yr
FFT9974

Elite Profile

Calibrated public rating

RAW 68 · 100% cov

Projection

8.1

Half-PPR / game

Market ADP

142.0

Consensus overall

FFT fair value

116.1

Calibrated pick

Draft delta

+25.9

Market minus FFT

Draft recommendation

Target ahead of market

Risk / reliability

Low Risk

78
Risk: Low

Reliability

78 / 99

Coverage

80%

Live board

Today's Read

NO MARKET DATA

His route-concept mix is worth 0.49 EPA per target against a 0.05 league baseline. His most common concept is quick out at 27% of targets. He is used in higher-value ways than his target count alone suggests.

Model rank

Market

Confidence

medium

Full analysis

2026 week 2

Weekly Outlook

FFT · BDL · SLEEPER · MARKETS

Our projection

8.1

Weighted weekly consensus

BDL projection

8.8

BALLDONTLIE weekly

Sleeper projection

7.4

Sleeper weekly

Game status

Not reported

No injury description reported

Latest practice

Not reported

Game-day active

Active

Started

Yes

Participation

Played

Game market

Total · Spread

Implied team total · cross-book median

Live draft market

ADP 154.8 · Rostered 61.8%

BDL change +0.3%

BALLDONTLIE data checked 9/21/2026, 7:12:29 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.

Romeo Doubs · 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 Romeo Doubs yet.

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

FFT Newsroom

Latest news for Romeo Doubs

All reports

Position-relative

FFT99 Pillar Scores

Methodology

Opportunity

81

Strong

81

Top 9% at WR

Talent

61

Average

61

Top 34% at WR

Offensive Environment

54

Watch

54

Top 49% at WR

QB Play

76

Strong

76

Top 3% at WR

Fantasy Playoff Schedule

34

Watch

34

Top 75% at WR

Player Profile

Opportunity81
Talent61
Offensive Environment54
QB Play76
Fantasy Playoff Schedule34

Games

16

Half-PPR

110.4

Total TD

6

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

-5.7

proj. half-PPR pts

Rank Delta

+14

position spots vs ADP

Value Grade

A

Great Value

reachfair valuesteal

Market

142.0

FFT value

116.1

Board Δ

+25.9

Playoff Schedule

Week 15

@ KC

Rank 23rd

Neutral

Week 16

@ NYJ

Rank 17th

Neutral

Week 17

vs DEN

Rank 24th

Neutral

FFT99 vs ADP

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

Romeo DoubsCONSENSUS 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 record1 pre-registered

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

BUYregistered 2026-08-08 · medium confidence

His route-concept mix is worth 0.49 EPA per target against a 0.05 league baseline. His most common concept is quick out at 27% of targets. He is used in higher-value ways than his target count alone suggests.

Model rank

98

Market ADP

142.0

Divergence

43.9

Edge score

0.59

Every measured input behind this call

usage_qualitybullish

His route-concept mix is worth 0.49 EPA per target against a 0.05 league baseline. His most common concept is quick out at 27% of targets. He is used in higher-value ways than his target count alone suggests.

conceptEpaPerTarget
0.49
leagueBaseline
0.05
delta
0.44
topConceptShare
0.27

source: FFT route concepts derived from nflverse play-by-play

efficiencybullish

catches 4.4 points more often than his 12.81-yard target depth predicts. That is earned production rather than volume, and it tends to persist.

catchResidualPts
4.4
yacOverExpected
0.34
aDOT
12.81

source: NFL Next Gen Stats (depth-adjusted)

Registered 2026-08-08T06:38:11.545Z against a board computed 2026-08-08T06:33:00.114Z, under fft-projection-1.0.0-beta / fft-edges-1.0.0. Scored pool 615, of which 160 carried a market price and formed the comparable pool this call is relative to. Market source: Consensus of the Yahoo, Sleeper and RTSports ADP columns in the static dataset snapshot bundled with the app at registration time — a snapshot, not a live feed. The ADP recorded on each call is the price the market was charging when the call was made.. Selection: EVERY directional verdict the board produced at boardComputedAt — all 15 BUY and 14 FADE from a scored pool of 615 players, 160 of whom carried a market price. No filtering by conviction, position or confidence, so the record cannot be flattered by selection. Witness: git commit only — see docs/methodology.md

Grading happens after the season against the pool frozen at registration. See the full record, including the misses →

2025 production

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

Games

16

PPR pts

165.4

Half-PPR pts

110.4

PPR / game

10.3

Receiving

Targets

85

Receptions

55

Rec yards

724

Rec TDs

6

Target share

18.5%

Air yards share

25.3%

WOPR

0.45

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-0037816). 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

142.0

Median

127.0

Sources ranking him

3/4

Agreement

Low

SourceRank / ADP
Yahoo ADP186.0
Sleeper ADP113.0
RTSports ADP127.0
Fantasy Football Calculator ADP (live)unranked

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

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

16

PPR / game

10.3

Std dev

7.0

Coeff. of variation

0.68

Boom rate

6% (1/16)

Bust rate

31% (5/16)

Best week

29.8 wk 4

Worst week

0.0 wk 14

Recent form — last 4 games with a line

8.6 PPR per game over weeks 14, 15, 16, 17-1.8 against his season average.

Every week (16 lines)
WkOppPPRTgtRecYdsCarRuYdTDRZ
1DET8.842680002
2WAS11.853280011
3CLE4.522250000
4DAL29.886580033
6CIN10.595550001
7ARI13.286720000
8PIT9.463440000
9CAR16.1107910003
10PHI1.54150000
11NYG9.384530000
12MIN4.332230001
13DET12.044200013
14CHI0.02000000
15DEN5.632360001
16CHI19.465840012
17BAL9.233620000

The weekly LINES are measured: 2025 game logs, joined on gsis id 00-0037816. 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

20

RZ carries

RZ TDs

6

aDOT

12.8

Concept EPA / target

0.485

Classified targets

96

Catch residual

4.438

YAC over expected

0.34

Most-run concept: QUICK_OUT on 27.1% 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

14.3

Half-PPR (season)

116.3

PPR (season)

141.4

Confidence

medium

Proj targets

79.2

Proj receptions

50.4

Proj rec yards

640

Proj rec TDs

4.4

Proj carries

1.4

Proj rush yards

8

Proj rush TDs

0.1

Proj pass yards

0

Proj pass TDs

0.0

Proj INTs

0.0

Touchdown regression

He actually scored 6 touchdowns last season. Against his measured opportunity the model expects a change of -1.6. 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

16 g in 2025, 5.3 tgt/g, 78% snaps (regressed to the role, not the position), RWR2 on depth chart, age 26, new team NE, -1.6 TD vs 2025 on red-zone opportunity

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-0037816 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-0037816 — 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.