Shiori vs Wallabag: Bookmark Managers Compared
Unlike Wallabag’s Full Read-Later Stack, Shiori Strips Down to Essentials
Wallabag is a mature Pocket replacement with native mobile apps, RSS feeds, tagging, annotations, and e-reader integration. Shiori is a Go binary that saves bookmarks with offline copies and gets out of the way. Both archive web pages for offline reading, but they target different users — Wallabag for the reading-workflow obsessive, Shiori for anyone who just wants bookmarks that don’t break.
Updated March 2026: Verified with latest Docker images and configurations.
Feature Comparison
| Feature | Shiori | Wallabag |
|---|---|---|
| Language | Go | PHP (Symfony) |
| Database | SQLite, PostgreSQL, MySQL | PostgreSQL, MySQL, SQLite |
| Idle RAM | ~25–30 MB | ~150–300 MB |
| Container count | 1 | 2–3 (app + database + Redis) |
| Offline archiving | Full HTML snapshots | Article content extraction |
| Mobile apps | PWA only | Native Android + iOS |
| Browser extension | Yes (beta) | Yes (mature, all browsers) |
| Tagging | Yes | Yes |
| Full-text search | Yes | Yes |
| Annotations/highlights | No | Yes |
| RSS feed output | No | Yes (per tag/starred) |
| Import from Pocket | Yes | Yes |
| Import from Netscape | Yes | Yes |
| E-reader export | No | Yes (EPUB, PDF, Kindle) |
| API | Yes (REST) | Yes (REST, OAuth2) |
| Multi-user | Yes | Yes |
| SSO/proxy auth | Yes | Via reverse proxy |
| License | MIT | MIT |
Installation Complexity
Shiori is a single container:
services:
shiori:
image: ghcr.io/go-shiori/shiori:v1.8.0
container_name: shiori
environment:
- SHIORI_DIR=/srv/shiori
- SHIORI_HTTP_SECRET_KEY=change-this-to-a-random-string
ports:
- "8080:8080"
volumes:
- shiori-data:/srv/shiori
tmpfs:
- /tmp
restart: unless-stopped
volumes:
shiori-data:
Default login: shiori / gopher. Change immediately.
Wallabag needs three services:
services:
wallabag:
image: wallabag/wallabag:2.6.14
container_name: wallabag
restart: unless-stopped
ports:
- "8080:80"
environment:
SYMFONY__ENV__DATABASE_DRIVER: "pdo_pgsql"
SYMFONY__ENV__DATABASE_HOST: "db"
SYMFONY__ENV__DATABASE_PORT: "5432"
SYMFONY__ENV__DATABASE_NAME: "wallabag"
SYMFONY__ENV__DATABASE_USER: "wallabag"
SYMFONY__ENV__DATABASE_PASSWORD: "change_this_password"
SYMFONY__ENV__DOMAIN_NAME: "https://wallabag.example.com"
SYMFONY__ENV__SERVER_NAME: "Your Wallabag"
depends_on:
- db
- redis
db:
image: postgres:16-alpine
container_name: wallabag-db
restart: unless-stopped
environment:
POSTGRES_DB: wallabag
POSTGRES_USER: wallabag
POSTGRES_PASSWORD: change_this_password
volumes:
- wallabag-db:/var/lib/postgresql/data
redis:
image: redis:7-alpine
container_name: wallabag-redis
restart: unless-stopped
volumes:
wallabag-db:
Default login: wallabag / wallabag. The setup is more involved, but the documentation is mature.
Performance and Resource Usage
| Resource | Shiori | Wallabag |
|---|---|---|
| Idle RAM | ~25–30 MB | ~150–300 MB |
| Disk (application) | ~15 MB | ~200 MB |
| Startup time | <1 second | 5–10 seconds |
| Archive storage | Full HTML (larger) | Extracted content (smaller) |
| CPU usage | Negligible | Low (spikes during import) |
Shiori saves complete HTML snapshots including images and stylesheets. Archives are larger per bookmark but more faithful to the original page. Wallabag extracts article content — smaller files, cleaner reading, but sometimes loses formatting or images.
For 1,000 bookmarks with archives: Shiori uses roughly 3–5 GB, Wallabag uses 500 MB–1 GB.
Community and Support
| Metric | Shiori | Wallabag |
|---|---|---|
| GitHub stars | ~9K | ~10K |
| First release | 2019 | 2013 |
| Update frequency | Every few months | Monthly |
| Documentation | Basic README | Full docs site |
| Commercial offering | None | wallabag.it (hosted) |
| Community size | Small | Large, active |
| Third-party integrations | Few | Many (Calibre, KOReader, RSS) |
Wallabag has 10+ years of ecosystem growth. Its browser extensions work reliably across Chrome, Firefox, Safari, and Edge. Shiori’s browser extension exists but is marked beta — it works, but edge cases remain.
Use Cases
Choose Shiori If…
- You want the lightest possible bookmark manager with archiving
- Your server has limited RAM (256 MB or less available)
- You prefer SQLite simplicity — no database server, no Redis
- You mainly add bookmarks and search them later, without complex workflows
- You run ARM hardware like a Raspberry Pi
Choose Wallabag If…
- You want native mobile apps for reading articles on the go
- You use e-readers and want EPUB/PDF export or Kindle integration
- You need RSS feeds of your saved articles (for feeding to other tools)
- You annotate and highlight text within saved articles
- You’re migrating from Pocket or Instapaper and want the closest feature match
Final Verdict
Shiori wins on resource efficiency: 25 MB of RAM, one container, zero dependencies. Wallabag wins on ecosystem maturity: native apps, e-reader integration, annotations, RSS output, and a decade of community development. For a personal bookmark archive on minimal hardware, Shiori is the practical choice. For a full Pocket replacement with reading workflows, Wallabag has no real competition among self-hosted options.
FAQ
Can I migrate from Shiori to Wallabag?
Export from Shiori as a Netscape bookmark file, then import into Wallabag via Settings > Import > Firefox. Offline archives don’t transfer — Wallabag will re-fetch and re-extract the content.
Does Shiori have a reading mode like Wallabag?
Shiori shows archived pages in their original HTML format. Wallabag extracts and reformats content into a clean reading view, similar to Firefox Reader Mode.
Can Wallabag run with SQLite like Shiori?
Yes, but it’s not recommended for production. Wallabag’s Symfony stack benefits from PostgreSQL or MySQL for performance and concurrent access. SQLite works for single-user setups.
Which archives web pages more faithfully?
Shiori. It saves complete HTML snapshots with all assets. Wallabag extracts article content using heuristics, which sometimes misses images, sidebars, or interactive elements.
Do both support multiple users?
Yes. Both have multi-user support with separate bookmark collections per user.
Related
Get self-hosting tips in your inbox
Get the Docker Compose configs, hardware picks, and setup shortcuts we don't put in articles. Weekly. No spam.
Comments