You picked up a mini PC for your homelabβmaybe a Beelink EQ12 running an Intel N100, or a Beelink SER5 with its Ryzen 5 5500U. You installed Proxmox, got your LXC containers up, and now you're noticing the thing that almost nobody talks about in buying guides: the stock storage is slow, and the base RAM isn't enough the moment you add a few services.
I run Proxmox VE on a Beelink GTi13 Ultra (i9-13900HK, 64GB) and on a Dell OptiPlex 7090. From that experience building and expanding a homelab over time, I can tell you the CPU almost never saturates first. The bottleneck is almost always storage I/Oβespecially on write-heavy workloads like database writes, VM snapshots, and ZFS scrubsβor RAM running out before you've deployed everything you wanted.
This post is about fixing both of those. I've gone through the NVMe options and the RAM situation so you know exactly what to buy for your specific workload, and what to skip. If you haven't picked your mini PC yet, start with the best budget mini PCs for Proxmox under $200 guide first, then come back here.
Quick Reference: NVMe Drives for a Proxmox Homelab
Before we dig into each drive, here's where they stand against each other and against a typical OEM drive you'd find in a budget mini PC at the factory:
| Drive | Interface | Seq Read | Seq Write | Best For | Approx. Price |
|---|---|---|---|---|---|
| WD_BLACK SN850X 1TB | PCIe 4.0 x4 | 7,300 MB/s | 6,600 MB/s | 2β4 VMs, light services | ~$80 |
| WD_BLACK SN850X 2TB | PCIe 4.0 x4 | 7,300 MB/s | 6,600 MB/s | Full homelab, media + services | ~$130 |
| Samsung 990 Pro 2TB | PCIe 4.0 x4 | 7,450 MB/s | 6,900 MB/s | Heavy I/O, VM image storage | ~$140 |
| OEM N100/N150 drive (stock) | PCIe 3.0 x4 | ~3,500 MB/s | ~2,500 MB/s | Light browsing, minimal VMs | Included |
Sequential speed numbers come from WD's and Samsung's published spec sheets. The real-world difference matters more for ZFS workloads and VM migrations than you'd expect from the headline MB/s figuresβI'll explain why below.
The most important column in that table is "Best For." If you're running 2β4 LXC containers with modest storage needs, the 1TB SN850X does the job cleanly. If you plan on a full-featured homelab with Nextcloud, Jellyfin, Immich, and a few VMs, go straight to 2TB. Running out of space on your Proxmox boot/data drive is one of the more frustrating homelab experiencesβit requires either migrating everything to a new drive or carefully juggling storage pools, neither of which you want to deal with once everything is configured and running.
Note that the OEM drive row is illustrative, not a specific product. Budget mini PCs vary widelyβsome ship with decent PCIe 3.0 x4 NVMe drives, others come with PCIe 3.0 x2 drives or even SATA M.2 in an NVMe slot. Check the actual spec of your drive with a tool like CrystalDiskInfo (Windows) or nvme smart-log on Linux before deciding if an upgrade is worth it. If your drive is already running PCIe 3.0 x4 at full spec, the upgrade to a Gen 4 drive is an incremental gain. If it's running at Gen 3 x2 or SATA speeds, the upgrade is transformative.
Why Storage I/O Matters More Than CPU for Proxmox
Proxmox's primary job is running virtual machines and LXC containers, and both of those are storage-intensive. When you snapshot a VM, Proxmox writes a full copy of the disk image to storage. When ZFS does a scrub, it reads every block sequentially. When you spin up three containers at the same timeβsay Jellyfin, Vaultwarden, and Nextcloudβyou get a burst of concurrent reads and writes as each service initializes its data directories.
A stock PCIe 3.0 drive in an N100 mini PC handles these bursts fine when you have one or two services. The cracks show up when you add a fourth or fifth container, or when you try to run something database-heavy like a self-hosted Immich instance processing a photo library with 50,000 images. At that point the queue depth fills up, and everything slows down together.
PCIe 4.0 drives like the SN850X or the 990 Pro roughly double the raw bandwidth compared to a typical PCIe 3.0 OEM drive. More importantly, their random read/write performance at high queue depths stays more consistent under mixed workloadsβwhich is exactly what Proxmox sees when multiple containers are active simultaneously. If you're running Proxmox on a budget N100 or N150 mini PC, this single upgrade often makes a bigger difference than the CPU choice itself.
One important caveat: PCIe 4.0 performance requires a PCIe 4.0-capable M.2 slot. The Intel N100 and N150 only support PCIe 3.0 on their M.2 slots, so you'll get PCIe 3.0 speeds even with a Gen 4 drive. You don't lose anything by putting a Gen 4 drive in a Gen 3 slotβit'll run at Gen 3 speedsβbut if your budget is tight and you're on an N100 box, a high-quality PCIe 3.0 drive gets you 80% of the benefit for less money. The SN850X still makes sense there because it performs exceptionally at Gen 3 speeds too, and you future-proof the drive for your next mini PC upgrade.
WD_BLACK SN850X: My Default Recommendation
The WD_BLACK SN850X 1TB and WD_BLACK SN850X 2TB are the drives I'd put in a Proxmox homelab for most people. Per WD's spec sheet, both hit 7,300 MB/s sequential read and 6,600 MB/s sequential write on PCIe 4.0. That's near the top of what PCIe 4.0 x4 supports.
What makes the SN850X stand out for homelab use isn't just the peak throughput. It uses WD's in-house controller (not a third-party one), which has a well-documented track record in NAS and server deployments for consistent sustained performance without dramatic thermal throttling under prolonged workloads. For a Proxmox box that runs 24/7, sustained performance matters more than a burst benchmark.
The 1TB version makes sense if you're running a smaller homelab: a few LXC containers, maybe one or two small VMs, and you keep large media on a separate NAS or external drive. At around $80, it's easy to justify. The 2TB version is the one I'd recommend for most serious homelab setups. Once you start running Nextcloud with actual file syncing, Immich with a large photo library, Jellyfin with transcoding, and a few databases, 1TB fills up faster than expectedβespecially with VM snapshots eating space before you clean them up.
SN850X vs the Competition
The main competitor in this segment is the Samsung 990 Pro. Per Samsung's spec sheet, the 990 Pro 2TB edges out the SN850X slightly in sequential numbersβ7,450 MB/s read and 6,900 MB/s write. In practice the difference is marginal for homelab workloads; neither drive is the bottleneck in a mixed container environment.
Where they diverge is endurance. The SN850X 2TB carries a 1,200 TBW (terabytes written) endurance rating per WD's specs. The Samsung 990 Pro 2TB comes in at 1,200 TBW as well according to Samsung's published specs. Effectively identical there. Price at any given time often decides itβwhichever is on sale when you're buying is the right call.
If you want a rule of thumb: buy the SN850X if you can get it for the same price or cheaper. Buy the 990 Pro if it's discounted below the SN850X that week. Both are excellent choices for a Proxmox homelab, and you won't feel the difference in daily use.
RAM: Why 32GB Is the Real Minimum for a Proxmox Homelab
The other upgrade that transforms a Proxmox mini PC homelab is RAM. Most mini PCs ship with 16GB, which sounds like a lot until you actually load it up. Here's what a modest homelab looks like in terms of RAM use once you have five or six services running:
Each LXC container gets a RAM allocation you define. If you're running Nextcloud, Jellyfin, Vaultwarden, Nginx Proxy Manager, Uptime Kuma, and Homarr, you're easily at 8β10GB of allocated RAM just for the containersβand that's before Proxmox's own overhead, ZFS's ARC cache (which uses available RAM to cache frequently read data), and any VMs you spin up for heavier workloads like Home Assistant OS or a dedicated Docker host.
ZFS ARC is the part people underestimate. Per Proxmox's documentation, ZFS ARC by default uses up to half your available RAM as a read cache. On a 16GB system, that leaves 8GB for your VMs and containers. On a 32GB system, you get a much more generous ARC cache without starving your workloads. The performance difference is real: ZFS with a warm ARC cache reads frequently accessed files from RAM instead of NAND, which matters for database-heavy services like Nextcloud's database or Immich's PostgreSQL instance.
Upgrading to 32GB with the Crucial DDR4 SODIMM
For DDR4-based mini PCsβwhich covers most of the Beelink EQ series, SER5, and many older modelsβthe Crucial 32GB DDR4 SODIMM is the upgrade I'd recommend. It's a single 32GB stick running at DDR4-3200, which works in any slot that supports DDR4-3200 SO-DIMMs. At around $59, it's one of the most cost-effective upgrades you can make to a homelab mini PC.
The typical setup for a two-slot mini PC like the Beelink SER5 or SER7 is to add this stick alongside the existing 16GB stick, giving you 48GB totalβthough dual-channel performance is best when both sticks are identical size, so the cleanest upgrade is to replace both existing 8GB sticks with two 16GB sticks for a matched 32GB configuration. For a budget-first approach, adding the single 32GB Crucial stick alongside whatever came in the box gets you to 48GB of usable RAM with minimal cost, even if you lose dual-channel on that pairing.
If you're on a newer DDR5 platform like the Beelink SER7 (which uses DDR5) or a GTi14 with Intel Core Ultra, you'll need DDR5 SO-DIMMs instead. The Crucial 32GB DDR4 is specifically for DDR4 systemsβcheck your mini PC's spec sheet before ordering. The SER7 actually uses DDR5-4800, so you'll want a DDR5 variant for that model.
Compatibility: Which Mini PCs Support These Upgrades
Not every mini PC makes upgrading straightforward. Here's what to know by platform:
Intel N100 and N150 mini PCs (Beelink EQ12, Beelink EQ14, GMKtec models): These typically have a single M.2 slot for NVMe and one or two SO-DIMM slots. Most of these platforms support PCIe 3.0 x4 for NVMe and DDR4 or DDR5 (depending on the specific modelβcheck the listing). The NVMe slot is usually accessible via the bottom panel without disassembling the whole unit. RAM upgrade is straightforward on most EQ-series units.
Beelink SER5 (Ryzen 5 5500U): PCIe 3.0 x4 NVMe slot, DDR4 SO-DIMM. Two RAM slots, easily accessible. A high-quality PCIe 3.0 or PCIe 4.0 NVMe will perform identically hereβthe CPU platform caps it at Gen 3 bandwidth. The SER5 is one of the better budget upgrade candidates because it's easy to open and has good community documentation.
Beelink SER7 (Ryzen 7 7840HS) and GTi-series: The SER7 uses DDR5 and has a PCIe 4.0 NVMe slot, so you get full performance from both the SN850X and the 990 Pro. The SER7 comes with 16GB DDR5 by default; upgrading to 32GB or 64GB DDR5 makes the most sense on this platform given the stronger CPU can actually use it.
What to Prioritize: My Recommendations by Workload
If I had to give one recommendation based on the most common homelab scenarios I see, here's how I'd prioritize spending:
Scenario 1: 3β5 LXC containers, no VMs (entry homelab)
RAM upgrade is higher priority than NVMe if you're on 16GB. The ZFS ARC benefit alone is significant. Pick up the Crucial 32GB DDR4 first, then upgrade the NVMe when budget allows. Get the SN850X 1TB if the stock drive is slower than PCIe 3.0 x4 specβsome budget mini PCs ship with PCIe 3.0 x2 or even SATA-mode M.2 drives, which are real bottlenecks.
Scenario 2: Mixed LXC + VMs, media server (mid-tier homelab)
Go straight for the SN850X 2TB and 32GB RAM simultaneously. At this workload level, you'll thank yourself for not having to redo it six months later when you've added three more containers and the 1TB drive is 80% full. The 2TB gives you room for multiple VM images, Proxmox backups, and container data without constantly managing free space.
Scenario 3: Running local LLMs or heavy AI workloads
Storage speed matters less than it does for database-heavy workloads, but RAM matters enormously. Ollama keeps models in RAM, and smaller 7Bβ13B models need 8β16GB just for the model itself. If you're running Ollama on a mini PC alongside other containers, 32GB is a floor, not a ceiling. Check out the complete Proxmox LXC self-hosting guide for how to partition resources between your AI containers and the rest of your stack.
The Upgrade Sequence That Makes Sense
If you're starting fresh with a new mini PC and doing both upgrades, do the NVMe first and install Proxmox on the new drive from the startβit avoids having to migrate your existing install. Then add RAM. Both upgrades are typically done with a small Phillips screwdriver and take under 15 minutes combined on most Beelink models.
One thing to verify before you order: whether your mini PC has one M.2 slot or two. Some models have a second M.2 slot (sometimes sized 2242 instead of 2280) that you can use for additional storage. If yours has two, you might opt for a smaller primary NVMe for the OS and VM images, and a secondary drive for bulk storage like a Nextcloud data directory. Check the product listing and community threads for your specific model before committing to a configuration.
The investment for both upgradesβSN850X 2TB plus a 32GB Crucial DDR4βcomes out to around $190. For most mini PC homelab setups, that's a better use of budget than buying a more expensive mini PC with a faster CPU you'll barely use. The CPU in an N100, SER5, or similar is sufficient for 5β10 containers; the storage and RAM are what actually limit the experience day to day.
Want this kind of setup for your business?
I deploy private, self-hosted infrastructure on Proxmox: AI, automation and internal tools on hardware you own, documented and handed off. See the Private AI Stack β
Not sure what you need? Book a free discovery call.