7 Easy Steps to Speed Up Your Raspberry Pi Desktop

If you click our links and make a purchase, we may earn an affiliate commission. Learn more

If you’ve ever tried using your Raspberry Pi as a desktop, you know how slow it can be. Booting up takes forever, and even simple web browsing can be frustrating. I’ve been through it too, and luckily, I found some fixes that really helped. In this guide, I’ll walk you through them.

The Raspberry Pi desktop experience can be enhanced by combining faster storage, reliable power and cooling, safe overclocking, lighter applications and browsers, and simple system optimizations.

The best part is that you don’t need to spend a fortune on upgrades. With just a handful of tweaks and smarter choices, you can squeeze out a lot more speed from the hardware you already have. Let’s go step by step and unlock your Pi’s real potential.

If you’re new to Raspberry Pi or Linux, I’ve got something that can help you right away!
Download my free Linux commands cheat sheet – it’s a quick reference guide with all the essential commands you’ll need to get things done on your Raspberry Pi. Click here to get it for free!

Step 1: Start With a Clean, Lightweight OS

Trim the fat: start with a lean OS.

The first step to improving your Raspberry Pi desktop experience begins with installing the Raspberry Pi OS itself. You should ideally install the most minimalistic and debloated version of Raspberry Pi OS.

The latest version of Raspberry Pi OS is available in three different configurations:

  • Raspberry Pi OS Lite – Only CLI-based interface. Suitable for headless servers.
  • Raspberry Pi OS with Desktop – Includes the PIXEL desktop environment and basic GUI utilities.
  • Raspberry Pi OS with Desktop and Recommended Software – Contains extra software like office apps, media tools, coding, and educational apps, etc.

Out of these, I think Raspberry Pi OS with Desktop is the ideal choice for a desktop experience. It contains only the essential GUI applications.

In the latest version of the Raspberry Pi Imager, this is the default option.

Once you have installed Raspberry Pi OS, the first thing you should do is to disable all unnecessary startup services. You can check what all services are running at startup by using this command in a terminal:
systemctl list-unit-files --type=service --state=enabled

Prefer reading without ads and popups?
Members get an ad-free version of every guide, plus exclusive project support.
Join the Community | Sign In

You can use a tool like htop to monitor your system usage statistics and determine which services are consuming the most resources.

You can then use this command to disable a specific service:
sudo systemctl disable <service name>

However, don’t disable services unless you are sure what they do and that you don’t need them for your daily usage. Following is a list of safe-to-remove services for most use cases:

  • avahi-daemon.service → Provides network discovery (Bonjour/mDNS). Safe to disable unless you need AirPrint, automatic device discovery, or some IoT tools.
  • bluetooth.service + hciuart.service → Only needed if you use Bluetooth devices (keyboard, mouse, speakers, controllers). Disable if you don’t.
  • cups.service + cups-browsed.service → Printing services. Disable if you never print from your Pi.
  • ModemManager.service → Manages USB modems (3G/4G sticks). Disable if you don’t use mobile data modems.
  • triggerhappy.service → Captures special key/button events (primarily for custom input devices). Rarely useful on a desktop.
  • sshswitch.service → This runs on first boot to help you set the SSH password option. Once SSH is enabled and secured, it’s no longer needed.
  • wayvnc-control.service → Related to Wayland remote desktop (VNC). Disable if you don’t use remote access via WayVNC.
  • glamor-test.service / rp1-test.service → Testing services tied to graphics/driver experiments. It is usually not required for day-to-day desktop use.

By starting with a lean OS and disabling unnecessary services, you free up memory and CPU cycles right from the beginning. This simple cleanup alone can make your Raspberry Pi feel noticeably faster and more responsive.

Quick note: If you find it hard to remember all these commands, I’ve put them all on a one-page cheat sheet. You can download it for free here so you have it handy whenever you're working on a project.

Step 2: Use a Fast and Reliable Storage Medium

Ditch the slow SD card: go SSD or NVMe.

