# SyncTrayzor: Windows tray host for Syncthing with embedded browser and auto-start

> SyncTrayzor wraps Syncthing in a Windows tray application, replacing the browser-launched web interface with an embedded one and adding login auto-start, conflict resolution and metered-network pausing. It overwrites two Syncthing configuration values on every launch.

**GermanCoding/SyncTrayzor** — Windows tray utility / launcher for Syncthing (v2 continued)

- Repository: https://github.com/GermanCoding/SyncTrayzor
- Stars: 2,091 · Forks: 62
- Language: C#
- License: MIT
- Published: 2026-10-11 · Updated: 2026-10-11 · Language: en
- Canonical page: https://hysenlabs.com/projects/germancoding-synctrayzor

## What SyncTrayzor adds beyond running Syncthing directly on Windows

Syncthing on Windows runs as a background process with a web interface reached through a browser. For a user who wants Syncthing to feel like a native application, that model creates friction: a browser tab for checking sync status, a separate step for configuring startup on login, and another browser session when a conflict alert needs attention.

SyncTrayzor wraps Syncthing in a Windows tray utility. It hosts Syncthing inside its own process and serves Syncthing's web interface through a built-in browser panel, removing the need to open a separate browser window. A tray icon reflects sync activity in real time, and five alert types can fire for file conflicts, out-of-sync folders, completed syncs, and devices connecting or disconnecting.

Two features address specific Windows integration gaps. Auto-start on login creates a registry key at `HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\SyncTrayzor` the first time SyncTrayzor runs, removing the need to configure Syncthing as a Windows service. Metered network pausing lets SyncTrayzor halt Syncthing transfers when the machine is on a mobile connection or a designated hotspot, which matters for laptops that move between Wi-Fi and cellular throughout the day.

A conflict resolution tool is also bundled. It is described in the documentation as built-in assistance for handling file conflicts without detailing the interface it provides. Syncthing creates conflict copies when two devices modify the same file, and the tool offers a path to those conflicts rather than requiring the user to locate them through Syncthing's folder listings.

## Five install paths: winget, chocolatey, scoop, installer and portable zip

SyncTrayzor requires Windows 10 or newer. Five install options are documented. Three use package managers:

```bash
winget install GermanCoding.SyncTrayzor
choco install synctrayzor
scoop install extras/synctrayzor
```

For a traditional installer, download `SyncTrayzorSetup-x64.exe` or `SyncTrayzorSetup-arm64.exe` from the project's GitHub page and run it. Running the installer over an existing installation replaces it in place, and the installer handles the app data locations without additional user steps.

For a portable install, download `SyncTrayzorPortable-x64.zip` or `SyncTrayzorPortable-arm64.zip`, extract the archive, and run `SyncTrayzor.exe` from the extracted folder. When switching to a newer portable build, one manual step is required: copy the `data` folder from the old installation directory into the new one before launching. Without that folder, the new build starts fresh with no record of previously synced folders or devices.

32-bit builds are no longer offered. An existing 32-bit installation must be uninstalled before a 64-bit build can run in its place. For users moving from a very old SyncTrayzor build, that uninstall step is necessary before running the new installer or extracting the portable zip.

## SyncTrayzor overwrites two Syncthing configuration values on every launch

Two Syncthing configuration values are not yours to set freely once SyncTrayzor is running: the GUI Listen Address and the API Key. Both are written by SyncTrayzor on startup rather than left to the user's existing Syncthing configuration, because a change to either one after the fact would break the connection between SyncTrayzor's embedded panel and the Syncthing process it hosts.

For a machine where Syncthing has been running independently, this is significant before first launch. Any custom GUI Listen Address or API Key set directly in Syncthing's configuration will be replaced. Customizing those values requires going through SyncTrayzor's own settings: the fields appear in File, then Settings, rather than in Syncthing's own interface.

For users who need two separate Syncthing processes on the same machine, the Syncthing Custom Home Path option under Settings, Syncthing, Advanced provides a way to keep them apart. A separate home path is the right setup when a machine already runs another Syncthing process with its own device identity: without it, both processes share the same database directory at `C:\Users\<You>\AppData\Local\Syncthing`.

## The auto-update check: what it sends and how to disable it

SyncTrayzor includes a periodic check that calls a developer-hosted PHP script to determine whether a newer build is available. Each call carries the current SyncTrayzor build identifier and the package format in use (installer or portable, x64 or x86). The machine's IP address is also part of each call: IP disclosure is inherent to any HTTP request and cannot be prevented.

The call carries nothing about the machine's hardware, operating system configuration, Syncthing setup or file contents. The scope is narrow: build identification and package format, with the IP as a side effect of the connection.

Auto-updates can be disabled in Settings. Once disabled, manual checking against the project's GitHub page is the only way to stay current. The security folder at the repository root documents a process for confirming that the account releasing builds has not been compromised, involving verification by Syncthing's developers. Users who need to control outbound connections at a network level can block the target script at a firewall while using the built-in setting as an additional control.

## Tray notifications and metered-network pausing in practice

