We already know Musk is calling the shots at the White House. Clearly, he’s doing the same for most Senate Republicans, too.
The man who spent $280M to elect Trump is taking a chainsaw to services for all Americans and rigging the government for billionaires like himself. A corrupt bargain.

Congress Member Profile|U.S. Senator|Democrat|Maryland
Chris Van Hollen
Source: Wikipedia • View full (CC BY-SA)
SoupScoreanalysis-first civic rating · view full breakdown
Loading…
Voting Record — 788
Yes26%
No73%
Present0%
Not Voting2%
Party align97%
Cross-party0%
SoupScore
District Map
Senate District (Statewide)
U.S. Census Bureau boundary data.
Social & Web
External Resources

Chris Van Hollen
U.S. SenatorDemocratMaryland
SoupScore
Chris's ATmosphere Activity
20 recent posts · 60 sponsored · 425 cosponsored
Recent ATmosphere posts, sponsorships, and cosponsorships.
Don't be fooled by what Trump said last night.
His administration is actively dismantling the Social Security Administration and laying the groundwork to go after people's hard-earned benefits⬇️
Want to know what the Trump Administration really thinks about our veterans? Watch this.
🚨NEWS: The Trump Administration was just ordered to, at least for now, reinstate THOUSANDS of illegally fired "probationary" employees at USDA — laying the groundwork to reverse illegal firings across the government.
Long way to go in this fight, but this is huge:
🚨SCOTUS has ordered the Trump Admin to resume payments for completed foreign aid work—after their illegal freeze forced groups to shutter projects worldwide.
Trump’s illegal dismantling of USAID puts our national security at risk. This is an important step in our fight back.
We just heard lie after lie after lie from Donald Trump — all to distract from the fact that they're cutting vital services for working people to pay for tax cuts for billionaires.
What an embarrassment.
No one is happier with Trump’s approach to Ukraine than his idol Vladimir Putin. Trump has thrown the Ukrainian people under the bus while abandoning our closest allies and our interests around the world.
It’s a disgrace.
When Donald Trump says he’s delivering a new golden age…he doesn’t mean for working people. He means for billionaires like himself, Elon Musk, and the other oligarchs in his inner circle.
Our dedicated, nonpartisan federal employees work every day to deliver vital services for the American people.
They are patriots with a commitment to public service — something Donald Trump will never understand.
Donald Trump says he’ll protect Social Security — but his plan to fire thousands of SSA employees could collapse the entire system and put Americans' hard-earned benefits at risk.
We will fight like hell to protect Social Security from Trump, Musk and their band of billionaires.
Trump talks a big game on energy. But the fact is, he's GUTTING clean energy alternatives that Americans rely on to lower their electricity bills.
This is after he told Big Oil execs that he'd deliver their wish list if they donated $1B to his campaign.
Another corrupt bargain.
Donald Trump promised that he would lower prices on day 1. Well, prices have only gone up — but rest assured he’s "working hard" to deliver a huge tax cut for billionaires like himself and Elon Musk.
Tonight Skye Perryman of @democracyforward.org — a key leader in the legal fight against Trump and Musk's power grab — is joining me as my guest to Trump’s speech to highlight how we're fighting back.
I sat down with Skye to discuss the latest on the court cases and the road ahead⬇️
Trump told Big Oil he'd deliver their wish list if they spent $1 billion to elect him president.
And he's doing it — giving them a blank check while gutting clean energy options that lower costs for Americans.
Billionaires get richer, everyone else’s electric bills go up.
Trump promised to lower prices on day one, but costs have only gone up.
It's Donald Trump's Great Betrayal and the American people won't stand for it.
Putin has a huge arsenal and is bombing innocent families in Ukraine as we speak. What is Donald Trump doing? Cutting off vital military assistance to Ukraine.
Turns out Putin’s biggest booster is sitting in the Oval Office. What a disgrace.
We will fight like hell to stop Elon Musk, Donald Trump, and their band of billionaires from going after your hard earned Social Security benefits and the dedicated public servants at SSA who deliver them.
After lying about millions of dead people getting Social Security benefits, now the richest man on earth is calling Social Security a Ponzi scheme.
Tell that to the millions of Americans who depend on Social Security benefits that they’ve earned from a lifetime of hard work.
Trump’s already shown he’ll use the DOJ to do his bidding — and it sure looks like he’s politicizing the FBI to target the Greenhouse Gas Reduction Fund.
We built this fund to spur private investment, create jobs and boost our energy independence. We will fight this illegal action.
SoupScore Breakdown
Loading analysis metrics…
Voting History788 total votesExpandCollapse
Voting History
788 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 |
|---|---|---|---|---|---|---|
| 2025-12-09 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (49-46) |
| 2025-12-09 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (49-46) |
| 2025-12-09 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-46) |
| 2025-12-09 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (51-46) |
| 2025-12-08 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (52-44) |
| 2025-12-04 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (57-32) |
| 2025-12-04 | S. Res. 520 (119th) | End debate | NO | NO | ✓ | Cloture Motion Rejected (43-37, 3/5 majority required) |
| 2025-12-04 | H.J. Res. 131 (119th) | Approve resolution | NO | NO | ✓ | Joint Resolution Passed (49-45) |
| 2025-12-03 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (63-34) |
| 2025-12-03 | S.J. Res. 91 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (49-47) |
| 2025-12-03 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (57-41) |
| 2025-12-03 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (56-40) |
| 2025-12-02 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (60-39) |
| 2025-12-02 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (61-36) |
| 2025-12-02 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (53-45) |
| 2025-12-01 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (50-41) |
| 2025-11-20 | H.J. Res. 130 (119th) | Approve resolution | NO | NO | ✓ | Joint Resolution Passed (51-43) |
| 2025-11-19 | S.J. Res. 76 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (46-51) |
| 2025-11-19 | S.J. Res. 89 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (51-47) |
| 2025-11-19 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (66-32) |
| 2025-11-18 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (65-32) |
| 2025-11-10 | H.R. 5371 (119th) | Final passage | NO | NO | ✓ | Bill Passed (60-40) |
| 2025-11-10 | H.R. 5371 (119th) | End debate | NO | NO | ✓ | Cloture Motion Agreed to (60-40, 3/5 majority required) |
| 2025-11-10 | H.R. 5371 (119th) | Vote on amendment | NO | NO | ✓ | Amendment Agreed to (60-40) |
| 2025-11-10 | H.R. 5371 (119th) | End debate | NO | NO | ✓ | Cloture Motion Agreed to (60-40, 3/5 majority required) |
| 2025-11-10 | H.R. 5371 (119th) | Kill the motion | YES | YES | ✓ | Motion to Table Agreed to (76-24) |
| 2025-11-10 | H.R. 5371 (119th) | Kill the motion | YES | YES | ✓ | Motion to Table Failed (47-53) |
| 2025-11-10 | H.R. 5371 (119th) | Kill the motion | YES | YES | ✓ | Motion to Table Failed (47-53) |
| 2025-11-10 | H.R. 5371 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (60-40) |
| 2025-11-09 | H.R. 5371 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Agreed to (60-40, 3/5 majority required) |
| 2025-11-07 | S. 3012 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (53-43, 3/5 majority required) |
| 2025-11-06 | S.J. Res. 90 (119th) | Motion to Discharge S.J.Res. 90 | YES | YES | ✓ | Motion to Discharge Rejected (49-51) |
| 2025-11-05 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (57-43) |
| 2025-11-05 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (57-41) |
| 2025-11-05 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-45) |
| 2025-11-04 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-46) |
| 2025-11-04 | H.R. 5371 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (54-44, 3/5 majority required) |
| 2025-11-03 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-46) |
| 2025-10-30 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-47) |
| 2025-10-30 | S.J. Res. 88 (119th) | Approve resolution | YES | YES | ✓ | Joint Resolution Passed (51-47) |
| 2025-10-30 | S.J. Res. 80 (119th) | Approve resolution | NO | NO | ✓ | Joint Resolution Passed (52-45) |
| 2025-10-29 | S.J. Res. 77 (119th) | Approve resolution | YES | YES | ✓ | Joint Resolution Passed (50-46) |
| 2025-10-29 | S.J. Res. 69 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Rejected (25-72) |
| 2025-10-29 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (51-47) |
| 2025-10-29 | S.J. Res. 80 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (54-46) |
| 2025-10-28 | S.J. Res. 81 (119th) | Approve resolution | YES | YES | ✓ | Joint Resolution Passed (52-48) |
| 2025-10-28 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (53-46) |
| 2025-10-28 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-47) |
| 2025-10-28 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (52-47) |
| 2025-10-28 | H.R. 5371 (119th) | End filibuster to begin debate | NO | NO | ✓ | Cloture on the Motion to Proceed Rejected (54-45, 3/5 majority required) |
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.