Image: The Hartmann Report
Image: The Hartmann Report
Germany’s concentration camps didn’t start as instruments of mass murder, and neither have ours; both started as facilities for people the government’s leader said were a problem. And that’s exactly what ICE is building now.
Republished with permission from Thom Hartmann
As people testified before Congress yesterday about the brutality and violence they’d suffered at the hands of ICE, that massive paramilitary organization was shopping for giant warehouse-style facilities they can retrofit into what they euphemistically call “detention centers.”
Cable news people call them “prison camps” or “Trump prison camps,” but look in any dictionary: prisons are where people convicted of crimes are held. As Merriam-Webster notes, a prison is:
“[A]n institution for confinement of persons convicted of serious crimes.”
Jails are where people accused of crimes but still waiting for their day in court are held, as Merriam-Webster notes:
“[S]uch a place under the jurisdiction of a local government for the confinement of persons awaiting trial or those convicted of minor crimes.”
But what do you call a place where people who’ve committed no criminal offense (immigration violations are civil, not criminal, infractions)? The fine dictionary people at Merriam-Webster note the proper term is “concentration camp”:
“[A] place where large numbers of people (such as prisoners of war, political prisoners, refugees, or the members of an ethnic or religious minority) are detained or confined under armed guard.”
The British originated the term “concentration camp” to describe facilities where “rebel” or “undesirable” civilians were held in South Africa during the Second Anglo‑Boer War (1899–1902) to control and punish a rebellious population.
They were facilities where the “bad elements of society” were “concentrated” into one location so they could be easily controlled and would lose access to society and thus could not spread their messages of resistance against the British Empire.
The Germans adopted the term in 1933 when Hitler took power and created his first camp for communists, socialists, union leaders, and, by the end of the year, Hitler’s political opponents. They Germanized the phrase into “Konzentrationslager” and referred to the process of their incarceration as “protective custody.”
The first camp was built at Dachau just weeks after Hitler became Chancellor in 1933, and by the end of the year there were around 70 of them operating across the country.
When Louise and I lived in Germany in 1986/87, we visited Dachau with our three children. The crematoriums shocked our kids, but even more so because this was simply a “detention facility” and not one of Hitler’s death camps (which were all located outside Germany to ensure deniability).
The ovens at Dachau were for those who had been worked to death or killed by cholera or other disease, much like the 35+ people who’ve recently died in ICE’s concentration camps.
When American friends would visit us and we’d take them to Dachau (we lived just an hour up the road) they’d invariably be surprised when I told them that by the time of the war there were over 500 substantial camps and an additional few hundred very small ones all over the country.
“How could the people not know what was going on?” they’d ask.
The answer was simple: the people did know. These were where the “undesirables,” the “criminal troublemakers,” and the “aliens” were held, and were broadly supported by the German people. (It wasn’t until 1938, following Kristallnacht, that the Nazis began systematically arresting and imprisoning non-political Jews, first at Buchenwald, and Sachsenhausen.)
By the end of his first year, Hitler had around 50,000 people held in his roughly 70 concentration camps, facilities that were often improvised in factories, prisons, castles, and other buildings.
By comparison, today ICE is holding over 70,000 people in 225 concentration camps across America, and Trump, Homan, Miller, and Noem hope to more than double both numbers in the coming months.
In Tennessee, The Guardian reports that Miller has been coordinating with Republican leaders to create legislation that would turn every local cop, teacher, social worker, and helper in the state into an official agent of ICE and criminalize efforts by cities to refuse cooperation. It also makes it a felony crime to identify any of ICE’s masked agents or disclose conditions within the concentration camps to the public.
Germans didn’t have the benefit of warnings from a fascist history they could look back on; much of what Hitler did took them by surprise, as I’ve noted in previous articles.
In 2026 America, however, operating with the benefit of historical hindsight, entire communities are rebelling at Trump’s effort to beat Germany’s 1933-1934 prisoner numbers.
In city after city, Americans are organizing to deprive ICE of their coveted spaces, putting pressure on companies not to sell and on cities and counties not to permit any more concentration camps.
Because immigration violations are labeled “civil,” people in ICE concentration camps are stripped of many of the normal constitutional protections that apply to people in criminal incarceration. This has created a legal black hole that ICE and the Trump regime exploit, where indefinite imprisonment, abuse, and medical neglect flourish with little to no oversight or accountability.
Human rights organizations like the ACLU describe pervasive patterns of abuse in ICE detention: hazardous living conditions, chronic medical neglect, sexual assault, retaliation for grievances, and extensive use of solitary confinement.
Detainees who have committed no crime other than being in the United States without documentation report being shackled for long periods, packed into freezing, overcrowded cells under constant fluorescent light, and denied hygiene and timely care. Meanwhile, GOP-aligned private prison companies are making billions off the program.
Inspections and oversight are inconsistent: one recent investigation found that as detentions and deaths surged in 2025, formal inspections of facilities actually dropped by over a third. ICE regularly refuses to allow attorneys, family members, and even members of Congress to access their concentration camps; the issue is now being litigated through federal courts.
History shows us that once a nation builds a mass detention apparatus, it never remains limited to its original targets. Future generations of Americans—our children and grandchildren—won’t ask us whether ICE followed civil detention statutes: they’ll want to know why we allowed concentration camps to exist in America at all.
Germany’s concentration camps didn’t start as instruments of mass murder, and neither have ours; both started as facilities for people the government’s leader said were a problem. And that’s exactly what ICE is building now.
History isn’t whispering its warning: it’s shouting.
Thom Hartmann, one of America’s leading public intellectuals and the country’s #1 progressive talk show host, writes fresh content six days a week. The Monday-Friday “Daily Take” articles are free to all, while paid subscribers receive a Saturday summary of the week’s news and, on Sunday, a chapter excerpt from one of his books.
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\/the-true-national-emergency-over-70000-people-detained-in-225-concentration-camps-with-plans-to-double-them\/","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"}