I ordered a Pi 3 and accessory kit here from Amazon, it comes with 2 heat sinks. I won't be overclocking the Pi, would I still need to worry about heat issues? Eventually, this will be in an enclosed area outside of the casing with plenty of air circulation.


3 Answers 3


No a heatsink is not required, The Pi3 has been reported to generate more heat than previous models, but the heatsink is not required. You can install it for some extra thermal protection, but the Pi will throttle the clock speed to maintain a safe temperature. Heatsinks are included in many of these kits to increase the perceived value.

  • 3
    I don't know how intrusive the throttling will be, or what load the OP has in mind, but I'd argue that a heatsink might be necessary to reach the necessary performance point in some scenarios - maybe mostly dictated by the 'enclosed area' or by the application... Commented Mar 20, 2016 at 10:31
  • 1
    I had this question about the RPi 3B+, so I did a before/after measurement. Without heat sinks, the CPU ran between 59C and 61C. With heat sinks, it runs between 52C and 54C.
    – zslayton
    Commented Jun 6, 2019 at 14:04

As the answers state, no heatsinks are required.

However, following on from Snowman's comment to Maxthon Chan's answer, and taking some examples from the Raspberry Pi site1, should you want to check/measure the temperature that your Pi is running at, you can use the command:

/opt/vc/bin/vcgencmd measure_temp

Should you find yourself using this command frequently, you may wish for a shortcut. To do this, you could use an alias, such as temp. To set this up, run the following commands:

cd ~
nano .bash_aliases

and add the following line

alias temp='/opt/vc/bin/vcgencmd measure_temp'

In case of error

Note that, should you be running an older version of Raspbian, and encounter the error:

/opt/vc/bin/vcgencmd: error while loading shared libraries: libvcos.so: cannot open shared object file: No such file or directory

then you should run

 LD_LIBRARY_PATH=/opt/vc/lib /opt/vc/bin/vcgencmd measure_temp

and the alias would become

alias temp="LD_LIBRARY_PATH=/opt/vc/lib && /opt/vc/bin/vcgencmd measure_temp"


Run the following command, which gives the answer in millidegrees Centigrade, and divide by 1000 to get °C:

cat /sys/class/thermal/thermal_zone0/temp

Bash script for CPU and GPU temperatures

cpuTemp0=$(cat /sys/class/thermal/thermal_zone0/temp)
cpuTempM=$(($cpuTemp2 % $cpuTemp1))

gpuTemp0=$(/opt/vc/bin/vcgencmd measure_temp)

echo CPU Temp: $cpuTemp1"."$cpuTempM"ºC"
echo GPU Temp: $gpuTemp0

1 All examples taken from Show RPI's Temperature with a command

  • For the temp alias to work, you need to run source .bash_aliases This will re-load the .bash_aliases file, which is what rebooting or re-logging in does, just without the wait. From: raspberrypi.org/forums/viewtopic.php?t=144613
    – user112656
    Commented Dec 27, 2019 at 0:48
  • It would probably be better to add a permanent entry to ld.so.cache (eg. via sudo bash echo /opt/vc/lib > /etc/ld.so.conf.d/opt-vc.conf && sudo ldconfig) than applying LD_LIBRARY_PATH. I think this already exists by default in current Raspbian.
    – goldilocks
    Commented Dec 27, 2019 at 14:47

No heatsink is required, but this does not prevent you from adding one. If your operating environment can get a bit warm and you don't want it to thermal throttle, you can add one (optionally strap a fan on it.)

I have all my Pi heatsinked since I use cases while put lots of stress on the core, and one of them have a fan strapped on it to improve cooling as it operates in a warm equipment roon with an average ambient temperature of 45ºC.

  • 1
    This answer touches on the key point: measure its temperature if one is concerned about potential overheating.
    – user19386
    Commented Mar 8, 2016 at 20:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.