The tray icon animates during active transfers and returns to a static state when everything is current. Five configurable alert types are documented: file conflict detected, folder out of sync, folder finished syncing, device connected, and device disconnected. No detail is given on which can be toggled individually or what the default state is for each one.

Metered network pausing targets a specific scenario for Windows laptops: the machine switches from a home or office connection to a mobile hotspot, and Syncthing would otherwise continue transferring data across that metered link. SyncTrayzor can pause all transfers automatically when it detects a metered connection. Windows exposes a metered connection flag that applications can query, and SyncTrayzor uses that as the trigger condition. Users who sync large sets of files get predictable data usage across connection changes throughout the day without having to manually pause Syncthing each time.

The pause detection runs in the background, responding to connection state changes without requiring the SyncTrayzor window to be open. Transfers resume when the machine returns to an unmetered network.

## Installed versus standalone: the Windows footprint and what each layout holds

The installed and portable builds land in different directories. The installed build goes into `C:\Program Files\SyncTrayzor` (all-users) or `%LocalAppData%\Programs\SyncTrayzor` (current-user). SyncTrayzor's own configuration ends up at `C:\Users\<You>\AppData\Roaming\SyncTrayzor`, while Syncthing's database defaults to `C:\Users\<You>\AppData\Local\Syncthing`.

The portable build keeps everything within its own directory. When moving to a newer portable build, one manual step is required: copy the `data` folder from the old directory into the newly extracted one before running the executable. The `data` folder holds the portable-mode configuration, and it is identified in the project documentation as the critical item for preserving device connections and folder pairs when switching portable builds.

Auto-start for the installed build creates a registry key at `HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\SyncTrayzor` on first run. Unchecking the auto-start setting in preferences deletes that registry key. The portable build's auto-start behavior is not documented, leaving that as an undocumented difference between the two install types.

## The GermanCoding continuation and what it inherits from the discontinued original

The original SyncTrayzor was written by Antony Male (@canton7) and is now discontinued. GermanCoding's project is presented in the README as a continuation of the original, not a rewrite. The repository description identifies it as a continuing fork carrying the same purpose and feature set forward.

For anyone switching from the discontinued project, the installer can run over an existing installation, which means the path and general workflow carry across. Whether configuration data from the original SyncTrayzor migrates cleanly into GermanCoding's build is not documented, so confirming that folder pairs and device connections survived the switch is worth doing after first launch. If anything is missing, the repository's issue tracker covers SyncTrayzor-specific problems.

Translation is handled through hosted.weblate.org, and the project is available in many languages. The most recent build is v2.2.0 (2026-07-18), followed by v2.1.0 (2025-12-17) and v2.0.4 (2025-10-15); the last push to the repository was on 2026-10-06. MIT license applies.

## Conclusion

SyncTrayzor is a practical choice for a Windows user who runs Syncthing and wants it to behave like a native application rather than a server reached through a browser tab. Install via winget for the simplest path: `winget install GermanCoding.SyncTrayzor`. Before running it on a machine where Syncthing is already configured, check the README section on what SyncTrayzor does to Syncthing: two configuration values are taken over on first launch, and any values previously set directly in Syncthing's configuration for those fields will be replaced. For a standalone install, keep a copy of the `data` folder before switching to a new build, since that folder is what the README identifies as the item to carry across.

## FAQ

### What is SyncTrayzor?

SyncTrayzor is a Windows tray utility that hosts Syncthing as a native application. It embeds Syncthing's web interface in a built-in browser panel, adds auto-start on login, tray notifications for sync events and file conflicts, and a metered-network pause feature for laptops on mobile connections.

### How do I install SyncTrayzor?

Install via winget with 'winget install GermanCoding.SyncTrayzor', via chocolatey with 'choco install synctrayzor', or via scoop with 'scoop install extras/synctrayzor'. An installer and a portable zip are also available on the project's GitHub page. Windows 10 or newer is required, and only x64 and arm64 builds are offered.

### Does SyncTrayzor send data to any external server?

Yes. The periodic check calls a developer-hosted script, sending the current build identifier, package format and IP address. The call carries nothing about your hardware, files or Syncthing setup. It can be disabled in Settings.

### Does SyncTrayzor change Syncthing's configuration?

Yes. SyncTrayzor overwrites the GUI Listen Address and API Key in Syncthing's configuration on every launch. To use custom values for those fields, set them through SyncTrayzor's own Settings dialog rather than editing Syncthing's configuration directly.

### How do I move to a newer portable SyncTrayzor build?

Extract the new portable zip, then copy the 'data' folder from your old installation directory into the new one before running SyncTrayzor.exe. Skipping that step starts the new build without your existing device connections and sync folder configuration.

## Sources

- [GermanCoding/SyncTrayzor on GitHub](https://github.com/GermanCoding/SyncTrayzor)
- [Issues](https://github.com/GermanCoding/SyncTrayzor/issues)
- [License: MIT](https://github.com/GermanCoding/SyncTrayzor/blob/main/LICENSE)
- [README](https://github.com/GermanCoding/SyncTrayzor/blob/main/README.md)
- [Releases](https://github.com/GermanCoding/SyncTrayzor/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/germancoding-synctrayzor
