🚿 Bathroom Humidity Exhaust Fan

Yes you can I will PM you.

1 Like

So in my bathroom, I have a light switch controlling the fan.

I actually have an automation that wait for the switch to be on, wait 15 mins and turn it off.

I would like to use my automation at the same time as this blueprint, but without them fighting each other.

AFAIK, there’s no way to check if another automation is running.

Could it be a good idea to add an input boolean to this blueprint? Having it set to true while the automation is running.

1 Like


Question, why do you have the fan come on when the light is on and time out after 15 min and then also use this blueprint. The idea of this blueprint is to turn the fan on when you have a shower and off when you are done.

If you would like the fan on every time the light is on why not just use that and when you turn off the light turn the fan off and or have a delay to turn the fan off when you turn the light off. You can use my other blueprint to do this Toilet Exhaust Fan with time delay

Thanks for this useful blueprint! I have two suggestions that might make it even better…

  1. I don’t think the falling derivative is really the right trigger for turning the fan off. A good exhaust fan should cause humidity to decrease, so a negative value should just indicate “fan is working” — and a steep decrease doesn’t necessarily mean the shower is over. I think a better end trigger would be: when humidity returns to within N%-points of what it was when the initial rising humidity trigger tripped.
  2. It would also be nice to have a direct humidity-limit trigger — if it’s over 80%, I want the fan on even if it somehow crept up to that level, and I don’t want it to turn off. (I guess I could do that by having a separate automation with that trigger and which disables this automation? But that seems clunky.)

Thanks for considering!

Hi Matthew, glad you like it :slightly_smiling_face:

I have been using this automation for some time now and has never missed a beat.

You could do this but I have found that if the humidity is over 80% it is just natural humidity (everywhere even outside) and or having a shower.

It can be a bit clunky even if you have it in the one automation as you could have 2 triggers fighting one another. You would need to have your conditions set correctly. If your looking for a seperate automation to do this then try my Temperature Control Exhaust Fan. Even though is says temperature it will work with humidity.

1 Like

I’m having some trouble finding a threshold which isn’t getting false positives. For now I have it conservative and rely on the timeout fallbacks. I think that my suggestion would avoid that.

Right, those are both times the fan probably should be on. :slight_smile:

You may of seen this but if not have a read of this Click Here

Also maybe try a different location for your humidity sensor. I have my one on the ceiling directly above the shower on the fan inlet.

:thinking: maybe not. Then I would need a fan for my whole house… but that would just suck the outside air in that is above 80% right :pensive:. What you could use is a dehumidifier. Would the fan come on at night when sleeping because it goes above 80%? It is a tricky one.

The first time takes a while to set it up, but once you get it right, it works perfectly. This is one automation I love.

If you need more help just let us know. :slightly_smiling_face:

1 Like

I don’t have the fan on at the same time as the light.

I have a dedicated hardware light switch for the fan. We turn it on manually when crafting a poop, and I want the fan to turn off after 15 minutes.

I just don’t want to interrupt your blueprint from doing its job.

I see, when you said “Light Switch” I thought it was a light but it is just a switch that turns the fan ON.

Ok, so the problem you have is the fan can not be the trigger for the 15 min time delay as it will affect this blueprint. So… maybe, you can use a contact sensor on the toilet seat lid? (but who closes the lid right :thinking:) maybe a better option would be to use a distance sensor, so if someone sits on the seat the distance is close and this is the trigger? Maybe you can position a motion sensor that only picks up someone sitting on the toilet? If you can do something like this you then could use the Toilet Exhaust Fan and Bathroom Humidity Exhaust Fan blueprints and never have to manually turn the fan on again.

The only problem that may accrue is if you go to the toilet and then have a shower. Maybe the toilet delay time can be shorter than 15 min.

Or you could have a contact sensor, or a smart button near the toilet so you could use that as the trigger if you know your not going to have a shower and then the fan would do the delay of 15 min.

Shelly Smart Button. They have a new one coming out soon that is like a car remote. Stick that to the wall.

