Image: Markwayne Mullin Facebook page.
Image: Markwayne Mullin Facebook page.
Democrats and others will closely watch Mullin’s handling of the department’s immigration enforcement tactics following the fatal shootings of two U.S. citizens in Minneapolis.
Republished with permission from OpenSecrets, by Emma Sullivan
Shortly after firing Homeland Security Secretary Kristi Noem amid mounting criticism over her leadership, President Donald Trump announced on March 5 that he would nominate Sen. Markwayne Mullin (R-Okla.) to replace her atop the Cabinet department.
Under Noem, DHS took on a high-profile role directing Trump’s immigration and deportation policies. Both Immigration and Customs Enforcement (ICE) and Customs and Border Protection (CBP) fall under Homeland Security, and those agencies have been criticized for their treatment of detainees and their roles in the shooting deaths of two citizens in Minneapolis.
Trump said Mullin would take over the role on March 31, though he must first be confirmed by the Senate. Under federal law, Mullin could serve as acting secretary while his nomination is pending.
Who Is He?
Mullin has served in Congress since 2013, first representing Oklahoma in the House of Representatives for five terms before winning a 2022 special election to the Senate to replace longtime Republican Sen. Jim Inhofe, who resigned due to health issues. A member of the Cherokee Nation, Mullin has emerged as a close Trump ally and has defended ICE agents while backing the administration’s hardline approach to border security.
On his campaign website, Mullins said the U.S. should enforce immigration laws, reinstate the “Remain in Mexico” policy and finish building a wall along the southern border.
Before entering Congress, Mullin ran his family’s plumbing company in Oklahoma, operated several businesses and hosted a home improvement radio show. A former collegiate wrestler, he also competed as a mixed martial arts fighter.
Follow the Money
- Mullin raised $14.1 million from 2011 to 2024, according to OpenSecrets data. He raised nearly $7.8 million across five House races, $5.4 million during the 2022 Senate special election.
- He raised $3 million in 2025, but used $400,000 of that to pay himself back for a $1 million loan he made to his campaign in 2022.
- From 2011 to 2024, the oil and gas industry was Mullin’s largest donor, giving $1.3 million in total, with Oklahoma-based independent energy company Devon Energy ranking as his top contributor. Employees and the company’s PAC donated a combined $104,950.
- In his most recent election in 2022, his largest contributor was AIPAC, whose members collectively donated $89,000 to his campaign.
- Small individual donations accounted for just 5.5 percent of Mullin’s fundraising during the 2022 election cycle. Large individual contributions made up 46.7 percent of his funding, while political action committees accounted for 24.6 percent and Mullin provided 18.4 percent of his campaign funds through self-financing.
- Boots PAC, Mullin’s leadership PAC, has directed 100 percent of its political contributions to Republican candidates. In the 2024 cycle, the PAC raised $1.29 million and distributed $193,000 to Republican candidates for House and Senate seats.
- Before entering Congress, Mullin owned plumbing businesses that grew to employ more than 300 workers. Financial disclosures show he reported a private-sector salary of about $92,000 in 2012 and between $200,000 and $2 million in income from his family companies, according to Business Insider. The Tulsa World later reported that Mullin’s wealth rose to at least $31 million after the sale of his plumbing business to HomeTown Services.
Why Does It Matter?
As secretary of homeland security, Mullin will be tasked with overseeing federal immigration policy as well as domestic terrorism. While he has been a steadfast support of Trump’s policies, he has not served on directly relevant committees in the Senate. He sits on the Armed Services Committee, but not the Homeland Security and Governmental Affairs Committee. He serves on six Appropriations subcommittees, but not the one handling the Department of Homeland Security’s spending.
Similarly, the bills he has introduced this Congress have focused on other issues, such as tribal and energy matters.
Democrats and others will closely watch Mullin’s handling of the department’s immigration enforcement tactics following the fatal shootings of two U.S. citizens in Minneapolis—Renée Good and Alex Pretti—during federal immigration operations early this year. He called Pretti, an ICU nurse, a “deranged individual,” and after the killing of Good he co-sponsored legislation that would increase penalties against people who resist or assault law enforcement officers with vehicles. Mullin has also expressed skepticism about birthright citizenship, a constitutional right that Trump has tried to end.
This article is part of a series examining the role political money has played in the careers of President Donald Trump’s nominees for executive branch positions.
OpenSecrets is the nation's premier research group tracking money in U.S. politics and its effect on elections and public policy. Our mission is to track the flow of money in American politics and provide the data and analysis to strengthen democracy. Our vision is for Americans to use this knowledge to create a more vibrant, representative and accountable democracy.
Help Support Factkeepers!
{"id":null,"mode":"form","open_style":"in_place","currency_code":"USD","currency_symbol":"$","currency_type":"decimal","blank_flag_url":"https:\/\/factkeepers.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/factkeepers.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":500,"top_media_type":"none","featured_image_url":false,"featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":true,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Leave a tip","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"Factkeepers.com","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Help Support Factkeepers","form_subtitle":null,"currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thank you for being a supporter!","payment_confirmation_title":"Factkeepers.com","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much would you like to donate? You can change this amount to anything you would like.","initial":{"instruction_type":"normal","instruction_message":"How much would you like to donate? You can change this amount to anything you would like."},"empty":{"instruction_type":"error","instruction_message":"How much would you like to donate? You can change this amount to anything you would like."},"invalid_curency":{"instruction_type":"error","instruction_message":"How much would you like to donate? You can change this amount to anything you would like."}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"How often would you like to donate this?"},"success":{"instruction_type":"success","instruction_message":"How often would you like to donate this?"},"empty":{"instruction_type":"error","instruction_message":"How often would you like to donate this?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}
{"date_format":"F j, Y","time_format":"g:i a","wordpress_permalink_only":"https:\/\/factkeepers.com\/a-trump-administration-personnel-profile-markwayne-mullin\/","all_default_visual_states":"inherit","modal_visual_state":false,"user_is_logged_in":false,"stripe_api_key":"pk_live_40P3DgGDAHEP1QtJ0nOU4nms5JYHI8GbQ05dYiB1S8OPP5oMSIpOCCeeIawOyeW6bWDkDMWdUeggbhxOQTSA6aedu00ROAbhXBd","stripe_account_country_code":"US","setup_link":"https:\/\/factkeepers.com\/wp-admin\/admin.php?page=tip-jar-wp&mpwpadmin1=welcome&mpwpadmin_lightbox=do_wizard_health_check","close_button_url":"https:\/\/factkeepers.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/closebtn.png"}