Public sector union workers on strike at UCSB in 2018. Image: Openverse
Subscribe for Updates!
Join our mailing list to receive the latest news and updates from our team.
You have Successfully Subscribed!
While billionaires and big corporate interests mainly support Republicans, more than 95 percent of PAC spending from the four biggest public-sector unions went to Democrats.
In the 2021-2022 election cycle, the biggest public-sector unions spent more than $700 million on election-related activity.
This included $160 million from union political action committees. Nearly 96 percent of that went to Democratic causes.
Most members of public-sector unions may be Democrats, but Republican causes get almost no support.
It’s not a huge surprise that most political spending by public employee unions benefits Democrats. Still, it’s notable just how lopsided their spending is. Almost 96 percent of political action committee (PAC) spending by the four largest public-sector unions that could be traced went to Democratic candidates and organizations, according to a new report from the Commonwealth Foundation.
In total, the four largest public employee unions—the National Education Association; the American Federation of Teachers; the American Federation of State, County and Municipal Employees (AFSCME); and the Service Employees International Union (SEIU)—spent more than $700 million on election-related activity during the 2021-2022 election cycle.
Nearly $160 million of that amount came from member contributions to their PACs. The rest of the political money came from union dues. It’s not possible to get an equally clear picture where that money went. David Osborne, senior fellow of labor policy at the Commonwealth Foundation and a co-author of the report, is troubled by the lack of transparency. But he says there are signs that, as with the PAC contributions, union dues are disproportionately supporting progressive causes.
He’s concerned that union leaders are thus making choices about political spending that don’t reflect the priorities of all union members. Osborne recognizes that as many as 60 or 70 percent of public-sector union members might be Democrats. But only 4 percent of union PAC dollars went to Republican causes. “That imbalance seems to me to be something more than paying their dues to the government,” he says. “Instead, there seems to be an agenda that members have very little control over.”
That spending imbalance is a reflection of a “leftist” agenda, the Commonwealth report claims. AFSCME officials counter that it’s simpler than that: They support candidates who share the values of public service workers. At present, most pro-union candidates are on one side—namely, the Democratic Party.
Too Big a Voice?
It’s to be expected that public employee unions would pay extra attention to what candidates and parties have to say about them. One in three public-sector workers are union members, five times the rate among private-sector workers. In California, more than half of all union members work in government.
Still, conservatives often complain that the political sway of public employees unions distorts governmental decision-making, since their nominal bosses have to fear or court them as political financiers. Public employee unions devoted about $145 million of their PAC funds to state and local politics, with $118 million of this going to candidates for office or partisan PACs. (See map for state-by-state counts and party distribution.)
Unions aren’t doing anything that violates the law, Osborne is quick to point out, but he questions whether it’s a good thing for them to be able to influence who ends up on the other side of a negotiating table. “I don’t think that’s the way that collective bargaining was supposed to work,” he says. “I think they were supposed to be across the bargaining table from a party with adverse interests.”
Backing Existing Allies
As an example of this problem, Osborne points to the support Democrat Josh Shapiro received in his successful campaign for governor of Pennsylvania last year. “He was the top recipient of union PAC money this past election cycle,” Osborne says, “and within a year of winning the governorship he bargains with AFSCME and SEIU, and they get huge raises.”
As with other political donors, unions tend to support politicians who’ve already demonstrated that they see eye to eye. Shapiro had long been sympathetic to public-sector unions, including during his previous tenure as state attorney general. “Unions give workers a voice and make government operate more effectively,” Shapiro wrote in an amicus brief filed with 20 other state attorneys general in a 2018 Supreme Court case involving AFSCME.
“Right-to-work” policies were also a central issue in his gubernatorial campaign against Republican state Sen. Doug Mastriano. “When I’m governor, this will never be a right-to-work state, never,” Shapiro said at a campaign rally in Philadelphia.
Osborne says he would have the same concerns if the great majority of union funds started to go in the other direction. “The basic point here is that public-sector unions should be getting out of the business of politics, and that soliciting and accepting membership dues isn’t a license to support members of either party,” he says.
AFSCME officials counter that it’s essential for them to support lawmakers who are pro-union, and they see more of a funding gap than an overspend on their part. “These tend to not be the same candidates preferred by the billionaires who fund anti-union special interests,” AFSCME said in a statement.
Governing
Governing: The Future of States and Localities takes on the question of what state and local government looks like in a world of rapidly advancing technology. Governing is a resource for elected and appointed officials and other public leaders who are looking for smart insights and a forum to better understand and manage through this era of change.
{"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}