The SAVE Act is one of the most extreme voter suppression bills in recent history.
It is intended to undermine our elections using tactics that are straight out of an authoritarian playbook.

Congress Member Profile|U.S. Senator|Democrat|New Mexico
Martin Heinrich
SoupScoreanalysis-first civic rating · view full breakdown
Loading…
Voting Record — 885
Yes34%
No62%
Present0%
Not Voting4%
Party align94%
Cross-party6%
SoupScore
District Map
Senate District (Statewide)
U.S. Census Bureau boundary data.
Social & Web
External Resources

Martin Heinrich
U.S. SenatorDemocratNew Mexico
SoupScore
Martin's ATmosphere Activity
20 recent posts · 55 sponsored · 281 cosponsored
Recent ATmosphere posts, sponsorships, and cosponsorships.
TSA agents deserve to be paid through this shutdown. Yesterday, Senate Republicans blocked legislation to do just that–and it’s not the first time.
Generations upon generations have fought for the sacred right to vote. Which is why I'm standing in defense of that right and am voting NO on the so-called SAVE Act.
Gas prices? Up.
Unemployment rate? Up.
Stock market? Down.
Are we winning yet?
No one should have to suffer in silence to protect a man or a movement. The courage and leadership Dolores Huerta and these other women have shown in coming forward is remarkable. I cannot imagine the pain and suffering they’ve endured over decades. Thank you for showing us what real strength is.
Reposted bySenator Martin Heinrich
Trump promised to end wars and lower energy prices. He’s done the opposite.
The SAVE Act does not “save” anyone from anything.
Instead, it adds new barriers — and costs — for eligible voters to access the ballot box.
That’s voter suppression, plain and simple.
I’m a NO.
Regular without a rewards card is now effectively $4/gallon and diesel is $5/gallon. That diesel number is already rippling through the cost of groceries.
New Mexicans have paid over $1,300 for President Trump’s illegal tariffs.
I introduced a bill to put that money back in your pockets.
Straight out of the authoritarian playbook.
Too many New Mexicans are being priced out of a place to live. I'm proud the Senate passed our legislation to help more families find a safe, affordable place to call home. New Mexicans deserve housing they can afford, and I’m committed to making that a reality.
You shouldn't have to pay the bill for Trump's illegal tariffs. I'm working to get you a refund to make life more affordable.
Deeply disturbed by the attack at Temple Israel in Michigan today. No one in this country should have to fear for their safety while practicing their faith.
We must stand with our Jewish neighbors and speak out forcefully against antisemitism and hate.
I just introduced legislation that would refund you for Trump’s illegal tariffs.
You’re paying for Trump’s War in Iran.
Trump wants to dumb down our history and cheapen our National Parks. I won’t let him take our history from us. These stories will be told again and again, long after HE is relegated to the history books.
It’s about time.
Thank you to our U.S. Capitol Police for all you did to defend our democracy on January 6.
This was a lie.
Wildlife Refuges are for wildlife, NOT Trump’s friends in the fossil fuel lobby.
SoupScore Breakdown
Loading analysis metrics…
Voting History885 total votesExpandCollapse
Voting History
885 total votes
Recent roll calls with party-majority context so it is easier to scan how this member tends to vote.
| Date | Bill | Question | Position | Party Maj | Align? | Result |
|---|---|---|---|---|---|---|
| 2026-04-14 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (53-46) |
| 2026-04-13 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (50-44) |
| 2026-03-26 | H.R. 7147 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (53-47, 3/5 majority required) |
| 2026-03-26 | S. 1383 (119th) | End debate | NO | NO | ✓ | Cloture Motion Rejected (53-47, 3/5 majority required) |
| 2026-03-25 | S.J. Res. 103 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (48-50) |
| 2026-03-25 | H.R. 7147 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (54-46, 3/5 majority required) |
| 2026-03-25 | S.J. Res. 107 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (47-53) |
| 2026-03-24 | S.J. Res. 116 (119th) | Motion to Discharge S.J.Res. 116 | YES | YES | ✓ | Motion to Discharge Rejected (47-53) |
| 2026-03-24 | S. 1383 (119th) | Kill the motion | NO | NO | ✓ | Motion to Table Agreed to (53-47) |
| 2026-03-24 | S. 1383 (119th) | Kill the motion | NO | NO | ✓ | Motion to Table Agreed to (53-47) |
| 2026-03-24 | — | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (51-47) |
| 2026-03-24 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-47) |
| 2026-03-23 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-45) |
| 2026-03-23 | — | Confirm nominee | YES | NO | ✕↔ | Nomination Confirmed (54-45) |
| 2026-03-22 | — | End debate | YES | NO | ✕↔ | Cloture Motion Agreed to (54-37) |
| 2026-03-21 | S. 1383 (119th) | End debate | YES | YES | ✓ | Cloture Motion Rejected (41-49, 3/5 majority required) |
| 2026-03-21 | S. 1383 (119th) | End debate | NO | NO | ✓ | Cloture Motion Rejected (49-41, 3/5 majority required) |
| 2026-03-20 | H.R. 7147 (119th) | End debate | NO | NO | ✓ | Cloture Motion Rejected (47-37, 3/5 majority required) |
| 2026-03-18 | S.J. Res. 118 (119th) | Motion to Discharge S.J.Res. 118 | YES | YES | ✓ | Motion to Discharge Rejected (47-53) |
| 2026-03-17 | S. 1383 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (51-48) |
| 2026-03-17 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (51-45) |
| 2026-03-17 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (48-45) |
| 2026-03-12 | H.R. 7147 (119th) | End debate | NO | NO | ✓ | Cloture Motion Rejected (51-46, 3/5 majority required) |
| 2026-03-12 | H.R. 6644 (119th) | Final passage | YES | YES | ✓ | Bill Passed (89-10) |
| 2026-03-11 | H.R. 6644 (119th) | End debate | YES | YES | ✓ | Cloture Motion Agreed to (82-11, 3/5 majority required) |
| 2026-03-11 | H.R. 6644 (119th) | Vote on amendment | YES | YES | ✓ | Amendment Agreed to (84-10) |
| 2026-03-10 | H.R. 6644 (119th) | End debate | YES | YES | ✓ | Cloture Motion Agreed to (89-9, 3/5 majority required) |
| 2026-03-10 | — | Confirm nominee | YES | NO | ✕↔ | Nomination Confirmed (71-29) |
| 2026-03-09 | — | End debate | YES | NO | ✕↔ | Cloture Motion Agreed to (68-28) |
| 2026-03-05 | H.R. 7147 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (51-45, 3/5 majority required) |
| 2026-03-04 | S.J. Res. 104 (119th) | Motion to Discharge S.J.Res. 104 | YES | YES | ✓ | Motion to Discharge Rejected (47-53) |
| 2026-03-04 | H.R. 6644 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Agreed to (90-8) |
| 2026-03-02 | H.R. 6644 (119th) | End debate | YES | YES | ✓ | Cloture Motion Agreed to (84-6, 3/5 majority required) |
| 2026-02-26 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (57-33) |
| 2026-02-26 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (60-34) |
| 2026-02-25 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (50-45) |
| 2026-02-25 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (50-45) |
| 2026-02-24 | H.R. 7147 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (50-45, 3/5 majority required) |
| 2026-02-12 | H.R. 7147 (119th) | End debate | NO | NO | ✓ | Cloture Motion Rejected (52-47, 3/5 majority required) |
| 2026-02-12 | H.J. Res. 142 (119th) | Approve resolution | NO | NO | ✓ | Joint Resolution Passed (49-47) |
| 2026-02-11 | H.J. Res. 142 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (51-46) |
| 2026-02-10 | S.J. Res. 95 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (47-51) |
| 2026-02-10 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-46) |
| 2026-02-09 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-47) |
| 2026-02-05 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (50-47) |
| 2026-02-05 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-47) |
| 2026-02-05 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (50-46) |
| 2026-02-04 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (50-47) |
| 2026-02-04 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (51-46) |
| 2026-02-04 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-47) |
Alignment stats consider only votes where a clear yes/no majority existed for the legislator's party. Cross-party marks divergence where the vote matched the opposite party majority. ↔ indicates cross-party divergence.