Back to Home

How Floe Works

A plain-language guide to what happens behind the scenes when you share a file.

The Short Version

Floe uses a technology called WebRTC to send your files directly from one browser to another. Think of it like handing a USB drive to someone. It happens over the internet, in real time. In most cases, no one else is in the middle.

In some network situations, a secure relay server acts as a bridge. Either way, your files are end-to-end encrypted and never stored on any server.

Signaling

When you drop files into Floe, a unique one-time link is created. Our signaling server (api.floe.one) plays the role of a matchmaker. When the recipient opens your link, both browsers introduce themselves to each other through this server.

Once both sides have said hello, the signaling server steps completely out of the picture. It does not handle any file data, does not store anything, and does not participate in the transfer.

Direct ConnectionFastest

A direct connection means your files travel straight from your device to the recipient's device, like a private tunnel between two computers with no stops in between.

To find this direct path, WebRTC uses a STUN server. Think of a STUN server like asking a friend outside your house "what does my address look like from out there?" It helps each browser discover its public internet address so they can reach each other.

Direct Connection: what it means for you

  • Maximum speed, limited only by your internet connection
  • No file size limits
  • Zero bandwidth cost to Floe
  • Your files never touch a server

Most home and mobile networks support direct connections. You are most likely to see this on standard home Wi-Fi or a personal mobile hotspot.

Relay ConnectionVia TURN Server

Some networks make it impossible to connect two browsers directly. This happens on strict corporate firewalls, university networks, or when your mobile carrier places many users behind a single shared IP address (called Carrier-Grade NAT). In these cases, a direct path simply cannot be found.

Floe automatically falls back to a TURN server(turn.floe.one). A TURN server acts as a secure bridge. Your data passes through it on its way to the recipient. Think of it like a trusted courier who picks up a sealed, locked box from you and delivers it to the recipient without being able to open it.

Even through a relay, your files are protected by DTLS encryption. This is the same standard used by HTTPS. The relay server sees encrypted data packets, not your actual files.

Relay Connection: what it means for you

  • Transfer still works even on strict networks
  • Your files remain encrypted in transit
  • Speeds may be slower depending on server load
  • Limited to 2 GB per transfer (see below)

Why the 2 GB Limit on Relay?

When your files go through our TURN relay server, every byte of data passes through our infrastructure. That costs real money in server bandwidth. Direct connections cost us nothing.

To keep Floe free and running for everyone, relay transfers are capped at 2 GB per session. This limit only applies to relay connections. Direct connections have no limit whatsoever.

How to get a Direct Connection

  • Use a standard home or personal Wi-Fi network
  • Disconnect from any VPN
  • Avoid transferring from strict corporate or university networks
  • Try using a personal mobile hotspot

End-to-End Encryption

Every WebRTC connection, whether direct or relayed, is encrypted using DTLS-SRTP. This is the same encryption standard used by your bank's website. It means even Floe's own relay server cannot read your files. The encryption keys are generated uniquely for each transfer and exist only in the two browsers involved.

Floe has no database, stores no files, and retains no logs of what you transfer. Once the transfer is complete and both tabs are closed, the data is gone.