diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm
index 6bdf3cff8e..e84853da3d 100644
--- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm
+++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm
@@ -151,10 +151,13 @@
to_chat(user, "You need more space cleaner!")
return TRUE
- if(istype(O, /obj/item/soap))
- var/obj/item/soap/P = O
+ if(istype(O, /obj/item/soap) || istype(O, /obj/item/reagent_containers/glass/rag))
+ var/cleanspeed = 50
+ if(istype(O, /obj/item/soap))
+ var/obj/item/soap/used_soap = O
+ cleanspeed = used_soap.cleanspeed
user.visible_message("[user] starts to clean \the [src].", "You start to clean \the [src]...")
- if(do_after(user, P.cleanspeed, target = src))
+ if(do_after(user, cleanspeed, target = src))
user.visible_message("[user] has cleaned \the [src].", "You clean \the [src].")
dirty = 0
update_icon()