Skip to content
tofa

tofa, Plex, Emby and Jellyfin benchmarks

Same machine, same five films, 20 and 21 October 2026. Playback numbers are the median across the five films.

We make tofa, so we ran every server with default settings on the same machine and show where the others come out ahead. These are results from one machine with processor-only video conversion; other hardware, hardware conversion and larger libraries can give different numbers. If you run your own comparisons, we would like to see them, including where tofa does worse: share them on Discord or through support.

Time to start playback

Pressing play until 10 s of 1080p video is ready.

tofa1.07 s
Plex1.23 s
Emby1.42 s
Jellyfin1.68 s
Show the numbers
ServerMedianBig Buck BunnyCosmos LaundromatElephants DreamSintelTears of Steel
tofa1.07 s1.17 s (11 runs)0.24 s (15 runs)0.22 s (16 runs)1.65 s (16 runs)1.07 s (16 runs)
Plex1.23 s1.30 s (16 runs)0.33 s (16 runs)0.32 s (16 runs)1.78 s (16 runs)1.23 s (16 runs)
Emby1.42 s1.49 s (3 runs)0.38 s (3 runs)0.26 s (3 runs)1.98 s (3 runs)1.42 s (3 runs)
Jellyfin1.68 s1.68 s (3 runs)0.36 s (3 runs)0.35 s (3 runs)2.38 s (3 runs)1.87 s (3 runs)

Start time on a TV

NVIDIA SHIELD TV Pro, pressing play until the first frame is on screen.

tofa0.82 s
Plex3.71 s
Show the numbers
FilmtofaPlextofa delivered it asPlex delivered it as
Big Buck Bunny1.19 s5.77 sConvertedDirect play
Cosmos Laundromat0.65 s4.03 sDirect playDirect play
Elephants Dream0.67 s3.71 sDirect playDirect play
Sintel0.99 s2.63 sRepackaged, no conversionVideo converted
Tears of Steel0.82 s2.27 sRepackaged, no conversionAudio converted

One device. Plex converted Sintel's video and Tears of Steel's audio; tofa converted Big Buck Bunny.

Time to seek

Jumping to 5:00 until 10 s of video is ready again.

tofa1.31 s
Plex1.41 s
Emby1.70 s
Jellyfin2.21 s
Show the numbers
ServerMedianBig Buck BunnyCosmos LaundromatElephants DreamSintelTears of Steel
tofa1.31 s1.31 s (11 runs)0.55 s (15 runs)0.24 s (16 runs)1.84 s (16 runs)2.24 s (16 runs)
Plex1.41 s1.41 s (16 runs)0.54 s (16 runs)0.32 s (16 runs)1.88 s (16 runs)2.25 s (16 runs)
Emby1.70 s1.70 s (3 runs)0.77 s (3 runs)0.42 s (3 runs)2.07 s (3 runs)2.64 s (3 runs)
Jellyfin2.21 s2.21 s (3 runs)1.09 s (3 runs)0.63 s (3 runs)2.83 s (3 runs)2.84 s (3 runs)

Picture quality

Nine clips converted to 1080p. VMAF, out of 100: how close the result looks to the original.

tofaPlex
Picture quality (VMAF), median95.193.1
Bitrate, median2,974 kbps2,833 kbps
Clips with the higher score8 of 91 of 9

Plex scored higher on the Cosmos Laundromat seek: 88.6 vs 82.0.

Show the numbers
Cliptofa VMAFPlex VMAFtofa kbpsPlex kbps
Big Buck Bunny, start95.193.63,5912,778
Big Buck Bunny, seek90.490.25,2165,482
Cosmos Laundromat, seek82.088.62,9744,859
Elephants Dream, start90.165.31,0732,813
Elephants Dream, seek91.078.31,2832,833
Sintel, start98.096.82,6261,880
Sintel, seek99.298.05,5953,990
Tears of Steel, start95.594.81,053875
Tears of Steel, seek96.393.17,7735,572

Library scan

Time to scan and match 1,013 files, 14 October. Accuracy is under Matching.

