Media server

Jellyfin VPS requirements: what you can run without a GPU

By VPSfit · Sources checked · Jellyfin website · source code · GPL-2.0

Jellyfin is a free, open-source media server, the self-hosted alternative to Plex and Emby. Jellyfin itself is light. The expensive part is transcoding: converting a video on the fly when a player can't play the original file. Ordinary VPS plans have no GPU, so every transcode lands on shared vCPUs. On a VPS, the real question is how often your players will force a transcode.

Sizing guide

Our recommendations, derived from the sourced figures below. Not measurements.

ScenarioRAMvCPUWhy
Direct play only, small library, 1–2 viewers2 GB + swap (4 GB is the official headless floor)2Direct play sends the file unchanged, so the CPU barely works, and Jellyfin idled at 140 MiB in one test. Library scans are the RAM spike (ffprobe per file), so keep swap on and limit scan threads on small plans.
Mostly direct play, an occasional 1080p transcode4 GB4One 1080p software transcode peaked at 665.6% CPU running 2.76x faster than realtime on a laptop i5, which works out to roughly 2.4 of those threads at realtime. Shared VPS vCPUs vary in speed, so 4 vCPUs is the safe floor for one stream. This is our estimate, not a measurement.
Several viewers, or 4K/HDR libraries8 GB8+, or not a VPSHDR tone-mapping in software can outrun even a 16-core desktop CPU. For this, Jellyfin recommends a GPU: an Intel iGPU home server, a GPU server, or rffmpeg to a machine with hardware acceleration.

Official requirements

ItemWhat the project saysSource
RAM"At least 8GB is recommended for the average deployment. For a Linux server running without a GUI, 4GB may be enough"Jellyfin docs: Hardware Selection
checked Oct 23, 2026
Servers without GPUs"Not having a GPU is NOT recommended": CPU video transcoding is very demanding and HDR-to-SDR tone-mapping makes it worse; depending on settings, even a Ryzen 9 5950X may not handle a single streamJellyfin docs: Hardware Selection
checked Oct 23, 2026
CPUWith hardware acceleration configured, "any modern CPU with 4 threads" should handle the rest (audio transcoding, older codecs). HEVC, VP9 and AV1 "can be VERY demanding" without a hardware decoderJellyfin docs: Hardware Selection
checked Oct 23, 2026
Storage100 GB SSD for the OS, Jellyfin files and transcoding cache. Rule of thumb for the transcode cache: your largest media file times your maximum concurrent streams. Media storage can be a network share or mounted cloud storageJellyfin docs: Hardware Selection
checked Oct 23, 2026
NetworkAt least 20 Mbps upload for remote access. With under 100 Mbps total upload, cap Jellyfin at 70% of your upload speedJellyfin docs: Hardware Selection
checked Oct 23, 2026
CPU instruction setSince Jellyfin 10.11, x86 CPUs must support SSE4.1 (Intel Penryn 2007 or AMD Bulldozer 2011 and newer)Jellyfin docs: Hardware Selection
checked Oct 23, 2026
Playback typesFrom lightest to heaviest: Direct Play (file sent unchanged, almost no load), Remux (container changes only), Direct Stream (audio transcoded, video untouched), Transcode (video re-encoded). The dashboard shows which one a session usesJellyfin docs: Transcoding
checked Oct 23, 2026
Remote transcodingWithout local hardware acceleration you can hand transcodes to another machine with rffmpeg; Linux only, needs SSH plus shared storage for media and the Jellyfin data directoryJellyfin docs: Hardware Acceleration
checked Oct 23, 2026

What people report in practice