The next most important step towards improving your Raspberry Pi performance is the choice of storage medium to boot from.

By default, most people use an SD Card to boot from. However, not all SD Cards are made equal. The minimum recommended card for a Raspberry Pi for daily use is an A1/A2-rated card. For example, see this card on Amazon.

If you already have an SD Card and want to verify its read and write speeds, you can do so using dd. For example, to check the write speed of your SD Card, you can run this command:
dd if=/dev/zero of=~/testfile bs=1M count=100 conv=fdatasync status=progress

Similarly, you can check the read speed of your SD Card by reading this file back to your memory. You can do so using this command:
dd if=~/testfile of=/dev/null bs=1M count=100 status=progress

Note: If you see an impossibly high read speed, e.g., 1.5 GB/s, then dd is reading from your cache or RAM, and not from your SD Card. To force it to read from your SD Card, you need to clear the cache first. You can do this by running this command: sync && sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'

High-end A2-rated memory cards can achieve speeds of up to 200 MB/s. However, the hardware limitations of the Raspberry Pi may affect performance. If you’re experiencing read speeds of 40-60 MB/s and write speeds of 20-30 MB/s, those speeds should be sufficient for most use cases.

However, if you are looking for a complete desktop PC experience, I recommend going for an SSD as your boot device. If you are using Raspberry Pi 5, it can even connect directly to NVME SSDs through PCIE (using a HAT/enclosure) for a read-write speed of up to 800 MB/s.

Lost in the terminal? Grab My Pi Cheat-Sheet!
Download the free PDF, keep it open, and stop wasting time on Google.
Download now

Even if you are not using Raspberry Pi 5, you can still boot from an NVME SSD using a USB 3.0 enclosure for NVME SSDs. However, the speed of the USB port will limit this, and you can only expect a maximum of 500 MB/s.

If you already have your Raspberry Pi OS set up on your SD Card and want to switch to an SSD, you can follow this in-depth tutorial on How to Migrate From SD Card to NVMe SSD on Raspberry Pi.

Choosing a good storage is one of the most significant upgrades you can make for your Raspberry Pi. A good A1/A2 SD card is sufficient for most users, but upgrading to an SSD unlocks significantly faster speeds, making the Pi feel more like a real desktop PC.

Step 3: Optimize Power Supply and Cooling

Feed it right: power and cooling matter.

The Raspberry Pi is very sensitive to both power and temperature. If the power supply isn’t strong enough, the board automatically throttles performance to stay stable. Similarly, when it overheats, it slows down to protect itself — which is why your Pi might feel laggy after running for a while.

The official Raspberry Pi power supply is the safest choice, as it guarantees a steady 5V/3A output. If you’re using a third-party charger, make sure it’s not dropping below 5V under load — that’s when the little lightning bolt warning starts showing up.

official power supply vs phone charger

To check if your Raspberry Pi is throttling or not, you can run this command in a terminal:
vcgencmd get_throttled

This will show you a hex code as its output. To decode the hex codes, you can consult the following lookup table:

0x0No problems (all good)
0x50000Undervoltage has occurred since the last boot
0x1Currently undervoltage
0x10000Undervoltage has occurred since last boot
Throttled Hex Code Translation

You can read this in-depth guide on how to power a Raspberry Pi to learn more about Raspberry Pi power requirements.

Besides power supply, the Raspberry Pi can also throttle due to overheating. For cooling, even a small heatsink and fan can make a huge difference.

On the Pi 4 and especially the Pi 5, an active cooling case or a simple fan HAT helps prevent thermal throttling during heavy browsing or multitasking. If you want a silent option, passive aluminum cases (Amazon Link) that act as giant heat sinks also work well.

You can check the temperature of your Raspberry Pi at any time, using the command:
vcgencmd measure_temp

Raspberry Pi generally starts throttling above 80°C. With a good heat sink and/or fan, your Raspberry Pi should remain well under 60°C even when running under load.

Read here for in-depth guides on how to install a fan on your Raspberry Pi and whether your Raspberry Pi needs a heatsink.