tofa2.1 min
Plex3.8 min
Emby23.1 min
Jellyfin22.0 min
Show the numbers
ServerScan timeCorrectWrongUnmatchedRight show, no episode
tofa2.1 min996890
Plex3.8 min97610270
Emby23.1 min93067160
Jellyfin22.0 min938131745

Memory

Busiest moment of the playback tests, file cache not counted.

tofa1,059
Plex1,011
Emby921
Jellyfin1,297
Show the numbers
ServerIn allServerDatabaseVideo converter
tofa1,059 MiB31 MiB295 MiB733 MiB
Plex1,011 MiB355 MiBinside the server656 MiB
Emby921 MiB199 MiBinside the server722 MiB
Jellyfin1,297 MiB387 MiBinside the server909 MiB

tofa's database is PostgreSQL, a separate process; the others use SQLite inside the server. Each library here is under 1 MB on disk, so this is the databases' own working memory, not library data. At idle: tofa 214 MiB (database 179), Plex 59 MiB.

Matching accuracy

Share of 1,013 files identified correctly, 14 October. Highest in each row in bold.

Files tagged with an ID in the folder or file name, like Dune (2021) {imdb-tt1160419} from Radarr or Sonarr, are matched directly by all four servers when the tag uses the format that server reads. This test uses names without IDs, which is where the servers differ.

CategoryFilestofaPlexEmbyJellyfin
Kind of title
Popular films and shows397100.0%99.5%92.4%98.2%
Less-known films and shows34498.8%97.1%94.5%98.0%
Obscure films15092.0%96.0%90.0%90.0%
Films sharing a title with another film7798.7%98.7%87.0%98.7%
TV episodes240100.0%92.5%93.8%98.8%
Anime episodes45100.0%60.0%80.0%100.0%
How the file is named
Title (Year)40898.8%99.3%97.1%98.3%
Release name, like Dune.2021.1080p.BluRay34898.9%99.4%87.1%97.4%
Original title, like Otto e mezzo (1963)5994.9%94.9%96.6%93.2%
No year in the name7996.2%89.9%84.8%89.9%
Lowercase, like dune-2021-720p.mp47497.3%95.9%95.9%97.3%
All files
Total1,01398.3%96.3%91.8%97.0%

Jellyfin identified the show for all 45 anime files but set no episode numbers; counted as matched. tofa 0.12: 97.3% on a newer 1,002-file set, other servers not yet run on it.

Apple TV playback

tofa from our own tests. Plex and Jellyfin as their Apple TV apps document it.

On Apple TV 4KtofaPlexJellyfin (Swiftfin)
Dolby Vision Profile 7 with the enhancement layer✓✕plays as HDR10✕plays as HDR10
TrueHD Atmos and DTS:X height channels✓up to 7.1.4✕audio converted✕

Subtitles

Sintel with English text subtitles on. Burning subtitles in means converting the video.

ServerHow the subtitle reached the playerVideo converted for the subtitleStart, subtitle onSeek, subtitle on
tofaSeparate subtitle fileNo1.64 s1.38 s
PlexBurned into the videoYes1.78 s1.49 s
EmbySeparate subtitle fileNo––
JellyfinSeparate subtitle fileNo––

Other measurements

MeasurementtofaPlexEmbyJellyfin
Direct play response, median8 ms5 ms4 ms15 ms
Processor time to start playback, median6.5 s5.9 s7.8 s11.6 s

Test setup

Machine
AMD Ryzen 7 9800X3D, 8 cores, 32 GB. Converted on the processor.
Versions
tofa 0.12.0, Plex 1.43.4, Emby 4.10.1, Jellyfin 12.2.0. Default settings, no paid tiers.
Films
Big Buck Bunny, Cosmos Laundromat, Elephants Dream, Sintel, Tears of Steel.
Runs
Up to 16 per film for tofa and Plex, 3 for Emby and Jellyfin; runs disturbed by other work were repeated. SHIELD: 5 per film.

Try tofa on your own library.

Join the beta