“Do I need a GPU for this” comes up constantly in homelab planning, usually attached to one of two very different goals: hardware-accelerated transcoding for Plex or Jellyfin, or running local AI workloads like Ollama or Stable Diffusion. Those two goals point at completely different hardware, and buying for one when you actually need the other is one of the more common expensive mistakes in this hobby. Here’s how to figure out which category you’re actually in before you spend anything.

What your CPU’s integrated graphics already covers

Most people planning a GPU purchase skip past the option they already own. If your CPU has integrated graphics, Intel’s Quick Sync in particular, it already does hardware-accelerated video encode/decode, and it’s genuinely good at it.

What it handles well. A modern Intel iGPU (11th-gen or newer for the cleanest Linux/Proxmox support) can transcode several concurrent 1080p or even 4K streams for Plex or Jellyfin without breaking a sweat, at a fraction of the power draw of any add-in card. If your use case is “transcode for a couple of family members watching on devices that don’t support the source codec,” an iGPU is not a compromise choice, it’s the right tool for the job.

How to use it in a homelab. On Proxmox, this means passing the iGPU through to an LXC container (not a full VM) via a device passthrough of /dev/dri, which is simpler and lighter-weight than PCIe GPU passthrough to a VM. This is the reason a lot of homelabbers deliberately pick a CPU with integrated graphics even on a “headless” Proxmox box, the iGPU never drives a display, it just sits there doing encode/decode work for whichever container needs it.

Where it falls short. iGPUs are not built for AI/ML workloads. They lack the CUDA (or equivalent) compute stack that the entire local-AI software ecosystem, Ollama, Stable Diffusion, most LLM inference tools, is written against. And on the transcoding side, older or lower-tier iGPUs can bottleneck under many simultaneous 4K streams or newer codecs like AV1, so check your specific CPU’s Quick Sync generation against what you actually need before assuming it’s sufficient.

What a used enterprise GPU actually gets you

This is the option people most often overlook, and it’s frequently the best value on the used market for one specific use case: heavier or higher-volume transcoding, without wanting the power draw or physical footprint of a full consumer card.

Why they exist. Cards like the Nvidia Quadro P2000/P4000 or Tesla P4 were built for datacenter and workstation virtualization, not gaming. That means passive cooling (no fan noise, a real win in a homelab that lives somewhere you sleep), lower power draw than a comparable-generation consumer card, and in the Tesla’s case, a low-profile form factor that fits cases a full consumer GPU never would.

What they’re good at. Nvidia’s NVENC/NVDEC hardware encode/decode blocks, present on these cards just like on consumer GeForce cards, handle Plex/Jellyfin transcoding extremely well, and older enterprise cards on the used market are often cheaper per transcode stream than anything else you can buy. They’re a strong match for someone running Plex for a larger household or several remote users who each need their own transcode, more concurrent streams than an iGPU comfortably handles, without wanting to run a power-hungry gaming card 24/7 just to do encode work.

The real catches. No display output on most of these cards, which is fine for a headless transcode box but means you can’t use one as a general-purpose GPU for a desktop VM. Driver setup is a genuine step up in complexity from a consumer card, current Nvidia drivers still support most of these, but you’re reading release notes and forum threads more than clicking through an installer. And if you go looking into unlocking vGPU (virtual GPU) licensing on these cards to split one physical card across multiple VMs, understand that’s an unofficial community project working around Nvidia’s licensing model, not a supported feature, weigh that against your own tolerance for maintaining an unofficial patch across driver updates before committing to that path.

What a consumer GPU actually gets you

This is the right answer when the goal is genuinely AI/ML work, not just transcoding, and it’s overkill for transcoding alone.

What it’s actually for here. Local LLM inference (Ollama and similar), Stable Diffusion image generation, and any other workload built on CUDA need real compute and real VRAM, not just an encode/decode block. This is the one case in this whole comparison where “the biggest GPU you can afford” is close to the right answer, because VRAM capacity is usually the actual ceiling on what models you can run at all, not raw compute speed. A card with 12-16GB of VRAM meaningfully expands what fits versus one with 8GB, regardless of how fast either one is otherwise.

The costs that don’t show up on the spec sheet. A consumer GPU under real AI workload draws real power, easily 150-300W+ depending on the card, which is a different category entirely from the 10-40W range the rest of a lean Proxmox box lives in. It also needs a case with room for it, a motherboard with a free PCIe x16 slot, and often a beefier PSU than a GPU-less build would ever require, which is exactly the kind of thing that pushes you toward a custom build over a mini PC (see the mini-PC-vs-custom-build piece on this site) if you weren’t planning on one already. And PCIe passthrough to a VM, rather than the simpler /dev/dri container passthrough an iGPU uses, is a genuinely more involved setup, budget time for it, particularly the first time you do it on a given motherboard.

Where it’s the wrong tool. If transcoding is the entire use case, a full consumer GPU is expensive overkill, its NVENC block does the same transcoding job as a much cheaper used enterprise card while burning far more idle power sitting there waiting for the next stream request.

Matching the hardware to the actual job

Transcoding for a small household, a handful of concurrent streams, mixed codecs: an iGPU with Quick Sync is enough, and adding anything else is spending money to solve a problem you don’t have.

Transcoding at real volume, many concurrent streams, or you specifically want a fanless, low-power card: a used enterprise card (Quadro or Tesla) is the value play, cheaper per stream than a consumer card and quieter than any active-cooled option.

Local AI/ML work, LLM inference, image generation, anything CUDA-based: a consumer GPU, sized by VRAM first and clock speed second, is close to a requirement, and there’s no cheaper substitute once that’s genuinely the goal.

Both transcoding and AI work on the same box: this is the one case worth naming directly, a single decent consumer GPU can usually cover both jobs at once (NVENC handles transcode, CUDA handles inference, on the same card, at the same time if needed), which is often simpler and not meaningfully more expensive than buying two separate cards for two separate roles.

Bottom line

Don’t buy for the workload you don’t have. If transcoding is the whole story, start with the iGPU you likely already own, and only step up to a used enterprise card if you’re genuinely running more concurrent streams than it can handle. Save the consumer GPU purchase, and the power, cooling, and case-space costs that come with it, for the day you actually want to run local AI workloads, not as a default add-on to a general-purpose Proxmox build.