Call
the Map
Forecast6 days out
← HouseNovember 3, 2026

NY-15 · U.S. House

Ritchie Torres is almost certain to hold New York’s 15th congressional district. Predicted margin: D+56.3.

Ritchie Torres incumbent (D)>99 in 10077.572.2–82.8
Stylo Sapaskis (R)<1 in 10021.215.9–26.5

Under each share, its likely range (80 in 100 simulations) · * incumbent

Solid DDemocratic-held seat

Forecast history

Steady0.0 pts · Oct 26 → Oct 28NY-15 U.S. House: steady — the published margin moved 0.0 points between the Oct 26 and Oct 28 editions (3 of 47 stored editions). This is movement of the published forecast between editions.
D+60D+55Aug 1Nov 3 · Election Day

Latest reading · Oct 28 · first published Sep 9 · 80% range · margin points D+45.7 to D+66.9. Methodology

 

About this series

Reconstructed with the current model Aug 1 – Sep 8 and Sep 16 – Sep 18; published readings Sep 9 – Oct 28. Each reconstructed day is the current model on that day’s own inputs, not a forecast published then. Corrections are dated in the changelog.

Faded: CTMM 2.2 reconstructed history: computed after the fact with each date's available polls and environment, without expert ratings; not an issued forecast. Issued forecasts begin at the launch marker.

CTMM 2.2 readings for 2026-09-16, 2026-09-17, 2026-09-18 were computed after the fact with each day's available inputs: no edition was issued on those days. Not an issued forecast.

