mrkeyoor.com_
Wed 16 Sept 07:05 UTC
Self-Hostedevaluationupdated 27 Aug 2026

syncthing review

Syncthing keeps folders synchronized directly between your computers without putting the files in a central cloud account. It solves the everyday problem of keeping the same working set on several machines while leaving storage ownership with you.

+186stars / 7d
Verdict

Our Syncthing checkout built in 82 seconds, but its 428-second test run ended with 23 packages passing and 2 failing, so source builders should reproduce the suite on their own target before shipping. For personal computers and small trusted fleets, it remains a sensible way to synchronize files without renting central storage. Use official packages for ordinary deployment, keep an independent backup, and review discovery settings if device metadata matters.

We ran it

Lab card: what happened when we ran syncthingScreenshot of syncthing (syncthing.net)
Install✓ · 65s169 packages
Build✓ · 82s
Tests✗ · 428s23 passed · 2 failed of 25 (go test)
Repo900 files~128,502 lines of source · 10.1 MB · 8 CI workflows · Dockerfile · tests dir

Answers from our run

Does syncthing build from source?

Dependencies installed in 65 seconds (169 packages), and the build succeeded in 82 seconds. We cloned commit 38ac58c into a clean Debian container with 3 CPUs and no project-specific setup.

Do syncthing's tests pass?

Not all of them: 23 of 25 passed and 2 failed when we ran the project's own test command (go test). Some failures need services or credentials a bare container does not have.

Who should not use syncthing?

Anyone looking for backup: the official FAQ says modifications and deletions propagate to every device, even though optional file versioning can soften mistakes.

What are the alternatives to syncthing?

Seafile, Nextcloud, rclone. Our Syncthing checkout built in 82 seconds, but its 428-second test run ended with 23 packages passing and 2 failing, so source builders should reproduce the suite on their own target before shipping.

Setup4/5Official binaries are simple; our source test run failed
Docs5/5Clear guides cover pairing, networking, security, and recovery
Community5/588,027 stars and an active issue and pull request queue
Maturity5/5Signed releases, stable protocols, and active August 2026 work

Discussed on

  1. hnSyncthing: Open Source Dropbox and BitTorrent Sync Replacement623 points
  2. hnSyncthing – a continuous file synchronization program545 points
  3. hnOpen Source Continuous File Synchronization444 points
  4. hnSyncthing Android App Discontinued418 points
  5. hnSyncthing: A continuous file synchronization program313 points

Who it’s for

People who want the same folders on several computers without a hosted storage provider.
Self-hosters willing to run Syncthing continuously on every participating device.
Small teams that can manage device identities, folder permissions, and their own backups.
Developers who want a local web interface plus an API for file-sync automation.

Who it’s NOT for

Anyone looking for backup: the official FAQ says modifications and deletions propagate to every device, even though optional file versioning can soften mistakes.
Users who need Dropbox-style placeholder files in the official Windows client: open issue 10844 requests Windows Virtual File System integration and on-demand files.
Privacy policies that forbid discovery metadata leaving the network: global discovery and public relays are enabled by default and learn device IDs plus connection details.
Operators with huge collections of identical files who cannot tolerate scan regressions: issue 10869 reports very slow scanning on v2.1.3.
People who want one hosted account to remain available while every personal machine is offline: Syncthing exchanges data between participating devices rather than storing a canonical cloud copy.

Setup reality

Our sandbox install succeeded in 65 seconds and added 169 Go packages. The build succeeded in 82 seconds. Tests then failed after 428 seconds: 23 packages passed and 2 failed out of 25; the log tail identifies lib/syncthing as a build failure but does not show the compiler error.

Running the product needs at least 2 devices, an exchanged device ID, and a folder accepted on both ends. The local GUI listens on port 8384 by default, while direct sync normally uses port 22000; discovery and relays can bridge harder networks.

Official binaries are easier than compiling the 900-file repository. Containers need persistent configuration and data mounts, and remote GUI access needs authentication plus careful exposure. Syncthing also needs a separate backup because deletions synchronize.

Direct device sync avoids a central file account

Syncthing watches selected folders and sends changes between approved devices. There is no provider account holding the master copy. Each machine has a cryptographic device ID, and two machines communicate only after both sides add each other. That arrangement is attractive for a laptop, desktop, home server, or family setup where the machines and disks are already yours. The web interface handles pairing, folder sharing, status, and conflicts without demanding that every user understand the wire protocol.

The absence of central storage changes availability. A new laptop can receive a folder only while another device containing it is online. With 2 frequently connected machines this is rarely a surprise; with several intermittently connected laptops it can be. An always-on home server makes the experience feel closer to hosted sync, but then you own its disk health, updates, remote reachability, and backups. Syncthing gives you control over storage rather than removing storage administration.

Synchronization will copy a mistaken deletion

