Getting Started

How to Set Up Plex on Raspberry Pi — Budget Server Guide

Published September 1, 2026 · 10 min read

A Raspberry Pi is one of the cheapest ways to run a Plex Media Server. For under $100 in total hardware costs, you can have a silent, low-power server that streams your movies, music, and photos to devices on your home network. But there are real limitations you need to understand before committing. This guide covers which Pi models work, how to install Plex, what you can and cannot do, and how to optimize performance.

Which Raspberry Pi Should You Use?

Raspberry Pi 5 (Recommended)

The Raspberry Pi 5, released in late 2023, is the first Pi that handles Plex reasonably well. It features a Broadcom BCM2712 quad-core Cortex-A76 CPU clocked at 2.4 GHz, which is a significant upgrade over the Pi 4. It comes in 4 GB and 8 GB RAM configurations. The 8 GB model is recommended for Plex.

The Pi 5 also adds a PCIe 2.0 interface, enabling NVMe SSD storage through an adapter board. This is a game-changer for Plex because it eliminates the I/O bottleneck of USB-attached storage and MicroSD cards.

Price: Approximately $60 (4 GB) or $80 (8 GB), plus case, power supply, and storage.

Raspberry Pi 4 Model B (Budget Option)

The Pi 4 has a Broadcom BCM2711 quad-core Cortex-A72 CPU at 1.8 GHz. It is available in 2 GB, 4 GB, and 8 GB configurations. The 4 GB or 8 GB models are suitable for Plex.

The Pi 4 is slower than the Pi 5 and lacks the PCIe interface, but it is cheaper and widely available. It handles Direct Play streaming for one or two simultaneous users adequately.

Price: Approximately $35-55 depending on RAM configuration.

Older Models (Not Recommended)

The Raspberry Pi 3 and earlier models have insufficient CPU power and RAM for Plex. They struggle with even basic library scanning and metadata downloads. Do not attempt to run Plex on anything older than a Pi 4.

What You Need

Here is a complete shopping list for a Raspberry Pi Plex server:

Total cost: Approximately $90-150 depending on your storage choices, not counting the external hard drive you may already own.

Step 1 — Install the Operating System

Download the Raspberry Pi Imager from raspberrypi.com on your computer. Insert your MicroSD card (or NVMe SSD via a USB adapter) and use the Imager to write Raspberry Pi OS (64-bit, Lite edition). The Lite edition is recommended because it does not include a desktop environment, saving RAM and CPU for Plex.

Before writing, click the gear icon in the Imager to configure:

Write the image, insert the card into your Pi, connect Ethernet and power, and wait a minute for it to boot. Then SSH into it from your computer:

ssh username@plexpi.local

Step 2 — Install Plex Media Server

Plex provides official ARM64 packages for Raspberry Pi. Update your system and install Plex:

sudo apt update && sudo apt upgrade -y

# Add the Plex repository
echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list
curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/plex.gpg

# Install Plex
sudo apt update
sudo apt install plexmediaserver -y

Plex will install and start automatically as a system service. Verify it is running:

sudo systemctl status plexmediaserver

Access the setup wizard by navigating to http://plexpi.local:32400/web in a browser on your computer. Sign in with your Plex account to claim the server.

Step 3 — Mount Your External Drive

Plug your external USB drive into one of the Pi's USB 3.0 ports (the blue ports). Identify the drive:

sudo fdisk -l

Look for your external drive (usually /dev/sda1). Create a mount point and mount it:

sudo mkdir -p /mnt/media
sudo mount /dev/sda1 /mnt/media

To mount automatically on boot, add an entry to /etc/fstab. First, find the drive's UUID:

sudo blkid /dev/sda1

Then add a line to /etc/fstab:

UUID=your-uuid-here /mnt/media auto defaults,nofail 0 2

The nofail option ensures the Pi still boots if the drive is not connected. Set permissions so Plex can read the drive:

sudo chown -R plex:plex /mnt/media

Step 4 — Add Libraries

In the Plex web interface, add libraries pointing to folders on your mounted external drive (e.g., /mnt/media/movies, /mnt/media/photos). Plex will begin scanning and downloading metadata.

The initial scan is the most CPU-intensive operation you will run on the Pi. For large libraries, expect this to take several hours. Let it run without interruption — scanning in the background while trying to stream will result in poor performance on both tasks.

Understanding the Limitations

No Transcoding

This is the biggest limitation. The Raspberry Pi's ARM CPU cannot transcode video in real time. There is no hardware transcoding support (no Intel Quick Sync, no NVIDIA GPU). Even a single 1080p software transcode will overwhelm the CPU and result in unwatchable buffering.

This means every client must Direct Play your media. In practice, this works well if:

If any of your clients regularly require transcoding, a Raspberry Pi is not the right choice. Consider a mini PC with an Intel CPU instead (see our hardware requirements guide).

Limited Simultaneous Streams

Even with Direct Play, the Pi 5 can comfortably handle two to three simultaneous streams. The bottleneck is not CPU (since Direct Play requires minimal processing) but rather USB bandwidth for the external drive and network I/O. A fourth or fifth simultaneous stream may cause buffering.

Slow Library Scanning

Adding large amounts of new media triggers a library scan that is noticeably slower on a Pi than on a desktop computer or NAS. Thumbnail generation for photo libraries is particularly slow. Budget extra time after adding new content.

Optimization Tips

Use an NVMe SSD for the OS and Plex Data

An NVMe SSD connected via the Pi 5's PCIe interface (using a HAT or adapter board) dramatically improves Plex responsiveness. Boot the OS from the SSD and store the Plex application data (metadata, thumbnails, database) on it. Keep your media files on the external USB drive. This separates metadata I/O from media I/O and eliminates MicroSD card bottlenecks.

Enable Active Cooling

Under sustained load (library scanning, multiple simultaneous streams), the Pi 5 can reach temperatures that trigger thermal throttling. A case with an active fan keeps the CPU at full speed. The official Raspberry Pi Active Cooler or any case with a 5V fan works well.

Use Ethernet

The Pi 5 has a true gigabit Ethernet port. Use it. Wi-Fi adds latency, variability, and bandwidth limitations that are especially noticeable with high-bitrate 4K content.

Optimize Your Media for Direct Play

Since you cannot transcode, optimize your media library for maximum compatibility:

Set Client Quality to Maximum/Original

On every Plex client that connects to your Pi server, set streaming quality to "Original" or "Maximum." Any quality setting lower than original forces Plex to transcode, which the Pi cannot handle.

Is a Raspberry Pi Right for You?

A Raspberry Pi Plex server is ideal if you want the cheapest possible always-on server, your media is in Direct Play-friendly formats, you have one or two simultaneous viewers, and you value low power consumption (the Pi 5 draws about 5-10 watts under load).

It is not ideal if you need transcoding for any reason, you share your server with many remote users (who may have limited bandwidth and trigger transcoding), or you have a very large library (100,000+ items) that needs frequent scanning.

For many solo users or small families with compatible clients and well-organized media, a Raspberry Pi is a surprisingly capable and cost-effective Plex server.

Phlix — The Photo Browser for Plex

If you use Plex for photos, Phlix gives you a chronological timeline, year scrubber, 4K AirPlay slideshows, and offline downloads. Free to browse, Pro from $6.99/yr.

Download Phlix Free

iOS 17+ · Works with any Plex Media Server