SnapOtter
Open-source, self-hosted file-processing tool. Convert, compress, OCR, transcribe & run local AI across image, video, audio, PDF & documents, via UI, REST API &
What is SnapOtter?
Open-source, self-hosted file-processing tool. Convert, compress, OCR, transcribe & run local AI across image, video, audio, PDF & documents, via UI, REST API & pipelines. Your files never leave your network.
Overview of SnapOtter
What it is
SnapOtter is an open-source, self-hosted file-processing infrastructure. It converts, compresses, performs OCR, transcribes, strips metadata, and runs local AI across images, videos, audio, PDFs, and documents. All operations are available through a UI, REST API, and pipelines. Files never leave the user's network. The project is dual-licensed under AGPLv3 and a commercial license.
Key features
- 200+ tools across five modalities: Image (112 tools, 55+ input formats, 17 output formats), Video (57 tools), Audio (27 tools), PDF (35 tools), and Files (23 tools).
- Image editor: a free layer-based editor with brushes, shapes, adjustments, filters, curves, and keyboard shortcuts, running in the browser and processing on the user's hardware.
- Local AI: background removal, image upscaling, photo restoration/colorization, object erasure, face blurring/enhancement, OCR (from images and PDFs), audio transcription, auto-generated video subtitles, canvas expansion, and transparency fixing. All runs on the user's hardware without internet.
- OIDC / SSO: login with Google, GitHub, Okta, or any OpenID Connect provider.
- 21 languages including English, Chinese (Simplified & Traditional), Arabic (with RTL support), and others.
- Pipelines: chain tools into reusable workflows (default 20 steps), import/export as JSON. Batch size is unlimited in the published image and 100 from a source build.
- REST API with API key auth; interactive docs at
/api/docs. - Self-hosted: single-container quick start with embedded Postgres 17 and Redis 8, or a 3-container Compose stack for production.
- Multi-arch: runs on AMD64 and ARM64 (Intel, Apple Silicon, Raspberry Pi).
- Privacy first: files never leave the network. Basic analytics can be disabled at build time or runtime.
Use cases
- Replacing multiple SaaS tools (CloudConvert, Smallpdf, TinyPNG, TinyWow, Otter.ai) with a single self-hosted stack.
- Batch processing images, videos, audio, PDFs, and documents on local hardware.
- Running AI tasks like OCR, transcription, background removal, and image upscaling without sending data to external services.
- Building automated file-processing pipelines via the REST API or UI.
- Teams needing SSO integration with OIDC providers.
Getting started
bash docker run -d --name SnapOtter -p 1349:1349 -v SnapOtter-data:/data snapotter/snapotter:latest Open http://localhost:1349 and log in with admin / admin. For production, see the repository README for the Compose stack and NVIDIA GPU acceleration.
License and pricing
The project is dual-licensed under AGPLv3 (free) and a commercial license (paid). The AGPLv3 requires source disclosure for modified versions run as a network service. A commercial license is available for proprietary or SaaS use where AGPLv3 source-disclosure is not suitable. Pricing and terms are available by contacting the project.
Based on the project's public README and repository metadata.