7 Must-Have Jellyfin Plugins Beyond the Basics: Intro Skipper, Merge Versions & More (2026)

7 Must-Have Jellyfin Plugins Beyond the Basics: Intro Skipper, Merge Versions & More (2026)

Jellyfin Quality-of-Life Plugins in 2026: Intro Skipper, Chapter Images & More

Jellyfin's plugin ecosystem has matured significantly. Beyond the well-known plugins (OpenSubtitles, Trakt), there is a second tier of quality-of-life plugins that dramatically improve the daily experience for both admins and viewers.

This guide covers the best QoL plugins, how to install them, and how to configure each one.


How to Install Plugins in Jellyfin

From the official catalog

  1. Dashboard → Plugins → Catalog
  2. Find the plugin → Install
  3. Restart Jellyfin

From a third-party repository

Some plugins are not in the official catalog:

  1. Dashboard → Plugins → Repositories → Add
  2. Enter the repository URL
  3. The repository's plugins appear in the Catalog

Plugin 1: Intro Skipper

What it does: Automatically detects TV show intro sequences and adds a "Skip Intro" button - just like Netflix. It is the most widely installed Jellyfin plugin in 2026.

Intro Skipper uses audio chromaprint fingerprinting (the same technology behind Shazam and AcoustID) to detect repeated audio segments across episodes of the same series. When it finds a match, it marks the exact timestamps and presents a skip button in the player UI. It also detects credit sequences at the end of episodes.

Warning: The actively maintained version in 2026 is at intro-skipper/intro-skipper. The original by ConfusedPolarBear is no longer maintained.

Repository: https://raw.githubusercontent.com/intro-skipper/intro-skipper/master/manifest.json

Installation

  1. Dashboard → Plugins → Repositories → Add the repository URL above
  2. Install Intro Skipper from the Catalog
  3. Restart Jellyfin

Configuration

Dashboard → Plugins → Intro Skipper:

SettingRecommended ValueWhy
Analyze after library scanEnabledAutomatically processes new episodes
Minimum intro duration15 secondsFilters out false positives (short bumpers)
Maximum intro duration120 secondsMost TV intros are under 2 minutes
Show skip intro buttonEnabledThe core feature
Show skip credits buttonEnabledTriggers "Next Episode" prompt
Auto skip introsDisabledLet users choose - auto-skip can be jarring
Fingerprint cacheEnabledAvoids re-analyzing already processed episodes

Initial analysis and CPU impact

The first analysis scans your entire TV library. This is the most CPU-intensive part:

Library sizeApproximate timeCPU impact
100 episodes10-30 minutesModerate
1,000 episodes2-6 hoursHigh
5,000 episodes12-24 hoursVery high

The initial analysis is a one-time cost. After the first run, only new episodes are analyzed incrementally.

Managing CPU usage:

  • Schedule analysis during off-peak hours (Dashboard → Scheduled Tasks → Detect Introductions → set to 3 AM)
  • Limit analysis threads to 2 on low-power hardware (N100, Raspberry Pi)
  • Exclude non-TV libraries (movies, music) in plugin settings

Client compatibility

ClientSkip IntroSkip CreditsAuto-Skip
Jellyfin Web
Jellyfin Android
Jellyfin Android TV
Jellyfin iOS (Swiftfin)✅ (1.4+)Partial
Jellyfin Media Player
FindroidPartialPartial
Infuse
Kodi + Jellyfin addon❌ (Kodi has its own skip)

Infuse users: Infuse does not support Jellyfin server-side plugins. The skip button will not appear.

Manual overrides

For shows where automatic detection fails (cold opens, variable anime intros):

  1. Navigate to the episode → Edit → Intro Skipper section
  2. Set the intro start and end timestamps manually
  3. Manual overrides take priority over automatic detection

Intro Skipper vs Jellyfin Native Media Segments

Jellyfin 10.10 introduced Media Segments - a server-side API for defining typed time-spans. The official chapter-based segment plugin uses chapter names to detect intros.

FeatureIntro SkipperNative Media Segments
Detection methodAudio fingerprintingChapter name matching
AccuracyVery highDepends on chapter quality
Works without chaptersYesNo
CPU costHigh (initial scan)Low

For most users, Intro Skipper is the better choice because it works regardless of whether your files have chapter markers.

Troubleshooting

ProblemFix
Skip button not appearingUse a compatible client (see table above)
No intros detectedRun "Detect Introductions" manually
Wrong intro timestampsIncrease minimum intro duration to 20-25s
CPU at 100% for hoursNormal for first run - schedule during off-peak
Plugin not in catalogVerify the repository URL is correct

Plugin 2: Chapter Images

What it does: Generates thumbnail images for each chapter in your videos. These appear in the seek bar when scrubbing - exactly like YouTube chapter previews.

Source: Official Jellyfin catalog

Installation

Dashboard → Plugins → Catalog → Chapter Image Extractor → Install → Restart

Configuration