New update 1.2

  • Added “Fan Speed - Off Switch Option”. Normally used if you have a fan with different speeds and you need to use a different entity selection to turn it OFF.
  • Added the ability to select lights in “Fan Switch”. Good if you have a niche in the shower that has a LED’s strip lighting and you would like to turn them ON automaticity when showering.
  • Cleaned up by-pass selection.


Blacky :grinning:

1 Like

This could be a dumb question but is it possible to use this automation with the fan device being a script for turning on and another one for turning off? I am new to this so very much still learning. Many thanks. As below, have just masked the last bytes of the MAC address to x’s.

alias: Bathroom Humidity Exhaust Fan
description: “”
path: Blackshome/bathroom-humidity-exhaust-fan.yaml
trigger: sensor.temperature_humidity_sensor_xxxx_humidity
- script.bathroom_fan_on
- script.bathroom_fan_off

Replying to my own question - it looks to work well! Great blueprint, many thanks.

First off, thanks for the blueprint. However, I can’t seem to get my entities showing as a line graph on my dashboard. They just appear as numbers. Can you provide any pointers? I’m sure I’m missing something simple.

@mpalatsi Some time you just have to wait for the data to build and then the graph will show up. Let us know if this is the case or if they still stay as numbers.

Silly question but how do you update the blueprint and not delete/recreate existing automations?

@PrayerfulDrop it is not a silly question. See below new FAQ



There are a couple ways to do this. Below is one example on how to update a blueprint. You can also find out more information on the Home Assistant official website if you prefer.

This is the official Home Assistant web site Using Automation Blueprints - Home Assistant

Example Below

1 - First most important, do a full backup of your Home Assistant, and store it in a location where you can get to it if you brick your Home Assistant (on a separate computer not running Home Assistant).

2 - To update a blueprint you must have a file editor. There are few to choose from. If you don’t have one already installed then this is how to add the official “File Editor” into your Home Assistant. Go to Settings / Add-ons and then click on “add-on store”. In the " Official add-ons" heading you will see “File Editor”, click on it and install it.

3 - In all my Blueprints, the official latest code is in the first post at the top.

  • At the top of this post Click Here there is a link to my GitHub, in the code area there will be a “Raw” button. If you click on it you will then be able to easily copy the code without copping anything else.

4 - When you have copied the code, go into your file editor. At the top leftish there is a folder icon. If you click on it a navigation area is shown. Navigate to the file of the blueprint you would like to update. For this blueprint it should be in “blueprints/automation/Blackshome” and select “bathroom-humidity-exhaust-fan.yaml” file.

5 - Once you select the file you should see the code of the blueprint displayed in the right section. At the top of all my blueprints it should say the name, in this case, “Bathroom Humidity Exhaust Fan” and you should also see the version you are on. This let’s you confirm that you are on the correct blueprint your about to update and not changing some other code that could brick you HA. Once confirmed, delete all the code and paste the new code you copied before in its place. You should now see the name again and the new version in the code at the top confirming your paste was successful and you are happy to proceed. When you pasted the code a red save button pops up and most importantly you will also see a green tick. If you don’t see this green tick, then stop, something is wrong, check the steps again until you see the green tick. If you see the green tick and you are happy with everything (again, a backup of HA) then and only then should you click save.

6 - Once saved you will need to reload the blueprint to reflect the changes before it will take affect. In the file editor you will see a cog wheel at the top right. When you click on it, select “Reload Automations”. A confirmation will pop up to confirm if your happy to proceed, click yes if your happy.

You have now updated a blueprint :tada:.

To check everything was done correctly, go into your automation and or the blueprint, you should see the new version displayed at the top confirming you are on the latest.


Blacky :smiley:

Back to FAQ: Click Here

1 Like

@Blacky is it possible to set a “block” entity or number(>70%), if I open the window and close it after 10min, the fan switch to on after some minutes, because the humity rise againn

Posted this to the wrong thread earlier, oops!

This is working fine for me, fully automated now. I think it’s important to get your sensor up high for best response to the humidity rise/fall.

1 Like

@daschmidt currently it is not possible, but thanks for the suggestion. I will add it to the suggestion list.

If you are concerned about humidity in your bathroom then you could try this automation.

You can turn the fan or a dehumidifier ON when humidity rises.