How to use this planner
Check the apps you want to run. Idle RAM is what’s used when nothing is happening. Peak RAM is the max during active use — ML indexing, video transcoding, active Office editors. Your host needs to comfortably cover the peak total plus OS overhead.
All figures are measured or manufacturer-documented values for 2026 container versions. Details per app are in their linked tutorials.
Infrastructure
Files, Media & Office
Automation & Monitoring
Smart Home & Security
RAM Summary
Select apps to calculate RAM requirements.
Frequently asked questions
How much RAM does a full self-hosted homelab stack need?
A minimal starter stack (NPM + Portainer + Uptime Kuma + Vaultwarden) uses about 400-600MB RAM at idle. Adding Jellyfin with hardware transcoding adds 300-500MB. Nextcloud AIO with Office enabled adds 1.4-2GB. Immich with ML indexing adds 2-4GB at peak. A full stack with all major apps typically needs 12-16GB of host RAM to run comfortably with OS overhead.
What's the difference between idle RAM and peak RAM for containers?
Idle RAM is what the container uses with no active users or background jobs. Peak RAM is the maximum during active use — Immich ML indexing, Jellyfin transcoding multiple streams, Nextcloud Office with multiple editors, n8n running complex workflows. Host RAM should comfortably exceed your stack’s peak usage plus OS overhead (1-2GB for Debian/Ubuntu with a few processes). Plan for peak, not idle.
Should I run all these on one host or split them across VMs?
For a personal homelab, a single well-resourced host is simpler. With 32GB RAM you can run the full stack in Docker on one host with headroom for a couple of Proxmox VMs alongside. Where splitting makes sense: Immich benefits from GPU passthrough to a dedicated VM for ML acceleration, and Home Assistant is better as its own HAOS VM for clean update cycles. Everything else runs fine in containers on a shared host.
Does Proxmox overhead matter when planning container RAM?
Proxmox VE itself uses 2-4GB of host RAM for the hypervisor, QEMU/KVM, and management services. If you’re running Docker inside a Proxmox LXC (the recommended pattern), the LXC overhead is minimal (< 50MB). Allocate the LXC at least the total container stack RAM plus 1GB for the container OS itself. The Proxmox VM Capacity Planner tool handles host-level planning; this tool focuses on the Docker stack inside a single LXC or host.