Stable power and proper cooling don’t just keep your Raspberry Pi safe; they ensure it always runs at full speed without sudden slowdowns.

Step 4: Overclock for Extra Performance (Safely)

Unlock hidden power with safe overclocking.

The Raspberry Pi isn’t locked to its default/ out-of-the-box speeds. With a minor tweak, we can make it run noticeably faster. Overclocking means pushing the CPU (and optionally GPU) a little beyond its stock frequency.

On a Raspberry Pi 4, for example, you can often bump the CPU from 1.5 GHz up to 2.0 GHz or even higher without issues. See below for a complete overclock cheatsheet for Raspberry Pi 4 and Raspberry Pi 5:

DefaultMaximum (Stable)
Raspberry Pi 4CPU Clock1.5 GHz~2..147 GHz
GPU Clock500 MHz~750 MHz
Raspberry Pi 5CPU Clock2.4 GHz~3.0 GHz
GPU Clock800 MHz~1.1 GHz
Overclocking Cheet Sheet

As you can see, there is quite a lot of juice that can still be squeezed out of your Raspberry Pi. You can overclock your Raspberry Pi by editing the /boot/firmware/config.txt file. Read this guide on how to overclock your Raspberry Pi for a step-by-step guide.

Keep in mind that overclocking will significantly increase the temperature of your Raspberry Pi. If you do not use adequate cooling and a proper power supply, it may become counterproductive due to frequent throttling.

Overclocking won’t turn your Pi into a gaming PC, but it does give you a free performance boost that’s especially noticeable when using it as a desktop or in retro-gaming performance. Just remember, keep an eye on the temperature and don’t push beyond stable values.

Step 5: Choose the Right Browser

Tame the web: pick a lightweight browser.

If you, like me, tend to browse with multiple tabs open at once, it’s important to choose your browser wisely. The Raspberry Pi comes with the Chromium browser by default. While it is lightweight, there are better options available.

There are a couple of alternatives available. Midori is a lightweight web browser with special emphasis on speed and efficiency. You can follow this tutorial on how to download the Midori browser.

If you don’t want to switch to some other web browser, there are a few tweaks that you can apply to Chromium that can give you a boost in performance.

For example, you can enable hardware acceleration and offload some video decoding to the GPU. To do so, open this link in your Chromium:
chrome://flags

Find “Override software rendering list” and set it to Enable. Then, restart Chromium for the changes to take effect.

Lost in the terminal? Grab My Pi Cheat-Sheet!
Download the free PDF, keep it open, and stop wasting time on Google.
Download now

Another thing that you can do is to tweak the launch flags of Chromium to optimize it for limited resources. To do so, follow these steps:

  • Copy the Chromium desktop file from the default location to the home directory using the command:
    cp /usr/share/applications/chromium.desktop ~/.local/share/applications/
  • Now edit the desktop file using your preferred text editor:
    nano ~/.local/share/applications/chromium.desktop
  • Look for the “Exec” line and add your preferred launch flags.
  • Refresh the menu/taskbar by logging out and then logging back in.

Here is a list of all the command-line flags and their brief description that you can use with Chromium:

  • –disable-features=TranslateUI – Disables the built-in translation popup (Google Translate UI). Saves a bit of RAM and CPU if you don’t need it.
  • –process-per-site – Runs one process per site, instead of one per tab. Uses less memory when you have multiple tabs open from the same domain.
  • –disk-cache-size=104857600 – Sets the disk cache to ~100 MB. Keeps caching under control, so Chromium doesn’t hog your SD card/SSD with huge cache files.
  • –disable-smooth-scrolling – Turns off fancy scrolling animations. Pages feel “snappier” and reduce CPU/GPU overhead on the Pi.
  • –enable-low-end-device-mode – Forces Chromium into a “lightweight mode” with fewer background processes — ideal for Pi’s limited RAM.
  • –disable-extensions – Starts Chromium with all extensions disabled. Great for troubleshooting or if you want a really lean browsing session.