Individual reports, not controlled tests. Versions, hardware and settings differ, so treat these as data points, not guarantees.

  • Idle at 140 MiB in a single container. Software x264 (veryfast) transcodes of a 60-second 1080p30 H.264 clip: 1080p to 720p at 4 Mbps ran at 3.79x realtime, 480p at 4.93x, full 1080p at 8 Mbps at 2.76x. Peak 665.6% CPU and 673.7 MiB RAM. The tester's estimate: about two concurrent 1080p transcodes on that chip

    Jellyfin 10.11.11 with bundled FFmpeg 7.1.4-Jellyfin on an Intel i5-10210U laptop (4 cores / 8 threads), no GPU acceleration. A laptop, not a VPS; library management and playback were not tested

    Independent test GR Badhon: Jellyfin 10.11.11 media server, hands-on · checked Oct 23, 2026

  • On a Ryzen 5 3600 with no GPU, a forum member expects one or two 1080p transcodes at once without buffering, CPU at 90%+ while transcoding, and no smooth multi-stream 4K

    Jellyfin forum thread, Feb 2024; an opinion from experience, not a benchmark

    Forum Jellyfin forum: Running Jellyfin without a GPU · checked Oct 23, 2026

  • A user asking about Jellyfin on a VPS was told to focus on files that direct play; "Folks run Jellyfin servers on lesser provisioned VPS just fine," possibly with two 720p/1080p transcodes, but stay away from 4K unless it will direct play. Another reply warned that VPS plans include a set amount of bandwidth, with overage fees

    r/jellyfin thread, May 2023

    Reddit Reddit r/jellyfin: Is hardware acceleration without GPU possible? · checked Oct 23, 2026

  • A 12-core Ryzen 9 3900X "can choke big time on a single 4k stream" in software; the advice was to pre-transcode media in the background or pick files that clients can play directly

    r/jellyfin thread, Sep 2026

    Reddit Reddit r/jellyfin: Is throwing cores at Jellyfin for software transcoding an option? · checked Oct 23, 2026

  • Library scans spawned many ffprobe processes at about 700 MB each, hanging a 4 GB Raspberry Pi 4 while scanning 4K HDR movies. Maintainers considered it fixed in 10.11

    Jellyfin 10.9.0–10.9.1, 2024

    GitHub GitHub jellyfin/jellyfin #11588: Library scan causes excessive RAM usage · checked Oct 23, 2026

  • After upgrading to 10.11.7, 8 GB (and even 24 GB) was not enough to rescan a 4 TB movie library; ffprobe memory grew without limit on Dolby Vision HEVC files. Limiting scan threads to 2 stopped the crashes. Fixed in 10.11.8 (jellyfin-ffmpeg 7.1.3-5), where a user measured scan RAM only 100–150 MB above 10.11.6

    VM install, Apr 2026

    GitHub GitHub jellyfin/jellyfin #16549: v10.11.7 and ffprobe RAM usage · checked Oct 23, 2026

Our measurements: coming soon

We haven't measured Jellyfin yet, so there are no VPSfit lab numbers on this page. When we do, they'll show the app version, the plan it ran on, the date, and the raw data. Here's what we'll record:

  • Idle RAM of Jellyfin (latest release) on a fresh 2 GB and 4 GB plan with a fixed test library
  • Peak RAM and time for a full library scan of that library, with default and reduced scan threads
  • Software transcode speed (x realtime) for a fixed 1080p H.264, 1080p HEVC 10-bit and 4K HDR clip on 2, 4 and 8 shared vCPUs
  • How many simultaneous 1080p transcodes each plan sustains without buffering

How we measure →

What drives Jellyfin's RAM use

Transcoding, not the server

Jellyfin's own process is small. Video transcoding uses FFmpeg, and on a VPS without a GPU it runs entirely on the CPU. Re-encoding one 1080p stream can keep several cores busy, and HEVC, VP9 or HDR sources make it much heavier. Each transcode also uses some RAM (673.7 MiB peak in one test), but CPU runs out first.

What forces a transcode

The player decides. Each client tells the server which codecs, resolutions and bitrates it supports, and the server only transcodes what the client can't play (Transcoding docs). Common triggers are HEVC or AV1 files on older TVs and browsers, a bitrate limit set lower than the file, and subtitles that have to be burned in. Picking clients that play your files directly does more for a small VPS than any CPU upgrade.

Library scans and metadata

Scanning runs ffprobe on every new file, and Jellyfin's default tasks also extract chapter images and key frames (Tasks docs). These spikes are temporary but can be big: two GitHub issues above show scans exhausting 4–24 GB on buggy releases. Keep Jellyfin updated, and on a small plan lower the scan thread count in the dashboard.

Disk and bandwidth, the hidden costs

A VPS disk is small next to a media library. Jellyfin's docs allow media on a network share or mounted cloud storage, as long as it reads faster than the media bitrate. Also check your plan's included traffic: an 8 Mbps stream is about 3.6 GB per hour (8 Mbps × 3,600 s ÷ 8), so a few viewers can use hundreds of GB a month.