The official FAQ is unusually direct: Syncthing is not an ideal backup application because changes and deletions propagate to other devices. File versioning can retain older copies, and receive-only folders can reduce certain accidental changes, but neither replaces a tested backup on separate media. If ransomware encrypts the files in a synchronized folder, those changed files are still changes for the system to distribute.

That distinction should decide where you deploy it. A 10.1 MB source checkout can become part of a good resilience plan, yet it cannot be the whole plan. Use Syncthing for current working data and a separate backup tool for history, retention, and recovery after operator mistakes. People replacing a cloud drive should also decide which machine stays online and where snapshots live before moving important folders.

What happened when we ran it

Our sandbox installed 169 Go packages in 65 seconds, and the build completed in 82 seconds. We used commit 38ac58c in an unprivileged Debian container with 3 CPUs and 8 GB of RAM. The checkout contained 900 files, about 128,502 lines of source, and occupied 10.1 MB before dependencies. Eight CI workflow files, a Dockerfile, and a tests directory were present.

The test command failed with exit code 1 after 428 seconds. Go reported 23 package results as passed and 2 as failed out of 25. The final lines identify github.com/syncthing/syncthing/lib/syncthing as a build failure, followed by successful results for packages including syncutil, tlsutil, upgrade, upnp, and versioner. The supplied tail does not include the compiler message, so it supports no claim about the cause.

That is a source-build finding, not evidence that the signed v2.1.3 binaries fail to run. It does mean the simple README instruction, go run build.go, does not tell a contributor everything about obtaining a clean full-suite result in this fresh container. Anyone modifying the Go code should capture the earlier failure lines and rerun the exact package before treating the checkout as ready.

Pairing is simple, while network policy needs thought

First launch creates configuration, encryption keys, a device ID, and a local admin interface on 127.0.0.1:8384. Two peers exchange IDs and accept the folder on both ends. Direct TCP and QUIC connections normally use port 22000. When direct paths fail, discovery and relay services help peers find and reach each other. File traffic remains encrypted, including when a public relay carries it.

The security documentation also states what those helpers can observe. Global discovery announces a device ID, external address, and listening ports every 30 minutes, while local discovery broadcasts every 30 seconds. A selected public relay learns the connecting device IDs. Administrators can disable these defaults or point the software at private infrastructure, but dynamic peers may then need explicit addresses or their own discovery service. The right setting depends on whether easy roaming or metadata minimization matters more.

The official client does not mimic every cloud-drive feature

Syncthing copies ordinary files into ordinary folders, which makes exit easy and lets existing applications work without a virtual filesystem layer. The tradeoff is disk use: every fully shared device holds its local copy. Open issue 10844 asks for Windows placeholder files and on-demand download through the operating system, behavior familiar from OneDrive and Dropbox. The request confirms that this is not an official-client feature readers should assume.

Ignore rules also deserve testing before a large rollout. Issue 8735 documents an incorrect local state involving negated ignore patterns under an ignored parent, while issue 7311 requests an easier way to share ignore rules across devices. These are specific edge cases, not proof that routine folders are unreliable. They matter to developers synchronizing source trees with changing build directories, because a small pattern mistake can create confusing local and remote views.

August 2026 activity is healthy, with a live scan regression

GitHub showed 88,027 stars and 377 combined issues and pull requests when fetched. The last push was August 25, 2026, and v2.1.3 was released on August 5. That release includes device and folder grouping, HTTP and HTTPS proxy support, configurable GUI session duration, and fixes spanning database connections, deadlock handling, UPnP, ignores, and the API. The combined open count should not be read as 377 confirmed bugs.

Current activity does not erase current defects. Issue 10869 reports very slow scanning with identical files since v2.1.0, specifically on v2.1.3, and issue 10868 reports frequent garbage collection with a very large number of small files. If either workload resembles yours, test a representative directory before committing. For ordinary personal sync, the mature release process, signed binaries, clear documentation, and direct ownership model outweigh the extra operational work, provided a real backup remains beside it.

Alternatives

ProjectWhat it isPick it when
SeafileA self-hosted file platform built around a central server and synced libraries.pick this instead when you want one authoritative server, web access, and managed user accounts.
Nextcloud gh↗A self-hosted collaboration server with files, sharing, and a larger app ecosystem.pick this instead when browser access and collaboration matter more than direct device-to-device sync.
rclone gh↗A command-line file transfer and sync tool supporting many storage backends.pick this instead when scheduled one-way jobs or cloud-object-storage copies fit better than continuous peer sync.

What people are saying

  1. [github-trending] syncthing/syncthing

Sources

  1. Syncthing repository
  2. Syncthing v2.1.3 release
  3. Syncthing getting started guide
  4. Syncthing security principles
  5. Syncthing FAQ
  6. Slow identical-file scanning issue

More self-hosted reviews

newsnow · forem · octo-server · runtime · openfang · SparkyFitness · the whole board →