Les Nazis considéraient les Tsiganes comme "racialement inférieurs" et s’appuyaient sur les préjugés sociaux de nombreux Allemands non nazis à leur encontre. En de nombreux points, le sort des Tsiganes s’apparentait à celui des Juifs. Sous le régime nazi, les Tsiganes subirent des internements arbitraires, furent soumis au travail forcé et assassinés en masse. Les autorités allemandes exterminèrent des dizaines de milliers de Tsiganes dans les territoires occupés par les Allemands en Union soviétique et en Serbie. Des milliers d’autres furent tués dans les camps de mise à mort d'Auschwitz-Birkenau, Chelmno, Belzec, Sobibor et Treblinka. Les SS et la police incarcérèrent également des Tsiganes dans les camps de concentration de Bergen-Belsen, de Sachsebhausen, de Buchenwald, de Dachau, de Matthausen et de Ravensbrück. Aussi bien dans le Reich grand-allemand que dans le Gouvernement général (qui correspondait à la partie de Pologne occupée par les Allemands qui n’était pas directement rattachée au Reich allemand), les autorités civiles allemandes administrèrent plusieurs camps de travail forcé dans lesquels ils incarcérèrent des Tsiganes.
Le 21 septembre 1939, Reinhard Heydrich, chef de l'Office central de Sécurité du Reich, rencontra les responsables de la Police de Sûreté (Sipo) et du Service de la sûreté (SD) à Berlin. La victoire allemande dans l’invasion de la Pologne étant acquise, il entendait expulser 30 000 Tsiganes allemands et autrichiens du grand Reich vers le Gouvernement général. Ce plan fut mis en échec par le gouverneur général Hans Frank, le plus haut responsable de l’occupation civile du Gouvernement général, qui refusa au printemps 1940 d’accepter un grand nombre de Tsiganes et de Juifs.
Il y eut néanmoins des déportations de Tsiganes du Reich vers la Pologne occupée en 1940 et 1941. En mai 1940, les SS et la police déportèrent dans le district de Lublin du Gouvernement général environ 2500 Tsiganes et Sinti qui résidaient principalement à Hambourg et à Brême. Les SS et la police les incarcérèrent dans des camps de travail forcé et beaucoup succombèrent à leurs conditions de vie et de travail. Le sort des survivants est inconnu, il est probable que les SS les assassinèrent dans les chambres à gaz de Belzec, Sobibor ou Treblinka. A l’automne 1941, les autorités de la police allemande déportèrent 5007 Sinti et Lalleri d’Autriche vers le ghetto juif de Lodz, dont ils occupaient une section séparée.
Près de la moitié des Tsiganes mourut dans les premiers mois suivant leur arrivée, par manque de nourriture, de chauffage, d’abri et de médicaments. Au cours des premiers mois de 1942, les SS et la police déportèrent ceux qui survécurent à ces conditions vers le camp d’extermination de Chelmno. Là, de même que des dizaines de milliers de résidents juifs du ghetto de Lodz, les Tsiganes furent tués au monoxyde de carbone dans des camions à gaz. Prévoyant de les déporter hors du grand Reich, les autorités allemandes enfermèrent tous les Tsiganes dans des camps spécifiques (Zigeunerlager). Avec la suspension des déportations en 1940, ces camps devinrent des lieux de détention à long terme pour les Tsiganes. Les camps de Marzahn à Berlin et ceux de Lackenbach et de Salzbourg en Autriche furent parmi les plus terribles. Des centaines des Tsiganes y périrent à cause des conditions de vie. Les voisins allemands du camp se plaignirent à plusieurs reprises des camps et exigèrent la déportation des Tsiganes internés pour "sauvegarder la morale et la santé publiques ainsi que la sécurité". La police locale prit prétexte de ces plaintes pour demander officiellement au chef de la SS, Heinrich Himmler, la reprise des déportations de Tsiganes vers l'est.
En décembre 1942, Himmler ordonna la déportation de tous les Tsiganes du grand Reich. Il y avait des exceptions pour certaines catégories, dont les individus de "sang tsigane pur" depuis les temps anciens, les individus d’origine tsigane considérés comme intégrés dans la société allemande et qui en conséquence ne se "comportaient pas comme des Tsiganes" et les individus (et leurs familles) qui s’étaient distingués dans l’armée allemande. Au moins 5000 et peut-être jusqu’à 15 000 personnes relevèrent de ces exemptions, mais la police locale ignorait souvent ces distinctions au cours des rafles. Il arriva même que les autorités de police arrêtèrent et déportèrent des soldats tsiganes servant dans la Wehrmacht pendant qu’ils étaient en permission.
En général, la police allemande déportait les Tsiganes du Reich grand-allemand à Auschwitz-Birkenau, où un camp avait été conçu spécialement pour eux : "le camp des familles tsiganes". Des familles entières y étaient incarcérées. Au total, près de 23 000 Tsiganes, Sinti et Lalleri furent déportés à Auschwitz. A l’instar du capitaine SS Dr Josef Mengele, des chercheurs en médecine nazis furent affectés au complexe d’Auschwitz et reçurent l’autorisation, afin de mener des expériences médicales pseudo-scientifiques, de choisir leurs sujets parmi les prisonniers du complexe concentrationnaire d’Auschwitz. Mengele choisit pour sujets de ses expériences des jumeaux et des nains, dont certains venaient du camp des familles tsiganes. Environ 3 500 adultes et adolescents tsiganes furent prisonniers dans d’autres camps de concentration allemands. Des médecins nazis utilisèrent également des prisonniers tsiganes détenus dans les camps de Ravensbrück, Natzweiller-Struthof et Sachsenhausen pour leurs expériences, ou bien directement sur les sites ou dans des instituts à proximité.
Les conditions de vie dans le "camp des familles tsiganes" d’Auschwitz-Birkenau contribuèrent à la propagation de maladies infectieuses et d'épidémies — le typhus, la variole et la dysenterie — qui réduisirent considérablement la population. Fin mars 1944, les SS exécutèrent environ 1700 Tsiganes de la région de Bialystok dans les chambres à gaz ; ils étaient arrivés quelques jours auparavant et beaucoup d'entre eux (sans être la totalité) étaient malades. En mai 1944, les Allemands décidèrent de liquider le camp des familles. Alors que les SS l'entouraient, les Tsiganes refusèrent de sortir. Ils avaient été prévenus et s’étaient armés de barres de fer, de pelles et autres outils utilisés pour les travaux.
Les chefs SS choisirent de ne pas affronter directement les Tsiganes et se retirèrent. A la fin du printemps et au début de l’été, ils transférèrent jusqu’à 3000 Tsiganes en état de travailler à Auschwitz I et dans d’autres camps de concentration en Allemagne, puis liquidèrent les 2898 détenus restant le 2 août. La plupart des victimes étaient des malades, des personnes âgées, des femmes et des enfants. Le personnel du camp les tua presque tous dans les chambres à gaz de Birkenau. Quelques enfants qui s’étaient cachés pendant l’opération furent capturés et exécutés dans les jours suivants. Au moins 19 000 des 23 000 Tsiganes déportés à Auschwitz y périrent.
Dans les zones de l'Europe occupées par les Allemands, le sort des Tsiganes varia d’un pays à l’autre, selon les conditions locales. Les autorités allemandes internaient généralement les Tsiganes et les déportaient ensuite en Allemagne pour les soumettre au travail forcé, ou en Pologne également pour le travail forcé ou pour les assassiner. A la différence de la politique raciale allemande envers les Juifs d’Allemagne et d’Autriche, selon laquelle les personnes de "sang mêlé" étaient exemptées des mesures de déportation (mais pas de travail forcé), les SS et la police, après beaucoup d’hésitation et de confusion, décidèrent que les Tsiganes de "sang pur" étaient sans danger alors que les "sang-mêlé", quel que soit leur proportion de sang tsigane, étaient dangereux et donc déportables.
L’armée allemande et les unités de la SS et de la police exécutèrent également au moins 30 000 Tsiganes dans les pays baltes et en Union soviétique occupée, où les Einsatzgruppen et d'autres unités mobiles d'extermination massacraient les Tsiganes en même temps qu'ils exterminaient les Juifs et les responsables communistes. En Serbie occupée, les autorités allemandes tuèrent les Tsiganes hommes dans des fusillades en 1941 et début 1942, puis assassinèrent les femmes et les enfants dans des camions à gaz en 1942. Le nombre total de Tsiganes tués en Serbie ne sera jamais connu. Les estimations vont de 1000 à 12 000 personnes. En France, les autorités de Vichy intensifièrent les mesures restrictives à l’encontre des Tsiganes à partir de 1940 et de l'établissement du régime collaborationniste. En 1941 et 1942, la police française interna au moins 3000 et peut-etre jusqu'à 6000 Tsiganes qui résidaient en France occupée et non occupée. Les autorités françaises expédièrent relativement peu d'entre eux dans des camps en Allemagne, tels que Buchenwald, Dachau et Ravensbrück
Bien que les Roumains, alliés de l'Allemagne, n'exterminèrent pas systématiquement leur population tsigane, les militaires et les policiers roumains déportèrent en 1941 et 1942 environ 26 000 Tsiganes, principalement de Bucovine et de Bessarabie mais également de Moldavie et de Bucarest, en Transnistrie, une section du sud-ouest de l'Ukraine placée sous administration roumaine. Des milliers de déportés moururent de maladie, de famine et à la suite à de mauvais traitements.
En Croatie indépendante alors alliée de l'Allemagne, les Oustachis (membres du mouvement terroriste et nationaliste oustachi) exterminèrent la quasi-totalité de la population tsigane du pays soit environ 25 000 personnes. Entre 15 000 et 20 000 tsiganes périrent à Jasenovac, un système concentrationnaire géré par la milice oustachie et la police politique croate.
On ne connaît pas exactement le nombre de Tsiganes tués au cours de la Shoah. Bien que des chiffres ou des pourcentages précis ne puissent pas être vérifiés, les historiens estiment que les Allemands et leurs alliés auraient exterminé environ 25% des Tsiganes européens. Sur un peu moins d'un million de Tsiganes vivant en Europe avant la guerre, jusqu'à 220 000 auraient ainsi été tués par les Allemands et leurs partenaires de l'Axe.
Après la guerre, la discrimination contre les Tsiganes continua à travers l'Europe centrale et orientale. La République fédérale d'Allemagne décida que toutes les mesures prises contre les Tsiganes avant 1943 étaient des mesures officielles légitimes prises contre des personnes ayant commis des infractions pénales, et non le résultat d'une politique inspirée par des préjugés raciaux. Cette décision ferma la porte à tout dédommagement pour des milliers de victimes tsiganes qui avaient été incarcérées, stérilisées de force et expulsées d'Allemagne alors qu'elles n'avaient commis aucun délit. La police criminelle bavaroise reprit même les dossiers de recherche du régime nazi, y compris le fichier des Tsiganes ayant résidé dans le Grand Reich allemand.
C'est seulement à la fin de 1979 que le parlement de RFA reconnut le caractère raciste de la persécution des Tsiganes par les Nazis, ce qui permettait à la plupart des Tsiganes de demander réparation pour les souffrances et les pertes subies sous le régime nazi. A cette date, cependant, beaucoup de ces victimes étaient déjà décédées.
Il faut attendre 2012 pour que l'Allemagne reconnaisse le génocide des Tsiganes.