Bill Pulte is a danger to our national security.
I’ve already started pressing him hard to ensure he doesn’t abuse this role for political purposes… and I will keep working to hold him to account every single day he remains in this “acting” role.

Congress Member Profile|U.S. Senator|Democrat|Virginia
Mark R. Warner
Source: Wikipedia • View full (CC BY-SA)
SoupScoreanalysis-first civic rating · view full breakdown
Loading…
Voting Record — 841
Yes36%
No60%
Present0%
Not Voting5%
Party align90%
Cross-party9%
SoupScore
District Map
Senate District (Statewide)
U.S. Census Bureau boundary data.
Social & Web
External Resources

Mark R. Warner
U.S. SenatorDemocratVirginia
SoupScore
Mark R.'s ATmosphere Activity
20 recent posts · 42 sponsored · 173 cosponsored
Recent ATmosphere posts, sponsorships, and cosponsorships.
Trump dragged Americans into a deadly war of choice… including months of skyrocketing prices and tens of billions of your tax dollars spent… for a “deal” that’s not even as effective as Obama’s JCPOA.
Surprise, surprise – the corrupt sweetheart deal for one of Trump’s buddies ended in disaster.
Can you even begin to imagine the backlash any other President would have faced for starting a war of choice with Iran… then celebrating a “deal” that gives them $300 billion?
Kash Patel must go.
The president's latest intervention only underscores a simple reality: the biggest obstacle to resolving these issues has not been Senate Democrats or Senate Republicans. It has been the chaos and confusion coming from the White House itself.
National security cannot be governed by social media post.
At every turn, the president has injected more uncertainty into a process that should be focused on one thing: keeping the American people safe.
First installing Bill Pulte, then nominating Jay Clayton, then demanding unrelated legislation be attached to FISA reauthorization, and now threatening to derail both the confirmation process and a bipartisan reauthorization effort.
Over the past two weeks, President Trump has careened from one personnel decision and political demand to the next –
What we're witnessing is an extraordinary display of dysfunction from a president who seems determined to turn America's national security into a political bargaining chip.
Americans have spent hundreds more to fill up their tank during Trump's war of choice.
You paid more while Trump loosened sanctions on Iranian oil – lining their pockets at the same time that Americans struggled with skyrocketing prices at the pump.
Surprise, surprise – Trump is using $300 million+ of your tax dollars to finance the ballroom he swore wouldn’t cost you a dime.
In March, Trump said that no taxpayer would put up even 10 cents for his ballroom. Now, taxpayers are covering more than half of his $600 million project.
Can the president stop lying to the American people?
While Americans are paying more for health care, gas, groceries, and energy, Trump is taking more than $300 million taxpayer dollars and forcing it toward his vanity ballroom project.
It was great to be in Richmond last week discussing the opportunities and challenges AI presents.
I’m working every week to ensure Virginia is ready to protect workers and maximize scientific advancement as AI continues to change our economy.
Trump is focused on a UFC match at the White House while his war of choice and rising inflation drive up Americans’ cost of living. Could he be more out of touch?
Trump says he “loves inflation.” Since he took office, Virginians are paying:
$572 more for housing
$310 more for groceries
$444 more for gas
We need a coordinated strategy to protect our democracy.
I’m teaming up with other senators, legal experts, and leaders in the election security space to protect our democracy from Trump’s efforts to subvert our elections.
Posts page 1Older posts →
SoupScore Breakdown
Loading analysis metrics…
Voting History841 total votesExpandCollapse
Voting History
841 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-06-02 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-46) |
| 2026-06-01 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (50-44) |
| 2026-05-20 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-47) |
| 2026-05-19 | S.J. Res. 185 (119th) | Motion to Discharge S.J.Res. 185 | YES | YES | ✓ | Motion to Discharge Agreed to (50-47) |
| 2026-05-19 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (50-47) |
| 2026-05-19 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (52-38) |
| 2026-05-19 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (57-38) |
| 2026-05-18 | S. Res. 690 (119th) | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (46-43) |
| 2026-05-14 | S. Res. 690 (119th) | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-46) |
| 2026-05-13 | S.J. Res. 130 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (47-53) |
| 2026-05-13 | S.J. Res. 141 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (50-50) |
| 2026-05-13 | S.J. Res. 132 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (48-52) |
| 2026-05-13 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (54-45) |
| 2026-05-13 | S. Res. 526 (119th) | End filibuster to begin debate | YES | YES | ✓ | Cloture on the Motion to Proceed Agreed to (99-0, 3/5 majority required) |
| 2026-05-13 | S.J. Res. 163 (119th) | Motion to Discharge S.J.Res. 163 | YES | YES | ✓ | Motion to Discharge Rejected (49-50) |
| 2026-05-12 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-45) |
| 2026-05-12 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (51-45) |
| 2026-05-11 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (49-44) |
| 2026-05-11 | S. Res. 690 (119th) | Approve resolution | NO | NO | ✓ | Resolution Agreed to (46-45) |
| 2026-04-30 | S.J. Res. 184 (119th) | Motion to Discharge S.J.Res. 184 | YES | YES | ✓ | Motion to Discharge Rejected (47-50) |
| 2026-04-30 | S. Res. 690 (119th) | End debate | NO | NO | ✓ | Cloture Motion Agreed to (51-46) |
| 2026-04-29 | S.J. Res. 99 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (47-50) |
| 2026-04-29 | S.J. Res. 139 (119th) | Begin consideration | YES | YES | ✓ | Motion to Proceed Rejected (46-52) |
| 2026-04-29 | — | Confirm nominee | NO | NO | ✓ | Nomination Confirmed (59-39) |
| 2026-04-28 | S.J. Res. 124 (119th) | Point of Order S.J.Res. 124 | NOT_VOTING | NO | — | Point of Order Well Taken (51-47) |
| 2026-04-28 | S. Res. 690 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (52-47) |
| 2026-04-27 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (54-37) |
| 2026-04-23 | S. Con. Res. 33 (119th) | Accept House changes | NOT_VOTING | NO | — | Concurrent Resolution Agreed to (50-48) |
| 2026-04-23 | S. Con. Res. 33 (119th) | Vote on amendment | NOT_VOTING | YES | — | Amendment Rejected (49-49) |
| 2026-04-23 | S. Con. Res. 33 (119th) | Vote on amendment | NOT_VOTING | YES | — | Amendment Rejected (48-50) |
| 2026-04-23 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Padilla Amdt. No. 4855) | NOT_VOTING | YES | — | Motion Rejected (46-52, 3/5 majority required) |
| 2026-04-23 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Sanders Amdt. No. 5159) | NOT_VOTING | YES | — | Motion Rejected (49-49, 3/5 majority required) |
| 2026-04-23 | S. Con. Res. 33 (119th) | Vote on amendment | NOT_VOTING | YES | — | Amendment Rejected (46-52) |
| 2026-04-23 | S. Con. Res. 33 (119th) | Vote on amendment | NOT_VOTING | NO | — | Amendment Rejected (25-73) |
| 2026-04-23 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Markey Amdt. No. 5001) | NOT_VOTING | YES | — | Motion Rejected (48-50, 3/5 majority required) |
| 2026-04-23 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Hawley Amdt. No. 4794) | NOT_VOTING | NO | — | Motion Rejected (50-48, 3/5 majority required) |
| 2026-04-23 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Kennedy Amdt. No. 5414) | NOT_VOTING | NO | — | Motion Rejected (48-50, 3/5 majority required) |
| 2026-04-22 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Alsobrooks Amdt. No. 5294) | NOT_VOTING | YES | — | Motion Rejected (47-51, 3/5 majority required) |
| 2026-04-22 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Hickenlooper Amdt. No. 4956) | NOT_VOTING | YES | — | Motion Rejected (47-51, 3/5 majority required) |
| 2026-04-22 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Hirono Amdt. No. 4884) | NOT_VOTING | YES | — | Motion Rejected (48-50, 3/5 majority required) |
| 2026-04-22 | S. Con. Res. 33 (119th) | Vote on amendment | NOT_VOTING | YES | — | Amendment Agreed to (98-0) |
| 2026-04-22 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Ossoff Amdt. No. 4897) | NOT_VOTING | YES | — | Motion Rejected (49-49, 3/5 majority required) |
| 2026-04-22 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Lujan Amdt. No. 4798) | NOT_VOTING | YES | — | Motion Rejected (47-50, 3/5 majority required) |
| 2026-04-22 | — | Motion (Motion to Waive All Applicable Budgetary Discipline Re: Schumer Amdt. No. 4799) | NOT_VOTING | YES | — | Motion Rejected (48-50, 3/5 majority required) |
| 2026-04-22 | S.J. Res. 114 (119th) | Motion to Discharge S.J.Res. 114 | NOT_VOTING | YES | — | Motion to Discharge Rejected (46-51) |
| 2026-04-21 | S. Con. Res. 33 (119th) | Begin consideration | NOT_VOTING | NO | — | Motion to Proceed Agreed to (52-46) |
| 2026-04-20 | — | Confirm nominee | NOT_VOTING | NO | — | Nomination Confirmed (47-46) |
| 2026-04-16 | — | End debate | NO | NO | ✓ | Cloture Motion Agreed to (49-48) |
| 2026-04-16 | H.J. Res. 140 (119th) | Approve resolution | NO | NO | ✓ | Joint Resolution Passed (50-49) |
| 2026-04-15 | H.J. Res. 140 (119th) | Begin consideration | NO | NO | ✓ | Motion to Proceed Agreed to (51-49) |
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.