Data table
DateMarginChance80% rangeReading
Oct 28D+56.3D win >99.9%D+45.7 to D+66.9Published forecast
Oct 27D+56.3D win >99.9%D+45.7 to D+66.9Published forecast
Oct 26D+56.3D win >99.9%D+45.7 to D+66.9Published forecast
Oct 25D+56.3D win >99.9%D+45.6 to D+66.9Published forecast
Oct 24D+56.3D win >99.9%D+45.6 to D+66.9Published forecast
Oct 23D+56.2D win >99.9%D+45.6 to D+66.8Published forecast
Oct 22D+56.2D win >99.9%D+45.6 to D+66.8Published forecast
Oct 21D+56.2D win >99.9%D+45.6 to D+66.9Published forecast
Oct 20D+56.2D win >99.9%D+45.5 to D+66.8Published forecast
Oct 19D+56.1D win >99.9%D+45.5 to D+66.8Published forecast
Oct 18D+56.1D win >99.9%D+45.5 to D+66.8Published forecast
Oct 17D+56.1D win >99.9%D+45.5 to D+66.8Published forecast
Oct 16D+56.1D win >99.9%D+45.4 to D+66.7Published forecast
Oct 15D+56.0D win >99.9%D+45.4 to D+66.7Published forecast
Oct 14D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 13D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 12D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 11D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 10D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 9D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 8D+56.0D win >99.9%D+45.3 to D+66.7Published forecast
Oct 7D+56.0D win >99.9%D+45.2 to D+66.7Published forecast
Oct 6D+55.9D win >99.9%D+45.2 to D+66.6Published forecast
Oct 5D+55.8D win >99.9%D+45.1 to D+66.6Published forecast
Oct 4D+55.9D win >99.9%D+45.1 to D+66.6Published forecast
Oct 3D+55.8D win >99.9%D+45.1 to D+66.6Published forecast
Oct 2D+55.8D win >99.9%D+45.1 to D+66.6Published forecast
Oct 1D+55.8D win >99.9%D+45.1 to D+66.6Published forecast
Sep 30D+55.8D win >99.9%D+45.1 to D+66.6Published forecast
Sep 29D+55.8D win >99.9%D+45.1 to D+66.6Published forecast
Sep 28D+55.8D win >99.9%D+45.0 to D+66.6Published forecast
Sep 27D+55.8D win >99.9%D+45.0 to D+66.6Published forecast
Sep 26D+55.8D win >99.9%D+45.0 to D+66.6Published forecast
Sep 25D+55.8D win >99.9%D+45.0 to D+66.6Published forecast
Sep 24D+55.7D win >99.9%D+45.0 to D+66.5Published forecast
Sep 23D+55.7D win >99.9%D+44.9 to D+66.5Published forecast
Sep 22D+55.7D win >99.9%D+44.9 to D+66.5Published forecast
Sep 21D+55.7D win >99.9%D+44.9 to D+66.5Published forecast
Sep 20D+55.7D win >99.9%D+44.9 to D+66.5Published forecast
Sep 19D+55.7D win >99.9%D+44.8 to D+66.5Published forecast
Sep 18D+55.7D win >99.9%D+44.9 to D+66.6Reconstructed with the stated inputs
Sep 17D+55.7D win >99.9%D+44.9 to D+66.6Reconstructed with the stated inputs
Sep 16D+55.7D win >99.9%D+44.8 to D+66.5Reconstructed with the stated inputs
Sep 15D+55.5D win >99.9%D+44.7 to D+66.3Published forecast
Sep 14D+55.6D win >99.9%D+44.7 to D+66.4Published forecast
Sep 13D+55.6D win >99.9%D+44.7 to D+66.4Published forecast
Sep 12D+55.5D win >99.9%D+44.7 to D+66.4Published forecast
Sep 11D+55.5D win >99.9%D+44.6 to D+66.4Published forecast
Sep 10D+55.4D win >99.9%D+44.6 to D+66.3Published forecast
Sep 9D+55.4D win >99.9%D+44.5 to D+66.3Published forecast
Sep 8D+55.4D win >99.9%D+44.5 to D+66.2Reconstructed with the stated inputs
Sep 7D+55.3D win >99.9%D+44.4 to D+66.2Reconstructed with the stated inputs
Sep 6D+55.3D win >99.9%D+44.4 to D+66.2Reconstructed with the stated inputs
Sep 5D+55.3D win >99.9%D+44.4 to D+66.2Reconstructed with the stated inputs
Sep 4D+56.6D win >99.9%D+45.6 to D+67.7Reconstructed with the stated inputs
Sep 3D+56.6D win >99.9%D+45.6 to D+67.7Reconstructed with the stated inputs
Sep 2D+56.6D win >99.9%D+45.6 to D+67.7Reconstructed with the stated inputs
Sep 1D+56.6D win >99.9%D+45.6 to D+67.7Reconstructed with the stated inputs
Aug 31D+56.7D win >99.9%D+45.6 to D+67.7Reconstructed with the stated inputs
Aug 30D+56.6D win >99.9%D+45.5 to D+67.7Reconstructed with the stated inputs
Aug 29D+56.7D win >99.9%D+45.6 to D+67.8Reconstructed with the stated inputs
Aug 28D+56.6D win >99.9%D+45.5 to D+67.7Reconstructed with the stated inputs
Aug 27D+56.6D win >99.9%D+45.5 to D+67.8Reconstructed with the stated inputs
Aug 26D+56.6D win >99.9%D+45.5 to D+67.7Reconstructed with the stated inputs
Aug 25D+56.6D win >99.9%D+45.5 to D+67.7Reconstructed with the stated inputs
Aug 24D+56.6D win >99.9%D+45.5 to D+67.7Reconstructed with the stated inputs
Aug 23D+56.6D win >99.9%D+45.5 to D+67.8Reconstructed with the stated inputs
Aug 22D+56.6D win >99.9%D+45.5 to D+67.8Reconstructed with the stated inputs
Aug 21D+56.6D win >99.9%D+45.4 to D+67.7Reconstructed with the stated inputs
Aug 20D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 19D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 18D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 17D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 16D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 15D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 14D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 13D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 12D+56.6D win >99.9%D+45.4 to D+67.8Reconstructed with the stated inputs
Aug 11D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 10D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 9D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 8D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 7D+56.6D win >99.9%D+45.3 to D+67.8Reconstructed with the stated inputs
Aug 6D+56.5D win >99.9%D+45.2 to D+67.7Reconstructed with the stated inputs
Aug 5D+56.5D win >99.9%D+45.2 to D+67.7Reconstructed with the stated inputs
Aug 4D+56.5D win >99.9%D+45.2 to D+67.7Reconstructed with the stated inputs
Aug 3D+56.5D win >99.9%D+45.2 to D+67.7Reconstructed with the stated inputs
Aug 2D+56.4D win >99.9%D+45.2 to D+67.7Reconstructed with the stated inputs
Aug 1D+56.5D win >99.9%D+45.2 to D+67.8Reconstructed with the stated inputs

How the margin was built

Tap an input for its calculation and source.

Toward D+57.0
Toward R−0.7
Forecast marginD+56.3

Displayed values are rounded.

All calculations & sources

This district's measured terrain +48.753 points

Call the Map's partisan lean on the CURRENT district lines, before any current-cycle evidence. Every pull below is measured from here — not from EVEN.

  • Call the Map partisan lean, district geography bound to this forecast edition.
  • Prior source: observed_unchanged_lines.

Fitted model, above the terrain shown +6.152 points

What the fitted model adds on top of the starting terrain above — incumbency, past results, campaign finance and the other fitted terms — measured from that terrain rather than from EVEN. It is a comparison with the starting point already shown, not a separate input. The source detail lists the variables the fit uses.

  • Fitted baseline 54.905 minus starting point 48.753 = 6.152 points.
  • One fitted structural total; this edition does not split it into partisan lean and incumbency.
  • Fundamentals: +54.9 — the district's structural lean before this year's polling, money and candidate quality are added.
  • This edition publishes that as one fitted total. It does not break it into a partisan-lean and an incumbency term, so this page does not invent that split.
  • fundamentals core = 25-term dynamic formula (mass fit over the master feature matrix, held-out-cycle validated; see matrix/feature_dictionary.md + mass_fit_report.json)
  • 40-term formula, held-out validated.

