diff --git a/src/endWeek/saServant.js b/src/endWeek/saServant.js
index 94e01b497863089a2575c679001a4d9de1b19f4b..882943ef2069182816fb2d96945857f3f5a74889 100644
--- a/src/endWeek/saServant.js
+++ b/src/endWeek/saServant.js
@@ -108,32 +108,11 @@ App.SlaveAssignment.servant = function saServant(slave, stewardessBonus = 0) {
 		}
 	}
 
-	/**
-	 * @param {FC.SlaveState} slave
-	 */
-	function doOralUse(slave) {
-		// TODO: this flat unchecked oral sex is a bit problematic
-		// who is she serving and why aren't they benefiting?
-		// is the current number of servants correct to accomplish this task?
-		// why can't the player prevent this on-assignment sex while still getting the other benefits of having a servant?
-		let oralUse = jsRandom(5, 10);
-		if (V.policies.gumjobFetishism === 1) {
-			if (slave.teeth !== "removable") {
-				oralUse = Math.trunc(oralUse / 2);
-			} else {
-				oralUse = Math.trunc(oralUse * 1.5);
-			}
-		}
-		oralUse = Math.ceil(oralUse * restEffects(slave, 11));
-		actX(slave, "oral", oralUse);
-	}
 
 	/**
 	 * @param {FC.SlaveState} slave
 	 */
 	function jobEffects(slave) {
-		doOralUse(slave);
-
 		if (slave.relationship === -2) {
 			r.push(`${He} does ${his} best to perfect your domesticity due to ${his} emotional bond to you.`);
 		} else if (slave.relationship === -3 && slave.devotion > 50) {
@@ -180,6 +159,23 @@ App.SlaveAssignment.servant = function saServant(slave, stewardessBonus = 0) {
 				slave.boobsMilk = 0;
 			}
 		}
+
+		if (App.Entity.facilities.servantsQuarters.upgrade('monitoring')) {
+			r.push(`The enhanced monitoring systems ensures ${he} is always busy and working, improving ${his} effectiveness.`);
+			if (slave.fetish !== Fetish.MINDBROKEN && slave.devotion < 20 && jsRandom(0, 3) === 1) {
+				if (isHorny(slave) && jsRandom(0, 1) === 1) {
+					r.push(`Unable to control ${his} libido, ${slave.slaveName} is caught desperately dry humping a bed ${he} should be making;`);
+				} else {
+					r.push(`A camera catches ${him} slacking off and skipping out on assigned work;`);
+				}
+				r.push(`${S.Stewardess ? S.Stewardess.slaveName : V.assistant.name} is immediately informed to punish ${him} appropriately, <span class="devotion inc">increasing ${his} obedience.</span>`);
+				slave.devotion += S.Attendant ? 3 : 2;
+				if (slave.trust > -30) {
+					r.push(`Realizing ${he} is always being watched <span class="trust dec">increases ${his} fear of you.</span>`);
+					slave.trust -= 2;
+				}
+			}
+		}
 	}
 
 	/**
diff --git a/src/js/economyJS.js b/src/js/economyJS.js
index c6948b0cb40abeaa85b4d8ca6535943c1a117df8..0268717235ed2a851c60cc42188c0452d9d9c902 100644
--- a/src/js/economyJS.js
+++ b/src/js/economyJS.js
@@ -1140,6 +1140,9 @@ globalThis.houseServantEffectiveness = function(slave) {
 	if (App.Data.Careers.General.servant.includes(slave.career) || slave.skill.servant >= Constant.MASTERED_XP) {
 		effectiveness *= 1.1;
 	}
+	if (App.Entity.facilities.servantsQuarters.upgrade('monitoring') === 1) {
+		effectiveness *= 1.1;
+	}
 	effectiveness = Math.trunc(effectiveness * App.SlaveAssignment.PartTime.efficiencyModifier(slave) * restEffects(slave) / 10);
 	return effectiveness;
 };