Ctrl ,. Press Esc to go back.
Changes save as you make them.

Settings in the build from GitHub. The Microsoft Store build shows the same screen without the Windows section and the Check for updates switch.
Transfers
Save received files to
Where everything you receive is written. Leave it blank and Floe uses your Downloads folder. It never asks per transfer. An arriving file never replaces one you already have. See Nothing is ever overwritten.Privacy
Hide my IP address
Off by default. A normal Floe transfer connects the two devices directly, which is why it is fast and unmetered. Connecting directly means each side learns the other’s IP address, in the same way a video call does. Turn this on and Floe stops trying for a direct path. Everything goes through the TURN relay instead, so the other person only ever sees the relay’s address. Two consequences follow, and both are unavoidable rather than bugs:- Transfers are slower, because every byte takes a detour through the relay.
- Transfers are capped at 2 GB per session, because relay bandwidth costs real money. A larger transfer is refused before any data moves, not partway through. See The 2 GB Relay Limit.
This is not the web app’s Network relay fallback toggle, despite the similar subject.
That one lets you turn the relay off. This one makes the relay the only path. The
desktop app has no direct-only mode.
Contribute to global stats
On by default. Floe’s homepage shows a public, all-time total of bytes transferred by everyone. When a transfer finishes, the receiving side reports the byte count and nothing else. No file names, no contents, no record of who sent what, and no link to you. The sender never reports, so this setting only matters for transfers you receive. Turn it off and no request is made at all. The same opt-out exists on every surface: a checkbox on the receiver view in the browser, and--no-report or FLOE_NO_STATS=1 for the CLI. See
Security and Privacy.
The report follows whichever server the app is set to. Point Floe at your own server and your
byte counts go to your server’s counter, not to floe.one.
Check for updates
On by default, in the build from GitHub. Once a day, the app asks GitHub whether a newer desktop release exists, and shows a small dismissible notice when one does. The request carries nothing about you beyond what any web request reveals (your IP address and a user agent); nothing about your files or transfers is in it. Nothing downloads or installs by itself. See Update. Turn it off and no request is made at all. SettingFLOE_NO_UPDATE_CHECK=1 in your environment
does the same, matching the CLI’s update check.
The Microsoft Store build never checks and does not show this switch: the Store updates the app
itself. Builds you compile yourself never check either.
Windows
This section is only shown in the build from GitHub. The Microsoft Store build hides it, because a packaged app cannot register the entry in a way File Explorer would read. See Installation.Show in right-click menu
On by default. Floe registers the entry the first time it runs, and remembers if you switch it off, so it does not come back on its own. It adds Send with Floe to the File Explorer right-click menu. On Windows 11 it sits under Show more options. The entry is written to your own user’s part of the registry. It needs no administrator approval, changes nothing for anyone else using the machine, and turning it off (or uninstalling Floe) removes it again. Two details worth knowing:- The entry applies to files, not folders. To send a folder, use Folder in the app.
- It stores the path to the Floe that registered it. If you move the app, Floe repairs the entry the next time it starts. Uninstalling removes the entry outright, so after a reinstall check the switch is still on.
Advanced

Advanced, expanded
Server
Floe usesapi.floe.one unless you tell it otherwise. That server introduces the two devices
and hands out relay credentials. It never receives your files.
To use your own instance, put its address in Server address. Leave the field blank to go
back to Floe’s server, or use the Use default server button that appears once a custom
address is set.
Click Test to check an address before relying on it. The check runs three stages, because
each one catches a failure the others cannot:
The third stage matters more than it looks. A reverse proxy that forwards the first two but
drops
/api/ produces no visible error at all: relay credentials silently fall back to public
STUN, and the room code quietly fails to register, so you get a share link with no code and no
explanation.
What Test tells you:
See Run Floe Behind One Domain for a proxy configuration that
forwards all three.
Share link address
Leave this blank unless your web app is on a different address from your signaling server. The recommended way to self-host is one address serving both, in which case Floe works out the share link from the server address and this field stays empty. Only a split setup, where the API is onapi.example.com and the web app on app.example.com, needs it. Without it the
share link would point at the API, which serves no web app, and the link would be dead.
This mirrors the CLI’s --web flag. See
Use the Floe CLI with a Self-Hosted Server.
About
App version
The release you are running, for exampledesktop-v0.2.5. A build you compiled yourself reads
dev.
When the daily check has found a newer release, an Update row appears under it with a
Get update button that opens the download page. The row
stays as long as the app is behind, even after the notice popup is dismissed, and disappears
once you are up to date.
Transfer protocol
The version of the wire format the app speaks. You do not need to match versions with the person on the other end. Compatibility is a range check, not an exact match, so different releases transfer normally. If a future release ever does change the format in a way the two sides cannot bridge, they detect it before any file data moves and say which side should update, rather than failing halfway or writing a corrupt file.Server in use
Which signaling server the app is using, always visible even with Advanced collapsed, so a custom server can never be hiding behind a closed section. Share links appears too if you set a separate share link address. Copy puts the version, the protocol version, and the server on the clipboard. Those are the details to include in a bug report.Reset
Reset at the top of Settings restores the save folder, the privacy switches, and both server addresses to the way Floe shipped. It asks first, and tells you what it is about to forget. It deliberately leaves alone:- Your transfer history, and the files you have already received.
- The File Explorer right-click entry, because that lives in Windows rather than in Floe. Reset would have to either leave it dangling or silently rewrite the registry, and neither is something a Reset button should do. Turn it off in Windows instead.
Where settings are stored
Settings live in a plain JSON file at%APPDATA%\floe\desktop.json:
desktop.json
floe CLI keeps
its own files in that same floe folder, so the two coexist. The file survives an uninstall on
purpose, so reinstalling picks up where you left off.
Your save folder and transfer history are not in this file. They live in the app’s local data,
which is also kept across an uninstall.