Cooling the RPi 4B is not necessary. I say this because the RPi has built-in thermal protection - a closed loop system that monitors the temperature sensors in the RPi hardware, and "throttles" the system clock when necessary to keep the temperature in the Safe Operating Area. AFAIK, no one has ever lost their RPi to over-heating. There are several other Q&A here that are closely related to your question - for example.
The exception to the "No Cooling Needed" advice would be if your RPi were either located in a high ambient temperature environment, or engaged in a high stress application such as mining bitcoins & that sort of thing.
RPi 4 Thermal Testing performed by the Raspberry Pi Foundation is mostly self-congratulatory publicity, but it does contain some useful information. For example: RPi will run cooler if placed in a vertical orientation! There was also independent RPi 4 Thermal Testing by Tom's Hardware, which provides a slightly better explanation of its results.
I have added heatsinks to my RPi4, and I have a case with a fan built in, but I've never found a situation where it was needed. I do monitor the temperature of my RPi4 with a small script that I run as a cron
job:
0,15,30,45 * * * * /home/pi/take_temp.sh
#!/bin/bash
# shell script take_temp.sh
CURRENTDATETIME=`date +%D%t%R`
TEMP=$(</sys/class/thermal/thermal_zone0/temp)
echo $CURRENTDATETIME $((TEMP/1000)) >> /home/pi/temp_data.txt
Since I began logging this temp
data on 12/30/19, the highest temperature I've recorded was 59℃. My RPi4 is powered up & running 24x7, but is lightly loaded for the most part.
If you decide to go ahead with the fan, this Q&A may be helpful - note in particular the option using the device tree overlay
. Alternatively, if you are happy for the fan to run continuously, there are fans available that will run from either the 3.3V (at a slower speed) or the 5V supply (at a faster speed).