Dashboard → Plugins → Chapter Image Extractor:

  • Extract chapter images during library scan: Enabled
  • Image resolution: 320×180 (good balance of quality and storage)

Storage impact

Chapter images are stored in /config/metadata/. For a large library:

  • Average movie (10 chapters): ~3 MB of thumbnails
  • 1000 movies: ~3 GB additional metadata storage

Worth it for the scrubbing experience.


Plugin 3: Merge Versions

What it does: Merges duplicate versions of the same movie (e.g., 1080p and 4K copies) into a single library entry. Users see one item and can choose their preferred version at playback.

Source: Official Jellyfin catalog

Installation

Dashboard → Plugins → Catalog → Merge Versions → Install → Restart

How to use

After installation, run the merge task:

JellyWatchTry JellyWatch — Your Jellyfin companion, everywhere.

Dashboard → Scheduled Tasks → Merge all movie versions → Run Now

Jellyfin identifies duplicates by TMDB ID and merges them automatically.

File naming for multiple versions

The Dark Knight (2008)/
  The Dark Knight (2008) - 1080p.mkv
  The Dark Knight (2008) - 4K.mkv
  The Dark Knight (2008) - 4K DV.mkv

Jellyfin shows one entry with a version selector at playback.


Plugin 4: Playback Reporting

What it does: Records detailed playback statistics - who watched what, when, for how long, on which device, and with what playback method.

Source: Official Jellyfin catalog

Installation

Dashboard → Plugins → Catalog → Playback Reporting → Install → Restart

What it tracks

  • Every play event (start, pause, stop, seek)
  • User, device, client app
  • Playback method (Direct Play / Transcode)
  • Duration watched
  • Item played (title, season, episode)

Viewing reports

Dashboard → Plugins → Playback Reporting → Reports:

  • User activity: Who watches the most
  • Popular content: Most-watched movies and shows
  • Playback methods: Direct Play vs Transcode ratio
  • Device breakdown: Which clients are used most

Export data

Playback Reporting stores data in a SQLite database that can be exported for external analysis (Grafana, Excel, etc.).


Plugin 5: Skin Manager

What it does: Applies custom CSS themes to the Jellyfin web interface with one click - no manual CSS editing required.

Source: Official Jellyfin catalog

Installation

Dashboard → Plugins → Catalog → Skin Manager → Install → Restart

Available themes

ThemeStyle
UltrachromicDark, vibrant, Netflix-like
Jellyfin RebornClean, modern redesign
NoirMinimal dark theme
KaleidochromicColorful, playful

Dashboard → Plugins → Skin Manager → Select theme → Apply


Plugin 6: Jellyscrub

What it does: Generates video preview thumbnails that appear when hovering over the seek bar - the "trickplay" feature you see on Netflix and YouTube.

Repository: https://raw.githubusercontent.com/nicknsy/jellyscrub/main/manifest.json

Installation

  1. Add the repository
  2. Install Jellyscrub
  3. Restart Jellyfin
  4. Run the scheduled task: Generate Trickplay Images

Storage impact

Trickplay images are larger than chapter images:

  • Average movie: ~50-100 MB of trickplay images
  • 1000 movies: ~50-100 GB

Consider storage before enabling for large libraries. Store trickplay data on a fast drive for best performance.

Note: Jellyfin 10.9+ includes native trickplay support - check if your version already has it before installing Jellyscrub.


Plugin Compatibility Matrix

PluginJellyfin 10.8Jellyfin 10.9Performance impact
Intro SkipperLow (background task)
Chapter ImagesLow
Merge VersionsNone
Playback ReportingVery low
Skin ManagerNone
Jellyscrub⚠️ (use native)Medium (generation)

For a well-rounded Jellyfin setup:

  1. Intro Skipper - skip intros like Netflix
  2. Chapter Image Extractor - visual scrubbing
  3. Merge Versions - clean library with multiple quality options
  4. Playback Reporting - understand your server usage
  5. OpenSubtitles - subtitle downloads
  6. Trakt - watch history sync and backup
  7. Skin Manager - beautiful UI

Monitor Plugin Performance Impact

Some plugins run background tasks that can spike CPU usage - especially Intro Skipper analysis and Jellyscrub generation. Schedule these tasks during off-peak hours.

JellyWatch shows you CPU usage in real time - you can see exactly when a background plugin task is running and how much it impacts your server.


Great plugins installed - now monitor your server from your phone. Download JellyWatch on Google Play - real-time CPU monitoring, session tracking, and server health for Jellyfin on Android.

On Emby? Download EmbyWatch on Google Play - the same monitoring experience for Emby servers.

Comments 2

QoL_King·

Merge Versions plugin is a must-have if you keep both 1080p and 4K copies. One library entry, version selector at playback. Clean.

SkipIntro·

Intro Skipper + Chapter Images + Skin Manager = Netflix-level experience on a self-hosted server. The future is here.

Leave a comment

Never displayed publicly.
0 / 2000 · Supports limited Markdown: **bold**, *italic*, `code`, [link](url), lists, > quote.