Since the browser is the most frequently used application on a desktop, optimizing your browser for Raspberry Pi resources can have a significant impact on how your system feels in daily usage.

Step 6: Manage Resource-Hungry Apps

Don’t let hungry apps eat your Pi alive.

One of the biggest reasons your Raspberry Pi desktop feels slow is simply that some apps are too “heavy” for the hardware. Modern programs built with Electron (like Slack, VS Code, Discord) are great on a regular PC, but they eat up RAM and CPU cycles very quickly on the Pi.

Luckily, lighter alternatives are available for most of these apps. For coding, you can try using Thonny instead of VS Code. You can read this guide to get familiar with Thonny.

Similarly, several web-based alternatives to Libre Office can help you maintain a leaner system. Here are some alternatives to MS Excel and MS Word that you can consider.

While the default applications of Raspberry Pi OS are lean in themselves, there are still a lot of alternatives that you can consider to enhance your experience further.

Especially if you are considering a new application, I recommend exploring lightweight alternatives. There is a good amount of lightweight options available for most applications that are specifically designed for systems like Raspberry Pi OS.

You can also refer to this article for suggestions regarding applications to use on your Raspberry Pi.

By being selective with your apps, you give the Raspberry Pi room to breathe. Lightweight software keeps the desktop responsive so you can multitask without the constant lag.


🛠 This tutorial doesn't work anymore? Report the issue here, so that I can update it!

Want to connect with other Raspberry Pi fans? Join the RaspberryTips Community. Ask questions, share your projects, and learn from each other. Join now.

Step 7: Fine-Tune System Settings

Fine-tune the system for a desktop that flies.

Having started with a lean OS installed on good hardware and tweaked to utilize resource-efficient applications, our Raspberry Pi is already in great shape to provide us with a speedy desktop experience.

We can enhance our experience further with some minor tweaks in system settings. Here are a few adjustments that I recommend:

Adjust GPU Memory Split

This setting determines the amount of RAM allocated to graphics versus the CPU. If you’re watching videos or doing anything graphics-heavy, allocate more GPU memory. For light use, keep it lower to free RAM.

To access this setting, edit the /boot/firmware/config.txt file to add one of the following towards the end:

  • gpu_mem=64 → good for light desktop use (coding, office apps).
  • gpu_mem=128 → good balance for video playback and desktop browsing.
  • gpu_mem=256 → if you use lots of video or graphics (but reduces available RAM for apps).

Enable zram Swap

This setting keeps the Pi from slowing down when RAM is full. Instead of writing to disk, zram compresses memory on the fly. This makes the Pi less likely to “choke” when RAM runs out and keeps your SD card/SSD healthier.

You can enable this by simply installing the zram-tools package. It is available through official repositories. Run this command in a terminal:
sudo apt install zram-tools

After installing, it will automatically be enabled on your next reboot.

Related: Top 25 Raspberry Pi Tips and Tricks You’ll Actually Use

With just a few clever tweaks, your Raspberry Pi can feel far more like a real desktop computer. From storage upgrades to lighter apps and safe overclocking, each small change adds up to a smoother, faster experience. Try these steps one at a time, and you’ll be surprised at how capable your Pi really is.

Whenever you’re ready, here are other ways I can help you:

Test Your Raspberry Pi Level (Free): Not sure why everything takes so long on your Raspberry Pi? Take this free 3-minute assessment and see what’s causing the problems.

The RaspberryTips Community: Need help or want to discuss your Raspberry Pi projects with others who actually get it? Join the RaspberryTips Community and get access to private forums, exclusive lessons, and direct help.

Master your Raspberry Pi in 30 days: If you are looking for the best tips to become an expert on Raspberry Pi, this book is for you. Learn useful Linux skills and practice multiple projects with step-by-step guides.

Master Python on Raspberry Pi: Create, understand, and improve any Python script for your Raspberry Pi. Learn the essentials step-by-step without losing time understanding useless concepts.

You can also find all my recommendations for tools and hardware on this page.

Similar Posts