End-to-end encrypted sync for Obsidian.
Website · Cloudflare deployment · Docker deployment
English | 한국어 | 日本語 | Deutsch | 简体中文 | 繁體中文
Keep your Obsidian vault in sync across devices with local encryption, version history, and conflict-safe file handling.
Synch is an independent community plugin and service. It is not affiliated with Obsidian.
flowchart LR
device["Your device"] --> encrypt["Encrypt vault data locally"]
encrypt --> server["Synch Cloud or your self-hosted server"]
server --> other["Download and decrypt on another device"]
The sync service stores encrypted file blobs and encrypted sync metadata. It is designed so that the hosted service cannot read your plaintext notes, plaintext file paths, or vault keys.
Every option has a different balance of convenience, control, and setup effort.
| Option | Encryption | Storage model | Conflict handling | Best fit |
|---|---|---|---|---|
| Synch | Device-side E2EE | Synch Cloud or self-hosted | Automatically merges non-overlapping Markdown edits; preserves overlapping conflicts | Users who want a simple, open-source, privacy-focused workflow |
| Obsidian Sync | E2EE by default; standard encryption is also available | Obsidian-hosted | Official Obsidian integration and sync history | Users who prefer the official hosted service |
| Self-hosted LiveSync | E2EE | Self-hosted CouchDB, object storage, or optional WebRTC | Automatically merges simple conflicts | Users who want maximum backend control |
| Remotely Save | Optional password-based E2EE | Your S3, WebDAV, Dropbox, OneDrive, Google Drive, and other storage | Basic conflict detection; advanced smart conflict handling is available in Pro | Users who already have a preferred storage provider |
This comparison is intentionally high-level. Check each project's current documentation and settings before migrating an important vault.
Once connected, keep Obsidian open while Synch uploads local changes and downloads remote changes.
The Cloudflare deployment guide deploys Synch to your own Cloudflare account. For a non-Cloudflare deployment, use the Docker/systemd guide.
You can run Synch on:
See the deployment guides:
After deployment, set the custom API base URL in the plugin settings.
Always create a full backup of your vault before:
Do not run multiple synchronization providers against the same vault unless you fully understand how their file watchers and conflict resolution interact.
This section is provided for Obsidian developer policy review and for users who want to understand what the plugin does before installing it.
Synch requires a Synch account to use the hosted sync service. The account is used to authenticate devices, create and connect remote vaults, issue sync tokens, enforce storage limits, and manage service access.
Synch connects to the configured Synch API base URL over HTTPS and WebSocket
connections. For the hosted service, this is Synch-operated infrastructure.
The default hosted API endpoint is https://api.synch.run, and realtime sync
uses wss://api.synch.run WebSocket connections. The plugin uses network
requests to:
Synch-hosted infrastructure uses third-party providers, including Cloudflare for hosting, storage, networking, databases, queues, and related infrastructure. Billing is handled by Polar.
Vault file contents and file path metadata are encrypted on your device before they are uploaded. Synch stores encrypted blobs and encrypted sync metadata and is designed so that the hosted service cannot read your plaintext notes, plaintext file paths, or plaintext vault keys.
End-to-end encryption does not hide all operational metadata. Synch may process account information, vault identifiers and names, organization and membership records, local vault identifiers, blob identifiers, file sizes, storage usage, timestamps, sync cursors, session information, IP addresses, User-Agent strings, billing identifiers for hosted subscriptions, and similar operational metadata.
Synch reads and writes files inside the current Obsidian vault so it can sync selected vault files. It stores plugin settings with Obsidian's plugin data API, stores the device session token with Obsidian's secret storage API, and stores local sync state in browser IndexedDB.
Synch does not intentionally read or write files outside the current Obsidian vault.
The hosted service offers free and paid subscription plans. The current paid hosted plan is Sync Starter, available with monthly or annual billing. Payment processing and subscription management are handled by Polar.
The Synch Obsidian plugin does not include client-side telemetry and does not show ads. The hosted service may process operational logs and service metadata needed to run, secure, troubleshoot, and improve the service.
For details, read the hosted service legal documents:
Issues, bug reports, documentation improvements, and pull requests are welcome. See the contributing guide for more about when to open an issue or a pull request.
Synch is open source under the MIT License.