Koillection
Koillection handles service allowing users to manage any kind of collections as a self-hosted solution.
Self-hosted collection management, honestly reviewed. For collectors who are done with spreadsheets and don’t want to pay a subscription to catalog their stuff.
TL;DR
- What it is: Self-hosted (MIT) collection manager for physical collections — books, DVDs, stamps, games, coins, or anything else you accumulate [README].
- Who it’s for: Collectors who want a proper web interface with custom metadata, tagging, wishlists, and loan tracking without paying a monthly fee to a third-party app [README][wiki].
- Cost savings: Koillection is free software. Comparable managed collection apps (CLZ, Memento Database Pro, Notion databases) run $5–40/month depending on scope. A $5 VPS running Koillection is your ceiling [README].
- Key strength: Total flexibility — no predefined metadata schema means it works for any kind of collection, not just the categories a SaaS app decided to support [README][wiki].
- Key weakness: No automatic metadata download out of the box. You add everything manually, or write your own HTML scraper. If you want “scan barcode, get book details,” this tool will frustrate you [README].
What is Koillection
Koillection is a self-hosted web application for managing physical collections. The project describes itself plainly in the README: “a self-hosted collection manager created to keep track of physical (mostly) collections of any kind like books, DVDs, stamps, games” [README]. It’s built by Benjamin Jonard, a solo developer based in France, and has reached 1,124 GitHub stars since its inception.
The mental model is a directory tree. You create collections, then add items inside them. Items can have any metadata you define — text fields, image uploads, whatever the thing you’re cataloging actually needs. There’s no built-in schema for books or stamps or vinyl records, which is both the point and the constraint. You build the data model yourself [wiki].
What Koillection is not: a metadata-downloading app like Calibre (books) or Discogs (records). It won’t reach out to an API and fill in ISBN data or album track listings automatically. The README explicitly states it “doesn’t come with pre-built metadata download” [README]. Custom HTML scrapers are being implemented, but as of the last wiki update in August 2023, this was still described as under construction [wiki].
The stack is PHP/Symfony on the backend with PostgreSQL, MySQL, or MariaDB. Docker is the recommended deployment path. There’s also an experimental FrankenPHP Docker option for users who want a single-container setup [wiki]. The project has been translated into English, French, Spanish, and Dutch — all at 100% completion via Crowdin [README].
Why people choose it
Third-party coverage of Koillection is thin. It appears in roundup lists and occasional forum recommendations rather than dedicated long-form reviews, which itself tells you something: this is a tool for a specific audience, not a mainstream self-hosting darling.
The clearest real-world recommendation comes from a Stack Exchange thread [3] where someone was looking for collection management software for books and stamps on Mac. The requirement was multi-library support, grouping by series, monetary value fields, and offline access. The answer pointed to Koillection running in Docker as the closest match to those requirements — specifically because it supports any kind of collection and lets you define your own metadata. The constraint in that thread was immediately apparent: the person asking said “I’ve got no idea how to install this,” which flagged the Docker barrier for non-technical users [3].
LinuxLinks [1] categorizes Koillection in its collection manager roundup alongside desktop tools like GCStar, Tellico, and OpenNumismat. The framing is “self-hosted collection manager” without editorial commentary — a mention, not a review.
The pattern that emerges from the limited coverage: people reach for Koillection when existing tools are too narrow. Dedicated book apps only do books. Coin apps only do coins. Spreadsheets don’t have image support. Koillection’s generic schema wins when your collection doesn’t fit a predefined category, or when you have multiple types of collections and don’t want five separate apps.
Features
Based on the README and wiki:
Core collection management:
- Collections and items: create, edit, delete with no practical limit [wiki]
- Metadata fields: add text, images, or any data type to items [wiki]
- Templates: define a field set once, reuse across items in a collection [wiki]
- Tags: cross-collection grouping — tag items from different collections with the same tag [wiki]
- Wishlist: track items you want but don’t have yet [wiki]
- Loans: log which items you’ve lent to whom [wiki]
Access and sharing:
- Multi-user support: multiple accounts per instance [wiki]
- Visibility controls: set collection or item visibility [wiki]
- Basic sharing features for showing collections to others [wiki]
Interface:
- Dark mode [wiki]
- PWA (Progressive Web App) — installable on mobile [wiki]
- English, French, Spanish, Dutch UI [README]
Technical:
- Supports PostgreSQL, MySQL, and MariaDB (MariaDB since v1.3.15) [README]
- REST API [wiki]
- Docker and FrankenPHP Docker deployment options [wiki]
- Manual installation path also documented [wiki]
- Scraping: custom HTML scrapers can be built; native scraping capability in progress [README][wiki]
What’s absent:
- No barcode scanning or ISBN/GTIN lookup
- No automatic metadata population from external databases
- No mobile native app (PWA fills this partially)
- No built-in image recognition or AI-assisted cataloging
- No export to CSV, JSON, or other formats documented prominently in the wiki
The REST API exists, which means you can potentially build import/export tooling, but there’s no out-of-the-box bulk import from Discogs, Goodreads, or other platforms. Every item you add is manual or scraped via a custom script you write yourself [wiki].
Pricing: SaaS vs self-hosted math
Koillection has no SaaS tier. It’s MIT-licensed software you run on your own infrastructure — the cost is whatever your server costs [README].
The relevant comparison is what collectors actually pay for managed alternatives:
Managed collection apps:
- CLZ apps (CLZ Barry, CLZ Books, CLZ Movies, CLZ Music): per-category apps with subscription tiers. Their platform targets serious collectors with barcode scanning and cloud sync, at a meaningful per-year cost.
- Memento Database Pro: a flexible database app often used for collections. The Pro tier adds cloud sync and templates.
- Notion or Airtable databases: general-purpose, flexible, $8–20/month per user. Many collectors build their own collection tracker here before getting frustrated with image handling and record volume.
- Collector-specific SaaS: various vertical apps (for wine, watches, trading cards) run $5–15/month each.
Koillection self-hosted:
- Software: $0 (MIT) [README]
- VPS: $5–10/month on Hetzner, Contabo, or DigitalOcean covers a low-traffic personal instance
- Domain + reverse proxy: optional but recommended for HTTPS access
If you’re using even one paid collection app at $5–10/month and Koillection covers your use case, the self-hosted math is immediate. Over two years: $120–240 in SaaS fees vs. one afternoon of Docker setup. If you’re using Notion at $16/month for a clunky spreadsheet workaround, the gap is larger.
The constraint: Koillection’s value only materializes if your collections don’t require barcode-based metadata lookup. If you’re cataloging 500 books and need automated ISBN lookups, Koillection saves you money but costs you hours of manual entry. Factor that honestly.
Deployment reality check
The wiki is sparse. The installation page exists and covers Docker, FrankenPHP Docker, and manual paths, but the wiki carries a persistent note that it’s “under construction” [wiki]. That’s a yellow flag for anyone who gets stuck and expects documentation to bail them out.
What you need:
- A Linux VPS with 1–2GB RAM (this is not a heavy application)
- Docker and docker-compose
- A database: PostgreSQL, MySQL, or MariaDB (bundled via docker-compose or external)
- A reverse proxy (Caddy or nginx) for HTTPS if you want public access
- Basic terminal literacy
Realistic time estimate:
- Technical user who’s done Docker before: 30–45 minutes to a running instance
- Someone new to Docker following the wiki: 2–4 hours, possibly with troubleshooting
- Non-technical user with no Linux server experience: not the right tool without help
The README includes a prominent data warning: “Please back up your database, especially when updating to a new version. I do my best to test new versions, especially when they contain data migrations but some edge cases may escape my vigilance.” [README] This is an honest note from a solo developer, and it’s the right note to include. The practical implication: automate your backups, don’t skip them before updates.
There’s a Gitpod demo linked in the README — you can spin up a temporary instance to evaluate the UI without installing anything locally. That’s a genuinely useful addition for evaluators [README].
The project is primarily maintained by one developer. There’s no company behind it, no enterprise support tier, no SLA. The GitHub activity has been consistent but moderate. If the maintainer goes quiet, you own your instance and its data (MIT license means this), but you’re on your own for future updates.
Pros and cons
Pros
- MIT license, genuinely free. No license restrictions, no commercial use clauses, no surprise pricing changes. Fork it, embed it, run it forever [README].
- Schema-agnostic. The same instance handles your book collection, your stamp albums, your vintage game cartridges, and your wine cellar. No SaaS app gives you this flexibility across categories [wiki].
- Custom metadata templates. Define the fields that matter for each collection type — not the fields a product manager decided mattered [wiki].
- Tags across collections. Tag items from different collections with the same concept, then browse by tag. Useful for thematic groupings [wiki].
- Wishlists and loans. Two features that actually matter for physical collectors: tracking what you want to buy and what you’ve lent to friends [wiki].
- Multi-user support. Run one instance for a household of collectors or a small club [wiki].
- PWA. Usable on mobile without an app store [wiki].
- REST API. Allows custom tooling for import, export, or integration with other systems [wiki].
- Active translation. English, French, Spanish, Dutch at 100% via Crowdin — this is genuine internationalization, not an afterthought [README].
Cons
- No automatic metadata download. This is the biggest limitation for most collectors. Adding 500 books by hand is a project, not a Sunday afternoon [README].
- Scraping in progress. The wiki describes scraping capabilities as “currently being implemented” — it’s not a shipped feature you can rely on [README][wiki].
- Solo maintainer. Benjamin Jonard appears to be the sole developer. The project has no company, no funding publicly disclosed, and no team. Good for now; risk for the long term.
- Wiki is sparse and partially under construction. If you hit an edge case during deployment or configuration, you may not find the answer there [wiki].
- Small community. 1,124 GitHub stars is a modest footprint. The r/selfhosted community discusses it occasionally, but you won’t find an active Discord or dozens of community-written guides.
- No bulk import. No documented path for importing from Discogs, Goodreads, GoodGameDB, or other platforms. Starting with an existing large collection means significant manual work or writing your own import scripts.
- No mobile native app. The PWA works but is not a substitute for a barcode-scanning native app for in-store catalog lookups.
Who should use this / who shouldn’t
Use Koillection if:
- You have one or more physical collections and want a proper web interface instead of a spreadsheet.
- Your collection type isn’t served by a dedicated app (or you have multiple types of collections and don’t want multiple apps).
- You’re comfortable with Docker, or willing to spend an afternoon with a tutorial.
- You don’t need automatic metadata lookup — you’re either starting fresh or willing to do manual entry.
- You want a tool you own completely, with no monthly fee, no vendor lock-in, and no risk of the service shutting down.
- You want to share your collection with others on your network or family members.
Skip it if:
- You need barcode scanning with automatic metadata population. Use Calibre for books, Discogs for records, CLZ for games — specialized tools with proper API integrations.
- You’re a non-technical user with no interest in Docker or Linux servers. The setup barrier is real [3].
- You need a mobile-first experience for active cataloging in the field (record shops, flea markets). The PWA isn’t designed for that workflow.
- You want a polished, fully-documented product with commercial support and SLAs. This is a solo developer’s open-source project, and it shows in the wiki quality.
Alternatives worth considering
- Calibre — best-in-class for books specifically. Has metadata download, OPDS server, e-reader sync. No breadth across other collection types.
- Homebox [1] — self-hosted inventory system built for household items, written in Go with SQLite. Simpler than Koillection, more focused on asset tracking than collections. MIT license.
- GCStar — desktop application, not web-based. Handles books, DVDs, coins, games with dedicated plugins. Good if you prefer local software over a web server [1].
- Tellico — KDE desktop application for personal collections. Well-maintained, good metadata plugins for books and movies, but desktop-only and Linux-native [1].
- OpenNumismat — specifically for coin collectors. Has database integrations and image management built for numismatics [1].
- Memento Database — cross-platform flexible database app, often used for custom collection tracking. Has mobile apps with barcode scanning. Paid Pro tier for cloud sync.
- Notion or Airtable — general-purpose databases that many people use for collections. More flexible for custom fields, but expensive at scale and clunky for image-heavy catalogs.
- hydrus — self-hosted, open-source image tagging and search system. Better for large digital media archives than physical collections [1].
For non-technical users who need barcode scanning: a dedicated paid app (CLZ, Delicious Library on Mac) is a more honest recommendation than Koillection.
For technical users with diverse physical collections who don’t need metadata automation: Koillection is the cleanest self-hosted option in this space.
Bottom line
Koillection fills a real gap: a general-purpose, self-hosted collection manager that doesn’t force you into someone else’s data model. If you collect things that don’t fit a dedicated app, or you collect multiple categories of things, or you just want to stop paying a subscription to catalog your own possessions — Koillection is worth the Docker setup time. The honest caveat is equally real: no automatic metadata means manual entry or custom scripting, the documentation is incomplete, and this is a one-person project, not a funded company. If you can live with those constraints, the tool delivers exactly what it says. If you need barcode scans to auto-populate your library in an afternoon, look at specialized alternatives first.
Sources
- LinuxLinks — “HomeBox - self-hosted inventory and organisation system” (collection manager roundup including Koillection). https://www.linuxlinks.com/homebox-self-hosted-inventory-and-organisation-system/
- Adam Douglas, AdamsDesk — “Little Bits: Issue #26 For June 2025” (newsletter mention). https://www.adamsdesk.com/posts/little-bits-issue-26/
- Software Recommendations Stack Exchange — “Personal collections management software” (Koillection recommended for books + stamps use case). https://softwarerecs.stackexchange.com/questions/33884/personal-collections-management-software
Primary sources:
- GitHub repository and README: https://github.com/benjaminjonard/koillection (1,124 stars, MIT license)
- Official wiki (documentation): https://github.com/koillection/koillection/wiki
Related Analytics & Business Intelligence Tools
View all 176 →Superset
71KApache Superset is an open-source data exploration and visualization platform — connect to any SQL database, build interactive dashboards, and run ad-hoc queries.
OpenBB
63KThe open-source AI workspace for finance — connect proprietary and public data, build custom analytics apps, and deploy AI agents on your own infrastructure.
Metabase
46KOpen-source business intelligence that lets anyone in your company ask questions and learn from data. Build dashboards, run queries, and share insights without SQL.
ClickHouse
46KUltra-fast column-oriented database for real-time analytics. Process billions of rows per second with SQL. Open-source alternative to Snowflake and BigQuery.
Umami
36KSimple, fast, privacy-focused alternative to Google Analytics. Own your website data.
Umami
36KSimple, fast, privacy-focused alternative to Google Analytics. Own your website data.