Set your lineup
Pick your Sunday Scaries team. Instant who-to-start calls.
Teams or news look stale — tap Refresh, then get advice again.
Updated {{ teamsFetchedLabel }}
{{ error }}
{{ advice.teamName }}
vs {{ advice.opponent }}
You
~{{ fmtScore(advice.projectedScore) }}
Opp
~{{ fmtScore(advice.opponentProjectedScore) }}
—
Updated {{ adviceFetchedLabel }}
FLEX call
{{ flexCallShort }}
{{ advice.flexAdvice }}
{{ flexCompareCard.left.name }}
~{{ fmtScore(flexCompareCard.left.proj) }} pts
{{ adviceBadge(flexCompareCard.left.advice) }}{{ flexCompareCard.right.name }}
~{{ fmtScore(flexCompareCard.right.proj) }} pts
{{ adviceBadge(flexCompareCard.right.advice) }}{{ flexCompareCard.note }}
{{ advice.swapPreview.note }}
Starters
{{ p.name }}
{{ p.team }}
{{ shortCallWhy(p) }}
Why?
~{{ fmtScore(p.proj) }}
pts
Roster loads when live ESPN or saved tips are available.
Compare
{{ c.label }}
{{ compareVerdictLine(c) }}
{{ c.left.name }}
~{{ fmtScore(c.left.proj) }} pts
{{ adviceBadge(c.left.advice) }}{{ c.right.name }}
~{{ fmtScore(c.right.proj) }} pts
{{ adviceBadge(c.right.advice) }}{{ c.left.name }}
{{ c.left.meta || '' }}
~{{ fmtScore(c.left.proj) }} pts
{{ adviceBadge(c.left.advice) }}{{ c.note }}
Swap
{{ (advice.swapPreview && advice.swapPreview.note) || 'Sit a starter · START a bench player · see the point change.' }}
Before
{{ fmtScore(advice.projectedScore) }}
After
{{ fmtScore(liveSwapTotal != null ? liveSwapTotal : (advice.swapPreview && advice.swapPreview.after)) }}
If you swap {{ swapStart }} in for {{ swapSit }}: team total becomes ~{{ fmtScore(liveSwapTotal) }} pts ({{ liveSwapDelta >= 0 ? '+' : '' }}{{ fmtScore(liveSwapDelta) }})
{{ swapToast }}
Bench
{{ p.name }}
{{ shortCallWhy(p) }}
Why?
~{{ fmtScore(p.proj) }}
pts
No bench listed yet.
IR
{{ p.name }}
{{ p.pos }} · {{ p.team }} · on IR (keep him here)
Answer
Why
Checking sources…
Why{{ askWhyData.ai && askWhyData.ai.used ? ' · AI' : '' }}
Sources only
{{ askWhyData.error }}
{{ askWhyData.why.summary }}
- {{ b }}
What could change the winner
{{ askWhyData.why.whatCouldChange }}
Sources
{{ s.origin || 'source' }}
{{ s.excerpt || s.title || '' }}
Queries
search query
{{ q }}
You
{{ advice.teamName }}
~{{ fmtScore(advice.projectedScore) }}
pts expected
Opp
{{ advice.opponent || 'TBD' }}
~{{ fmtScore(advice.opponentProjectedScore) }}
pts expected
{{ edgeLine }}
Thursday · can’t swap after kickoff
Heads up — {{ advice.thursdayNote }}
Player vs player
{{ row.mine?.name || '—' }}
{{ row.theirs?.name || '—' }}
Matchup slots appear when roster data is available.
You vs Them
Why you’re ahead
- {{ t }}
—
Why they’re ahead
- {{ t }}
—
What to watch
- {{ t }}
- {{ t }}
What could change the winner
Easy fixes before Sunday
Bottom line
{{ predictionLean }}
{{ analysis.joke }}
Bench · Injuries · News
Your bench
Their bench
Injuries
- {{ shortStatus(x.status) }} {{ x.name }} — {{ x.note || 'Watch the report.' }}
News
- {{ newsBadgeLabel(n) }}{{ typeof n === 'string' ? n : (n.text || n.note || '') }}
Answer
Why
Checking sources…
Why{{ askWhyData.ai && askWhyData.ai.used ? ' · AI' : '' }}
Sources only
{{ askWhyData.error }}
{{ askWhyData.why.summary }}
- {{ b }}
What could change the winner
{{ askWhyData.why.whatCouldChange }}
Sources
{{ s.origin || 'source' }}
{{ s.excerpt || s.title || '' }}
Queries
search query
{{ q }}
Recommended pickups
Waiver tip
{{ pickupSummary }}
{{ p.name }} · {{ p.pos }} · {{ p.team }}
{{ p.needed === false || p.priority === 'optional' ? 'Nice to have' : 'Worth a claim' }}~{{ Number(p.proj).toFixed(1) }} pts expected {{ Number(p.owned).toFixed(0) }}% rostered {{ shortStatus(p.status) }}
{{ p.why }}
vs lineup: {{ p.compareTo.note || ('Compare to ' + p.compareTo.name + (p.compareTo.proj != null ? ' (' + Number(p.compareTo.proj).toFixed(1) + ')' : '')) }}
Drop: {{ p.dropCandidate.name }} ({{ p.dropCandidate.pos }}) — {{ p.dropCandidate.note }}
You're fine — no pickup needed right now
{{ pickupSummary || 'Nothing on waivers clearly beats what you already roster at the same position. Skip spare quarterbacks and kickers when those spots are covered.' }}
Answer
Why
Checking sources…
Why{{ askWhyData.ai && askWhyData.ai.used ? ' · AI' : '' }}
Sources only
{{ askWhyData.error }}
{{ askWhyData.why.summary }}
- {{ b }}
What could change the winner
{{ askWhyData.why.whatCouldChange }}
Sources
{{ s.origin || 'source' }}
{{ s.excerpt || s.title || '' }}
Queries
search query
{{ q }}
Player compare
My player
{{ compareMy?.name || '—' }}
{{ compareMy.team }} · {{ compareMy.pos }} · {{ shortStatus(compareMy.status) }}
~{{ fmtScore(compareMy.proj) }} pts expected
Other
{{ compareOther?.name || '—' }}
{{ compareOther.team }} · {{ compareOther.pos }} · {{ shortStatus(compareOther.status) }}
~{{ fmtScore(compareOther.proj) }} pts expected
Summary
Live{{ compareResult.summary }}
- • {{ b }}
Coach pick
{{ compareBanner }}
Answer
Why
Checking sources…
Why{{ askWhyData.ai && askWhyData.ai.used ? ' · AI' : '' }}
Sources only
{{ askWhyData.error }}
{{ askWhyData.why.summary }}
- {{ b }}
What could change the winner
{{ askWhyData.why.whatCouldChange }}
Sources
{{ s.origin || 'source' }}
{{ s.excerpt || s.title || '' }}
Queries
search query
{{ q }}