Gotchas on a VPS

  • Turn off transcoding you didn't ask for. In the dashboard's Playback section, check what each session is doing (Direct Play, Remux, Direct Stream or Transcode). If a client keeps transcoding, the fix is usually the client's quality setting or a different app, not a bigger server.
  • Don't enable hardware acceleration on a plain VPS. Hardware acceleration needs a GPU or iGPU that Jellyfin can reach through QSV, VA-API, NVENC, AMF, VideoToolbox or RKMPP (Hardware Acceleration docs). Shared-CPU VPS plans don't expose one, so enabling it just makes transcodes fail. Check with lspci -nn | grep -Ei "3d|display|vga".
  • Avoid H.264 10-bit files. No Intel, NVIDIA or AMD GPU decodes H.264 10-bit (High 10), so it always falls back to software decoding. The docs suggest converting such files to HEVC 10-bit.
  • Put it behind a reverse proxy and firewall. Jellyfin's docs say the server "is not designed to be exposed directly to the internet." On a public VPS, put it behind a reverse proxy with HTTPS and firewall everything else.
  • Size the transcode cache. Transcoded segments are written to disk. The docs' rule of thumb is your largest file times your maximum concurrent streams, so a 20 GB file and two streams need about 40 GB free on a fast disk.
  • Watch the traffic quota. Streaming out of a data center counts against your plan's traffic allowance. Providers in our tables differ a lot here, so check the included traffic on the provider's page before you invite family.

Cheapest plans that fit

Jellyfin, direct play only (headless Linux): 4 GB RAM and 2+ vCPU

Threshold: Official: 4 GB may be enough on Linux without a GUI; direct play needs almost no CPU (source). Only plans with at least 2 vCPUs are listed.

Provider & planRAMvCPUDisk Price / monthTermsSource
Contabo Cloud VPS 4 8 GB 4 shared 100 GB SSD €4.40
excl. VAT · ≈ $4.93
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Contabo Cloud VPS 6 12 GB 6 shared 200 GB SSD (or 100 GB NVMe) €6.00
excl. VAT · ≈ $6.73
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Contabo Cloud VPS 8 24 GB 8 shared 300 GB SSD (or 150 GB NVMe) €11.20
excl. VAT · ≈ $12.56
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Hostinger KVM 2 8 GB 2 AMD EPYC 100 GB NVMe $14.99
intro $8.79
before tax
Prepaid intro rate; renews at $14.99/mo hostinger.com
checked Oct 21, 2026

Jellyfin with occasional 1080p CPU transcoding: 4 GB RAM and 4+ vCPU

Threshold: VPSfit estimate: one 1080p software transcode needed roughly 2.4 laptop-i5 threads at realtime in an independent test (source). Only plans with at least 4 vCPUs are listed.

Provider & planRAMvCPUDisk Price / monthTermsSource
Contabo Cloud VPS 4 8 GB 4 shared 100 GB SSD €4.40
excl. VAT · ≈ $4.93
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Contabo Cloud VPS 6 12 GB 6 shared 200 GB SSD (or 100 GB NVMe) €6.00
excl. VAT · ≈ $6.73
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Contabo Cloud VPS 8 24 GB 8 shared 300 GB SSD (or 150 GB NVMe) €11.20
excl. VAT · ≈ $12.56
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
RackNerd KVM 4 GB affiliate link 4 GB 4 shared, Intel Xeon 130 GB SSD (RAID-10) $24.59
before tax
Monthly racknerd.com
checked Oct 21, 2026

Plan links marked affiliate link are affiliate links: if you sign up through one, we may earn a commission at no extra cost to you. They go to the provider's site, not to the specific plan; the Source column links the plain pricing page we checked. Affiliate status never changes the order. Disclosure.

Jellyfin, official average deployment: 8 GB RAM and 4+ vCPU

Threshold: Official: at least 8 GB for the average deployment; 4 threads assume hardware acceleration, which a plain VPS lacks (source). Only plans with at least 4 vCPUs are listed.

Provider & planRAMvCPUDisk Price / monthTermsSource
Contabo Cloud VPS 4 8 GB 4 shared 100 GB SSD €4.40
excl. VAT · ≈ $4.93
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Contabo Cloud VPS 6 12 GB 6 shared 200 GB SSD (or 100 GB NVMe) €6.00
excl. VAT · ≈ $6.73
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Contabo Cloud VPS 8 24 GB 8 shared 300 GB SSD (or 150 GB NVMe) €11.20
excl. VAT · ≈ $12.56
24-month term (effective monthly rate) contabo.com
checked Oct 21, 2026
Hostinger KVM 4 16 GB 4 AMD EPYC 200 GB NVMe $28.99
intro $12.99
before tax
Prepaid intro rate; renews at $28.99/mo hostinger.com
checked Oct 21, 2026

Prices checked Oct 21, 2026 on each provider's official pricing page. EUR prices converted at the ECB rate of Oct 20, 2026 (1 € = $1.1215) only for ranking. See all plans on the cheapest 4 GB VPS page.