how often do you need to clean your fans?

Clean anything that you notice is dirty. Restricted airflow is the main issue with dirt. If it builds in the fans AND in the fins of the heatsink, it will restrict airflow.

Routine frequency is arbitrary, just clean them when they are dirty. Some PC's are in locations that build up dirt and dust more than others.
 
Start cleaning on a monthly basis. The cleaning frequency will depend on the environment the computer is located in (room).

More important is the cleaning of the CPU heatsink fins; this is where a lot of dust accumulates and affects heat transfer. Use a can of compressed air and do it carefully. No need to remove or disconnect anything.
 
It all depends on whether you have filters in front of the fan intakes and whether you run your case on positive or negative pressure.

Negative pressure cases (more exhaust fans than intake fans) and cases without filters in front of intakes probably needs cleaning every 3 months.

I recently looked at a computer I built > year ago that has filters and positive pressure, and there was only a modicum of dust and a few thin strands of spider webs.

You should most definitely clean out the CPU and GPU fans. If you have a air-based heatsink, make very sure you blow the dust out between the fins - for water coolers, the dust in the radiator fins - dust there acts as an insulator and impairs the heat transfer and efficiency of the cooler.
 
When you clean any fan using a can of compressed air, use a piece of wood to block the rotation of the fan while the it is being blasted by the compressed air. If not, the fan may reach excessive RPMs greater than the designed RPM and bearing failure may occur.
 

8whas the best way to clean
 

8whats the best way to clean
 

8whats the best way to clean
 

8whats the best way to clean
 

8whats the best way to clean
 

8whats the best way to clean
 

8whats the best way to clean