diff --git a/src/js/DefaultRules.js b/src/js/DefaultRules.js
index f3947972241473fbcd740d8338ce83faea4f4045..b50800fbc864c6c9ac621e6f011e1432967c42fc 100644
--- a/src/js/DefaultRules.js
+++ b/src/js/DefaultRules.js
@@ -1721,9 +1721,13 @@ globalThis.DefaultRules = function(slave) {
 					}
 				}
 			} else if (V.dietCleanse === 1 && (rule.diet === "cleansing")) {
-				if (slave.diet !== "cleansing") {
-					slave.diet = "cleansing";
-					message(`${slave.slaveName} has been put on a diet of cleansers.`, sourceRecord.diet);
+				if (slave.health.condition < 90 || slave.chem >= 10) {
+					if (slave.diet !== "cleansing") {
+						slave.diet = "cleansing";
+						message(`${slave.slaveName} has been put on a diet of cleansers.`, sourceRecord.diet);
+					}
+				} else {
+					message(`${slave.slaveName} has been put on a standard diet since ${he} is already in good health.`, sourceRecord.diet);
 				}
 			} else if (rule.diet === "fertility") {
 				if ((isFertile(slave) && slave.preg === 0) || (slave.geneticQuirks.superfetation === 2 && canGetPregnant(slave) && V.geneticMappingUpgrade !== 0)) {