Portfolio demo of the campaign's State of the Race brief. Results, money, signs, web and email figures are real; field figures are sample values.
Jen Fox for House · Minnesota House 41B · Election 3 Nov 2026
A visual read of the campaign's State of the Race brief, kept from 30 Sep through the 3 Nov result. Each chart carries the date of its own read. Everything below the Result section is the pre-election brief as it stood in late October. Nothing here is a forecast.
2024 was Dippel by 510. The margin moved 10.2 points, from −2.1 to +8.1. Hastings went from −581 to +513, Cottage Grove from +361 to +1,376, Denmark and Nininger from −290 to −182. Five precincts flipped: Cottage Grove P-7 and Hastings W-2 P-3, W-3 P-1, W-3 P-2 and W-4 P-2.
MN SOS precinct files, 3 Nov 2026, unofficial.
| Race | DFL votes | DFL margin |
|---|---|---|
| House 41B, Fox | 11,363 | +1,707 |
| US House, Little | 11,189 | +1,306 |
| Governor, Klobuchar | 11,070 | +1,284 |
| State Senate 41, Seeberger | 10,821 | +553 |
| US Senate, Flanagan | 10,446 | +319 |
Jen's margin was 2.1 points above Klobuchar's in 41B. She ran furthest ahead of the governor's margin in the most Republican precincts: Nininger +6.2 points, Denmark and Hastings W-1 P-2 +4.3, W-3 P-2 +4.1. In Cottage Grove she ran within a point or two of the governor, so the Cottage Grove swing was mostly the whole ticket moving.
Margins in points of the House vote. Signs: Delivered households in the sign app, placed in precincts by their coordinates against the SOS precinct map (524 inside 41B; 30 delivered rows have no coordinates).
| Precinct | Fox | Beck | Margin | Pts 2026 | Pts 2024 | Swing | Signs |
|---|---|---|---|---|---|---|---|
| Cottage Grove P-3 | 1,056 | 689 | +367 | +21.0 | +8.9 | +12.1 | 14 |
| Cottage Grove P-4 | 1,353 | 963 | +390 | +16.8 | +3.8 | +13.0 | 48 |
| Cottage Grove P-5 | 1,764 | 1,359 | +405 | +12.9 | +2.2 | +10.7 | 58 |
| Cottage Grove P-7 | 772 | 558 | +214 | +16.0 | −0.4 | +16.4 | 25 |
| Hastings W-1 P-1 | 694 | 561 | +133 | +10.6 | +2.3 | +8.3 | 34 |
| Hastings W-1 P-2 | 586 | 704 | −118 | −9.1 | −14.1 | +5.0 | 19 |
| Hastings W-2 P-2 | 635 | 543 | +92 | +7.8 | +0.4 | +7.4 | 19 |
| Hastings W-2 P-3 | 768 | 615 | +153 | +11.0 | −1.0 | +12.0 | 56 |
| Hastings W-3 P-1 | 748 | 645 | +103 | +7.4 | −4.2 | +11.6 | 48 |
| Hastings W-3 P-2 | 700 | 631 | +69 | +5.2 | −3.0 | +8.2 | 61 |
| Hastings W-4 P-1 | 862 | 937 | −75 | −4.2 | −9.7 | +5.5 | 85 |
| Hastings W-4 P-2 | 830 | 675 | +155 | +10.3 | −3.9 | +14.2 | 29 |
| Denmark Twp P-1 | 394 | 457 | −63 | −7.4 | −15.4 | +8.0 | 16 |
| Nininger Twp | 200 | 319 | −119 | −22.9 | −25.2 | +2.3 | 12 |
Hastings W-2 P-1 (Washington County, one vote) is left out. Sign households per 1,000 votes show no visible link to the swing across 14 precincts (correlation −0.18); the precincts with the most signs per vote are Hastings W-4 P-1 and W-3 P-2, and they swung less than average. Too few precincts to say more.
Everything below this section is the pre-election brief as it stood in late October, kept as the record.
Field figures in this section are sample values.
The campaign has knocked more doors than at this point in 2024 and is reaching voters at the same rate. The seat's history says that does not settle it.
Field counts are sample values. Margin from the Secretary of State; signs from the sign app and subscribers from Wix, read 1 Nov 2026.
Days left is counted from 2 Nov. Attempts count contacts tried, not distinct people. Supporter IDs are not a poll. Signs count households: 560 of them carry 578 signs.
Door attempts and conversations, 1 Jan to three days before each election. Sample values.
Doors only, so bulk email is left out of both years. The values are samples that keep the shape of the real comparison.
41B has no incumbent, both parties list it as a top target, and the Minnesota House has 67 DFL members, 66 Republicans and one vacancy (21A, vacant since 21 June 2026). Statewide polls narrowed in September.
Statewide polls, newest first. Percent of respondents. Checked against pollster releases.
LV is likely voters, RV is registered voters. TIPP appears twice because both of its figures circulate: 47 to 37 is its registered-voter cut and 50 to 40 its likely-voter cut. InsiderAdvantage asked no governor question. RealClearPolitics average on 30 Sep: DFL +8.0.
Statewide polls, newest first. Percent of respondents.
Quantus and Deep Root (a Republican firm) were not checked against a release and rest on aggregators and news reports. RealClearPolitics average on 30 Sep: DFL +1.6, rated Toss Up then (all three raters had it at Lean D by late October). No public poll of 41B exists. In 2022 and 2024 the DFL ran 2.4 to 3.2 points worse in 41B than statewide at the top of the ticket.
Spenders' pre-general reports, 1 Jan to 19 Oct 2026, read 27 Oct. Dollars spent for and against each candidate.
Sums of the independent expenditure lines in each spender's own report. HRCC files its anti-Fox lines under an old Fox committee id (15594), which is why the board's by-candidate page showed nothing against her. For Fox includes $13,213 from three spenders not re-read since 15 Sep. Beck also has $41,295 of HRCC TV and cable reported as coordinated spending, not as independent expenditures. Every 41B voter is inside SD41.
Two forums, no rebuttals in either, and no direct attack between Fox and Beck in either. Water was the shared top issue in Hastings.
YouTube view counts read the morning of 1 Oct 2026.
The LWV forum ran 59 minutes with all six SD41, 41A and 41B candidates. The Hastings forum ran 58 minutes, 41B then SD41, five questions each.
Hastings forum recording, 30 Sep, minutes from start. Segment times from the machine transcript.
Timestamps are approximate. The LWV forum was 15 Sep, the Hastings Chamber and AAUW forum 30 Sep. In the SD41 segment Seeberger said Dippel "won't even give me his phone number" and refused to sign the jackets on her Hastings bonding bill. Dippel called that "a baseless attack" and ran the affordability case against her as "the deciding vote" on car tab fees, a gas tax increase, mandates and paid family leave.
Coded for this brief from the doc's LWV table and the auto-caption transcript. Solid chips are the eight tracked themes. Dashed chips are other topics.
The coding is this brief's, not a figure in the doc. An answer counts toward a theme when the candidate makes a point about it or names it as a priority. A passing word does not count. The closing row comes from the transcript only. Fox's opening is counted for affordability on her transcript lines about working families and affordable water and health care; the doc's own summary of that answer lists water, education and health care. The transcript is YouTube auto-captions and garbles names, so quotes should be checked against the video before use.
Coded for this brief from the doc's Hastings table and the Whisper transcript. 41B segment 14:36 to 29:49.
Same coding rule as above. The transcript is a machine transcript with approximate timestamps and machine-spelled names.
Count of answers that raised each theme, out of 17 answers per candidate (10 at LWV, 7 in Hastings).
A count from this brief's coding of the two grids above, not a figure in the doc. One answer can count toward several themes. Beck's lightning-round word "accountability" is not counted as fraud. Guns, immigration and elections each came up once because the LWV moderator asked about them.
The Republican margin on this turf fell from 21 points in 2014 to about 2 points in 2018, 2022 and 2024. It has not crossed zero.
Republican margin in the House race, percentage points, 2012 to 2024. Secretary of State files; 2012 and 2014 from the University of Minnesota election archive.
2012 to 2020 are House District 54B, which had different lines (it included Afton and a different set of Cottage Grove precincts), drawn lighter. Compare the trend, not the raw votes. 2012 and 2014 were not checked against Secretary of State files. The 2024 certified margin was 510 votes: Dippel 12,529, Fox 12,019.
2024 House 41B result by area, votes. Secretary of State precinct files.
The rest of the district is the nine Hastings precincts plus Nininger and Denmark townships. Its vote totals are derived by subtraction from the district totals (12,019 and 12,529); the doc states the 361 and 871 margins directly.
Statewide DFL candidates have carried 41B in both cycles on these lines while the DFL House candidate lost. The House share barely moved when the top of the ticket did.
Vote share inside 41B by race, percent. Sums of the 15 precincts, Secretary of State precinct files.
House rows are highlighted. DFL House two-way share was 48.91% in 2022 and 48.96% in 2024 while the top of the ticket moved from 49.89% (2022 governor's race) to 47.96% (2024 presidential race). This brief now uses two-way shares, as elsewhere in this brief; as shares of all House votes including write-ins the figures are 48.86% and 48.87%, and an earlier version had those two swapped. Two cycles is a thin basis. The 2024 Senate race had a weak Republican nominee, so its 2024 margin in 41B says little about 2026.
The last governor-year electorate in 41B was 19,403 voters, 5,841 fewer than in 2024.
Total voting in 41B, 2022 and 2024, with the doc's 2026 estimate. Secretary of State turnout statistics.
The 2026 bar is an estimate: each precinct's 2022 turnout rate applied to its 1 Jun 2026 registration. It is a floor for Cottage Grove, where registration is still growing. At that volume 50% of the two-way House vote is roughly 10,400 to 10,450 votes, also an estimate. The doc gives no 41B turnout total for 2018, so 2018 is not drawn.
2022 turnout as a share of 7 a.m. registration.
In 2024 the two were within a point of each other. On June registration, a 4.2 point gap is about 510 Cottage Grove voters.
Party ballots cast in 41B, August primaries in governor years.
Total participation only. Party share is not shown because which party had the contested primary flipped between the two years. Registration grew faster than this over the same span, so the doc reads neither the total nor the party split as a signal for November.
On 19 Oct Fox held about five times Beck's cash. Outside groups have reported $61,135 against Fox, nearly all of it HRCC mail, radio and digital, filed under an old Fox committee id so the board's by-candidate page does not show it. Spending against Beck is larger, $224,372.
Candidate committees, 1 Jan to 19 Oct 2026, dollars. Pre-general reports, read 27 Oct (Beck as amended 23 Oct).
Raised and spent include in-kind: Fox $569, Beck $41,603, almost all of it HRCC's TV and cable for him ($40,020 on 5 Oct), which HRCC reports as approved spending for Beck. The dashed lines are the two-year spending limits on the board's pages (Fox $84,200, Beck $92,620 as a first-time candidate), drawn against campaign spending only: under Minn. Stat. 10A.25 the limit covers campaign and approved expenditures, not noncampaign disbursements (Fox $3,787) or contributions to party units (Fox $5,000). Counting the $31.25 of 2025 campaign spending from the 2025 year-end report, Fox had $14,531 of room on 19 Oct. Public subsidy: Fox $7,674.62, Beck $6,427.83. No more full reports are due before Election Day; contributions over $500 show up as next-day notices (Beck filed one, $1,000 from a Republican senate district unit, on 21 Oct).
Independent expenditures in 41B through 15 Sep of each cycle, dollars, by side.
DFL side means spending for the DFL candidate plus spending against the Republican. Itemized rows over $200 only. The 2026 Republican side now includes three HRCC mailers against Fox ($11,883) that the 15 Sep file missed because HRCC filed them under an old Fox committee id; the 2024 figures may have the same gap (HRCC used that id for $145,254 against Fox in 2024) and were not re-checked.
Independent expenditures in 41B, full year, dollars, by side.
Of the 2024 Republican-side spenders (Make Liberty Win, Pro Jobs Majority, MN Jobs Coalition, Renew Minnesota, Americans for Prosperity Action), only Renew Minnesota had reported 41B spending by 19 Oct ($2,400 against Fox). The MN Jobs Coalition fund began Meta ads naming Fox on 24 Oct, after the report period. HRCC is this year's main Republican-side spender in 41B.
Independent expenditures by spender through 19 Oct 2026, dollars, from each spender's pre-general report.
HRCC reports every anti-Fox line under "Registered Id 15594", an old Fox committee id, so the board's page for Fox (19059) shows none of it; through 15 Sep it was $11,883, through 19 Oct $58,735. Three small pro-Fox spenders (DFL State Central, MN AFL-CIO, AFSCME) were not re-read and keep their 15 Sep amounts. The Minnesota Jobs Coalition fund had not posted its report on the morning of 27 Oct.
Field figures in this section are sample values.
About 44,000 attempts and 10,000 conversations this year. Through 30 Sep the conversation rate matched 2024 once 2024's bulk emails are set aside.
Attempts by contact type, 1 Jan to 30 Sep of each year. Sample values.
The field tool counts every bulk email as a conversation, which lifts the 2024 rate from about 22% to 30%. Set aside, the door rate is about the same in both years. No text messages are shown in either year.
Attempts by month, all contact types, with conversations in the label. 2024 doors are split out for September to November. Sample values.
The 2024 all-types figures carry bulk emails. Nobody knocked in the final five days of 2024: every attempt in those days was bulk email or other non-door contact.
Attempts by week, 31 Aug to 31 Oct 2026. Doors and phones. Sample values.
Phones are all contact types minus doors. Conversations are in the label under each week.
Share of 2026 attempts by the top canvassers, 1 Jan to 30 Sep. Sample values.
Shares of all contact types. No canvasser is named.
2026 attempts and conversations by county, all contact types, 1 Jan to 31 Oct. Sample values.
Dakota is Hastings and Nininger. Washington is Cottage Grove and Denmark.
Early vote in 41B, count of people. Sample values.
For scale, 41B cast 5,126 early ballots in all of 2022 and 10,819 in 2024 (Secretary of State). Ballots overtook applications after in-person early voting widened on 16 Oct.
Early vote by place, 2 Nov. Applications and ballots cast. Sample values.
The Hastings and Nininger row is Dakota County. Denmark Township is Washington County minus Cottage Grove.
2 Nov, count of people, against each precinct's 2022 early ballots and 2022 turnout. Fox 2024 and 2022 early are from the Secretary of State; the other columns are sample values.
By mail is ballots cast minus in-person early votes. Ballots out is an application with no ballot back. Hastings W-2 P-1 (one voter) is in the district row only.
Where each 41B precinct votes on Tue 3 Nov, 7 am to 8 pm.
All eight Hastings precincts vote where they did in 2024. Cottage Grove, Nininger and Denmark were read for 2026 only; no published 2024 list was found to compare. Early voting at Hastings City Hall runs to Mon 2 Nov, with longer hours Tue 27 Oct (8 am to 7 pm), Sat 31 Oct and Sun 1 Nov (9 am to 3 pm) and Mon 2 Nov (8 am to 5 pm), per the city's elections page.
560 households have a sign as of 26 Oct, carrying 578 signs, and one request is open. By precinct, Cottage Grove holds 145 of the 524 delivered households inside 41B (27.7%, up from 23.5% on 30 Sep).
Delivered households inside 41B by precinct, 26 Oct, ordered by count. Sign app coordinates tested against the SOS precinct polygons of 18 Sep 2026.
524 of 560 delivered households map inside 41B. 30 have no coordinates and 6 sit outside the district; both are left out. Hastings W-2 P-1, a one-voter sliver, has none. Counts are households; those 524 households hold 541 signs. By the city field in the sign app, 391 delivered households are in Hastings, 153 in Cottage Grove, 13 in Denmark Township and 3 have no city.
Sign app, delivered households on nine dates.
237 older deliveries carry no date because they came from the earlier tracker. On 13 Oct the app read 511 delivered and 46 to deliver (43 in Hastings, 3 rural), and Cottage Grove was 149 of the 511 (29%). No requests were open beyond the one shown on 26 Oct.
Website traffic tripled on 16 Sep, the day paid ads started, and fell back through the first half of October. The week of 19 Oct was up 30% (402 sessions against 310), the best week since late September, with no newsletter on its two biggest days. The site still produces almost no form signups. The email list is small, steady and well read.
jenfoxforhouse.com daily sessions, 1 Aug to 31 Oct 2026 (Chicago time). Wix Analytics API, daily file in the project folder, read 1 Nov.
Meta ads and Simpli.fi display first appear on 16 Sep, Google Ads search on 20 Sep. Window averages: August 24 a day, 1 to 15 Sep 25, 16 to 30 Sep 78, 1 to 4 Oct 54 (four days). 2, 3 and 4 Oct are the three lowest days since 15 Sep. The campaign's Meta ad that started 16 Sep ended 29 Sep, and its 30 Sep replacement showed no spend when the Ad Library was read on 1 Oct. 30 Sep reads 104 on 5 Oct and read 102 on the day. Who runs the Simpli.fi and Google Ads buys is not known. 6 to 12 Oct: 273 sessions, 39 a day, the second straight down week (468 the week before, 631 the week of 22 Sep). 12 Oct, the Issue 7 send day, was the lowest day since 15 Sep. No ad appears to be running. Zero Wix form submissions for four weeks. 19 to 25 Oct: 402 sessions and 362 visitors, zero form submissions; 21 and 22 Oct (79 and 77) were the busiest days since 1 Oct; 21 Oct was the Stephenson knock and the day Everytown endorsed. The last Wix form submission was 27 Sep. 25 to 31 Oct: 375 sessions and 336 visitors, one form submission (27 Oct).
Sessions by source, 16 to 30 Sep. Wix traffic model.
The traffic model's totals run 1 to 2% below site analytics (1,152 against 1,167). Direct sessions bounce at 84%, are 86% first-time visitors and 65% mobile, with a city mix led by Minneapolis and St. Paul. One form submission was recorded since 16 Sep across 1,167 sessions. The volunteer form runs on a separate system and is not counted.
41B Weekly and other sends, opens as a share of delivered. Wix email statistics, read 1 Nov.
Issue 6 (5 Oct) finished at 66% with 11 clicks, the best open and click counts of any numbered issue. The two "Jen in the news" sends (20 and 30 Oct) reached 63% and 58% with 8 clicks each. 130 contacts are subscribed on 1 Nov, against 128 on 31 Aug. Wix does not report unsubscribes per send. Sends before 18 Oct are as read on 26 and 27 Oct.
Meta Ad Library impression ranges, read 1 Oct. Thousands of impressions, low to high end of the published range.
The library publishes ranges, not exact counts. The Fox ad ran 16 to 29 Sep on $1,000 to $1,500 with an estimated audience of 50,000 to 100,000; a second ad started 30 Sep with no spend shown yet. Audience targeting is not shown in the public view. Beck's page has never run a Meta ad. Beck's Facebook page shows "1K followers" (rounded) against 748 for Jen Fox for House.
Absentee voting has been open since 18 Sep. The next public data on money arrives eight days before the election.
Dated events from the doc's calendar, 1 Oct to 3 Nov 2026. One cell per day.
The 16 Oct date is the early in-person voting date published on the campaign's vote page. The 6 and 7 Oct entries were added from the 5 Oct calendar read.
Six items, each tied to public or campaign numbers above. These are findings and open questions, not advice.
The public and campaign sources behind the figures on this page.