Shoko
$9.00 / month
Free trial: 7 days
Sign-up fee: $1.00
AniDB-driven anime library manager — exact file identification via ed2k hashing, perfect metadata for Plex, Jellyfin, and Kodi.
A managed Shoko instance hosted on ElfHosted. Shoko fingerprints your anime files via ed2k hashing, matches them against AniDB (the authoritative anime database), and provides correct metadata — proper episode counts, OVAs, seasons, romanized titles — to Plex, Jellyfin, and Kodi via dedicated plugins. The fix for everyone whose anime library has been silently wrong in their media server for years.
The reason your Plex anime library has wrong episode counts, missing OVAs, and broken season ordering is that TVDB/TMDB don’t model anime well. Shoko fixes that by using AniDB, the database that does.
What is Shoko?
Shoko is a self-hosted anime library manager that uses AniDB as its metadata authority. It fingerprints each anime file via ed2k hashing, looks the hash up in AniDB, and pulls back authoritative metadata — exact episode numbers, OVA and special episode handling, romanized and original titles, group/release info, and proper season ordering. Shoko then exposes that metadata to your media server (Plex, Jellyfin, or Kodi) through dedicated plugins so the corrected library shows up in the player.
The result: anime that’s actually labelled correctly. The “ep 13” that Plex insists is “ep 1 of season 2” finally shows where it belongs. OVAs surface as OVAs instead of as movies. The 26-episode shounen with two arcs gets split correctly. Series with multiple romanizations get matched regardless of which version your file uses.
Key Features
- 🔑 ed2k hash-based matching: Shoko identifies files by their content hash, not their filename. Files are matched against AniDB even when the filename is garbled, mistitled, or stripped of metadata.
- 🗃️ AniDB metadata authority: AniDB is the most accurate database for anime episode structures, OVAs, specials, and complex series. TVDB and TMDB don’t come close.
- 🔌 Plex / Jellyfin / Kodi plugins: dedicated plugins surface Shoko’s corrected metadata in the player you actually use. Your library looks the same, but everything’s labelled right.
- 📂 Auto-organisation: rename and refile anime according to a clean, configurable structure once Shoko has matched it via AniDB.
- 🏷️ Tag and group management: AniDB’s full tag taxonomy (genres, themes, content warnings, target demographics) plus release-group tracking.
- 🔓 FOSS: MIT-licensed; no upstream subscription.
- 🔄 Updates handled: ElfHosted keeps Shoko current.
Why Anime Needs Shoko (and TV Shows Don’t)
Plex and Jellyfin do a fine job with western TV using TVDB or TMDB metadata. Anime is structurally different in ways those databases don’t model well:
- OVAs and specials — anime has many off-broadcast episodes (OVAs, OADs, recap specials, theatrical cuts) that TVDB/TMDB either ignore or mis-categorise.
- Multi-arc series — a single series often has multiple distinct arcs that fans treat as separate seasons but TVDB lists as one continuous run, or vice versa.
- Romanized vs original titles — the same series has multiple legitimate names. Filename-based matching breaks; hash-based matching doesn’t.
- Release-group provenance — anime has a strong fansub/release-group culture; AniDB tracks which group released which file. TVDB doesn’t model this at all.
For casual anime collections (a dozen series, mainstream titles), Plex’s built-in matching is good enough. For serious collections with hundreds of series, OVAs, and edge cases, Shoko is the layer that makes the library actually correct.
Why Run Shoko on ElfHosted?
Shoko is a Mono/.NET service — runnable at home, but it works best when co-located with your media server because the plugins talk to it over the network. ElfHosted runs Shoko alongside Plex/Jellyfin on the same backend:
- Your ElfHosted Plex or Jellyfin reaches Shoko over the internal network once you install the Shoko agent or plugin there.
- Shared library storage — Shoko’s organising/renaming applies directly to the files Plex/Jellyfin reads.
- HTTPS on your own ElfHosted subdomain.
- SSO on the web UI.
- Updates roll out without you touching anything.
Technical Specifications
- 🛠️ Software: Shoko Server (FOSS, MIT)
- 🗃️ Metadata source: AniDB (authoritative anime database)
- 🔑 File matching: ed2k content hashing — filename-independent
- 🔌 Media-server plugins: Plex, Jellyfin, Kodi
- 🔑 Subscription: none required for Shoko itself; AniDB account recommended (free)
- 📂 Library storage: shared with your ElfHosted media server
- 🌐 Access: hosted on your ElfHosted subdomain with TLS
- 🔄 Updates: handled by ElfHosted
Frequently Asked Questions
How do I run Shoko without self-hosting it?
Add it to your ElfHosted subscription — this product is a managed Shoko Server instance pre-wired to share storage with your ElfHosted Plex or Jellyfin.
Do I need an AniDB account?
A free AniDB account is recommended — it lets Shoko hash and report files into AniDB’s database, which improves matching for everyone. Shoko will work without one in read-only mode but matching is significantly better with an account.
Does Shoko replace Plex or Jellyfin?
No. Shoko is the metadata layer; Plex/Jellyfin remain the player. The Shoko plugin in your media server replaces the default anime metadata with Shoko’s AniDB-sourced version. You still browse and play in Plex/Jellyfin.
Will it fix my existing broken anime library?
Yes — that’s the main use case. Run Shoko’s hash scan on your existing library; it identifies files via content hash and assigns correct AniDB metadata. The Plex/Jellyfin plugin then surfaces it.
What about manga?
Shoko is anime-only (the moving pictures kind). For manga, see Komga (comics/manga specialist with Tachiyomi/Mihon support) or Kavita.
How does this compare to letting Plex match anime via TVDB?
TVDB has anime data but doesn’t model it well — episode numbering, OVA placement, multi-arc series, and special episodes all suffer. Shoko’s AniDB integration is purpose-built for anime structure. For serious anime collections the difference is substantial.
Hosted Shoko is the metadata fix for serious anime collections — AniDB-grade accuracy for episode structures, OVAs, and series ordering, surfaced in Plex/Jellyfin/Kodi via dedicated plugins. The thing your anime library has needed since you noticed Plex couldn’t tell episode 13 from season 2 episode 1.
Only logged in customers who have purchased this product may leave a review.
Related products
Audiobookshelf
Self-hosted audiobook and podcast server — your library, your apps, no Audible subscription.
A managed Audiobookshelf instance hosted on ElfHosted. Stream audiobooks and podcasts from your own library to native iOS, Android, and web apps — multi-user, with progress sync across devices. Fully open-source, no subscription required to the upstream project. Bring your own audiobook files and podcast feeds.
Calibre Web (Automated)
Self-hosted Calibre library web UI with automated ingestion, format conversion, and send-to-Kindle/Kobo.
A managed Calibre Web Automated instance hosted on ElfHosted. Browse, read, and download your Calibre ebook library via a modern web UI — plus an automated ingestion pipeline that processes new books dropped into an inbox folder, converts formats (EPUB→KEPUB for Kobo, etc.), and updates metadata without manual Calibre desktop sessions. OPDS support for KOReader and other reading apps. Bring your existing Calibre library or start fresh.
Storyteller
Self-hosted ebook + audiobook fusion — combine your EPUB and its audiobook into a single EPUB 3 with Media Overlays so the words highlight as the narrator reads.
A managed Storyteller instance hosted on ElfHosted. Upload an ebook and its audiobook; Storyteller transcribes the audio, aligns it sentence-by-sentence with the ebook text, and outputs a single EPUB 3 file with Media Overlays. Open the result in any compatible reader — including the dedicated iOS and Android Storyteller apps — and read along while the narrator reads, with text highlighting in time. Audible’s Immersion Reading / Whispersync for Voice, on your own files.
Transcription is the slow part of alignment, and on ElfHosted it runs on shared NVIDIA T4 GPUs instead of your instance's CPU. A four hour audiobook transcribes in around half an hour rather than several hours. The GPU pool is shared between tenants, so timings vary with how many other transcriptions are running.
Komga
Self-hosted comics and manga library server — series metadata, reading order, and Tachiyomi/Mihon native support.
A managed Komga instance hosted on ElfHosted. Serve CBZ, CBR, PDF, and EPUB comics and manga from your own library with full series and reading-order metadata, a polished web reader, and native Tachiyomi/Mihon support via the Komga extension. Fully FOSS. Bring your own comic and manga files.

Reviews
Clear filtersThere are no reviews yet.