National environment +2.071 points

The contribution to this race’s margin, not the national polling margin itself. The race’s loading, reference level and polling blend determine how much of the national climate reaches its final forecast.

  • Three-source blend, updated 2026-10-14: 53% generic-ballot aggregates (D+7.7) · 28% special-election overperformance (D+9.0 across 46 specials) · 20% approval-implied (D+9.1 from net approval -24.3).
  • Latest polls — generic ballot 2026-10-14 (14 days old), approval 2026-10-14 (14 days old).
  • Generic-ballot average D+7.7 · support factor 0.87 (the share of that channel's capacity the admitted polls carry) — separate inputs; their product is a capacity diagnostic, not a margin.
  • Weights are the 55/25/20 capacities scaled by each channel's evidence and renormalized, so thin polling widens the interval instead of pulling the center toward zero — 12% of the weight is carried that way.
  • Blended national environment: D+8.3.
  • Applied at full strength to this chamber's races.
  • This step’s recorded contribution to the margin is +2.1.
  • Blended national environment: D+8.3 (updated 2026-10-14).
  • Effective poll weight 88%; fundamentals share 12%, carried by the interval (×1.06) rather than by the center.
  • The support factor is the share of the generic-ballot capacity the admitted polls carry; average × support is a capacity diagnostic, not a margin, and is not what the row above multiplies.
  • Applied at full strength to this chamber: +2.1 of this margin.

Votes for other candidates −0.709 points

Every step above is measured between the two major-party candidates alone, as if nobody else were on the ballot. The forecast sets 1.2% of the vote aside for other candidates and write-ins, so as a share of every vote cast the gap between the two is smaller by that much. This step is exactly that: the two-party margin times the share going to other candidates. It is the same arithmetic that turns the two-party margin into the two shares printed at the top of the page.

The components this edition publishes for this race, in points. “Other factors” closes the sum to the two-party structural lean exactly. The margin the page prints is a share of every vote cast, so the “Votes for other candidates” row carries the exact difference between the two-party lean and that margin; with it, the walk sums to the printed margin exactly.

Named factorContribution
FundamentalsThe admitted fitted baseline. Its surviving variables differ by office; the source detail above identifies those used for this race.+54.90
National environmentThe national environment’s contribution to the prior. Polling can attenuate its influence; this value is not the national polling margin.+2.07
Other factors0.00

Where the votes are

The map of this race loads here.

Recent elections

ElectionResultVotes cast
2024 · U.S. House ↗D+60.1171,095
2022 · U.S. House ↗D+65.6101,732
2020 · U.S. House ↗D+79.9200,205
2018 · U.S. House ↗D+92.8129,751

Historical district boundaries may differ. Margins are between the Democratic and Republican ballot lines. This state counts a candidate’s votes on other parties’ lines separately, and those are not on file.

The money

The tick marks cash on hand. A missing filing stays blank rather than becoming $0.

One more fundraising reportCall the Map · $325

The candidates are comfortably out-fundraising the website covering them. A little rude, perhaps, but statistically unsurprising.

Received so far
$325
Measured compute
$26,188.58

Ko-fi and Buy Me a Coffee supports are counted as each one arrives. Measured compute prices model runs at standard published API rates; it is not what I paid. Hosting, data and subscriptions, the domain and my own time are not counted. Donations buy gratitude, never a forecast adjustment.

Supporters are listed by first name and last initial; a username alone is shortened to its first eight characters. Want your full name shown? Say so in your message. Give privately, or leave the name blank, and you are listed as Anonymous, with the platform and date. Supporters who give a name may also be thanked by name in the newsletter.

Thank you to Tom H., ColoradoFlyer, Chris, EW, gbaileym…, True Independent, MT V., JBL, Erin G., Caroline M., Melanie, MKV and 7 more.

See the public support ledger →

Outside spending

Separate from what the campaigns raised

For and against Ritchie Torres$3.8M

5 spending groups
GroupForAgainst
Protect Progress$1.4M$0
THINK BIG$1.2M$0
Equality PAC$612K$0
FELLOWSHIP PAC$300K$0
FIGHTING FOR NEW YORK. INC.$300K$0

Includes primary spending. Opposition is recorded against its named target; no benefit to another candidate is assumed.

No filing matched: Stylo Sapaskis.

FEC filings · through 06/30/2026 · Definitions & method

Race context

2024 presidential vote here
186,840
2024 presidential margin
D+48.8between the two parties

Population profile

White alone · 18.6%142,006 of 764,377 · Residents2022 Census · matched race geography

Forecast as of October 28, 2026: Call the Map currently has Ritchie Torres ahead of Stylo Sapaskis by D+56.3, with a >99 in 100 chance to win. The seat is currently held by a Democrat. That result would keep the seat with Democrats. No current nominee-matched poll average is available, so the forecast is leaning on the non-polling evidence shown below.