Methodology

The DSA Alignment Index measures how often a legislator voted with the position of the Democratic Socialists of America (DSA), the largest socialist organization in the United States. Every figure on this site comes from official New Hampshire roll call records. Nothing is estimated, weighted or entered by hand.

The short version

We took 11 planks from the DSA political program, found the 41 New Hampshire roll calls that decide them, and counted how each of the 406 sitting legislators voted. House Democrats voted the DSA way 99.1% of the time. Senate Democrats, 100%. Every vote is published below with its bill number, motion, date and full tally, so you can check any of it against the official legislative journal.

The formula

score = aligned votes ÷ (aligned + opposed votes) × 100
  • Absences, “present” votes, and the presiding officer’s non-vote are excluded from the denominator. No one is penalized for missing a vote.
  • A legislator must have cast a recorded Yea or Nay on at least 60% of their chamber’s scored votes. Below that they are shown as “Insufficient voting record” with no score and no label. 23 sitting members currently fall here, in both parties. Most were seated after some of these votes were taken.
  • Every roll call is weighted equally. We used only decisive votes: passage, conference report adoption, veto override, and motions to kill, table or shelve a bill. The 2025 budget alone had 29 recorded House votes, almost all procedural floor amendments. Including them would have let one bill swamp the other 10 issue areas, so they were left out.
  • The House and Senate are scored separately. The two chambers did not vote on the same bills: representatives are scored on 29 roll calls, senators on 12. Senators have no score at all on Raise Taxes to Expand Government, A New Tax on Batteries, Green New Deal Energy Mandates, Force Workers Into Unions, Government Control of Rental Property and Government-Mandated Wages because no Senate roll call exists on those bills. Scores are comparable within a chamber, not across chambers.

Why the line is at 80%

Because that is where the gap is. Legislators do not spread evenly across the range. They cluster hard at both ends. No sitting legislator scores between 65.2% and 88.9%, a 23.7-point band with nobody in it. The 80% threshold sits inside that empty range, so it cannot have been drawn to include or exclude any particular member. Move the line anywhere in the gap and exactly the same 166 legislators are labelled.

Score distribution, all scored legislators
0-9%124
10-19%63
20-29%22
30-39%3
40-49%2
50-59%2
60-69%1
70-79%0
80-89%2
90-100%164

Red bars are at or above the 80% threshold. The nearest member below the line scores 65.2%; the nearest above scores 88.9%.

For reference: the highest-scoring Republican is Matthew Coker at 53.8%, and the lowest-scoring Democrat with a sufficient record is David Nagel at 65.2%.

Party averages

Averaged over votes, not members: total aligned votes divided by total counted votes for the group. Averaging over members would let someone who cast two votes move the number as much as someone who cast all 41. Members below the participation floor are excluded.

GroupMembersDSA PreferredAverage alignment
House Democrats15915899.1%
House Republicans200010.1%
House, all members35915849.5%
Senate Democrats88100%
Senate Republicans1503.4%
Senate, all members23836.3%

The issues, and where each comes from

Each issue area is tied to a named plank of the Democratic Socialists of America political program, quoted directly, so the “DSA position” on each bill is not our assertion.

How the match is made. The DSA program is a national platform, so it names no New Hampshire bill. We identified the state roll call that decides each plank. The minimum wage bill for the living wage plank, the 287(g) bills for Abolish ICE, and so on. Every one of those choices is listed below and on the votes page, with the full tally, so you can inspect the selection yourself.

Raise Taxes to Expand Government

Tax businesses and the wealthy as hard as the law allows, and treat every tax cut as money stolen from the state.

Drawn from the Economic Democracy section of the DSA political program.

HB 155, HB 502 · 3 roll calls
Abolish ICE and Shield Illegal Immigration

Abolish ICE, end deportations, and grant amnesty to everyone who crossed the border illegally. No state or local police may help enforce federal immigration law.

Drawn from the Abolish ICE section of the DSA political program.

HB 511, SB 71, SB 62, HB 1570, HB 1822, SB 623 · 10 roll calls
Grow the State Budget

Reject any budget that restrains government. More spending is the goal, and no amount is ever enough.

Drawn from the Economic Democracy section of the DSA political program.

HB 2 · 4 roll calls
A New Tax on Paint

Put a government fee on everyday goods to punish the products bureaucrats disapprove of.

Drawn from the Green New Deal section of the DSA political program.

HB 451 · 2 roll calls
A New Tax on Batteries

Another state-mandated fee on an everyday product, collected and administered by a new government program.

Drawn from the Green New Deal section of the DSA political program.

HB 1602 · 4 roll calls
Green New Deal Energy Mandates

Phase out fossil fuels, build a permanent climate bureaucracy, and bill ratepayers for it.

Drawn from the Green New Deal section of the DSA political program.

HB 106, HB 526, HB 1002, SB 449 · 4 roll calls
Force Workers Into Unions

No worker may opt out. Union membership and dues stay compulsory, and bargaining for yourself is forbidden.

Drawn from the Democracy At Work section of the DSA political program.

HB 238, HB 1704 · 2 roll calls
Defend the Public School Monopoly

One government school system. No vouchers, no school choice, and ever-higher mandated spending.

Drawn from the Freedom To Flourish section of the DSA political program.

HB 115, SB 295, HB 651 · 4 roll calls
Government Control of Rental Property

Treat housing as a state entitlement. Bind property owners with new mandates and move toward government-owned housing.

Drawn from the Housing For All section of the DSA political program.

HB 444 · 1 roll call
Government-Run Health Care

Government-run health care for everyone at taxpayer expense, with abortion and gender procedures written into state law.

Drawn from the Healthcare For All section of the DSA political program.

SB 484, SB 551, HCR 7, HB 1313, HB 570 · 5 roll calls
Government-Mandated Wages

The state sets your pay, not your employer. Mandate a wage floor, then raise it automatically forever.

Drawn from the Freedom To Flourish section of the DSA political program.

HB 1484, HB 442 · 2 roll calls

See every roll call with its full tally and party split.

Reading motions correctly

Six of the 41 roll calls are motions to kill, table or shelve a bill instead of passing it. On those, a legislator who supports the bill votes Nay on the motion. The motion text therefore appears next to every vote on this site, and the build fails if a stored position ever contradicts its motion type.

Where the data comes from

The public database published by the New Hampshire General Court. Every score is computed at build time from the official rollcallsummary and rollcallhistory records. Nothing is entered by hand. Every vote on this site lists its session year, chamber and vote sequence number so you can check it against the official legislative journal.

Membership is read from the General Court’s active roster: 382 representatives and 24 senators. 16 towns, all in Coos County, currently sit in a House district with no sitting member. Those are shown as vacant.

Scorecard version 5.0.0. Data last built August 31, 2026 at 5:32 PM Eastern.

Scope

The index covers 41 roll calls across 11 issues. It records how legislators voted on those bills. It is not a summary of everything they have done in office.

“DSA Preferred Candidate” is a rating published by Granite Solutions. The Democratic Socialists of America did not produce it and has not endorsed anyone on this site.