Policy

Privacy Policy

The short version: we collect nothing. Your files never touch our servers. Here's the full picture.

At a Glance

What Collected? Notes
File contents ✗ Never Files travel peer-to-peer. Our servers never see file data.
File names / sizes ✗ Never Metadata stays in your browser. Not sent to our servers.
IP addresses ✗ Not logged The PeerJS signaling server processes connections but does not log IPs.
Peer IDs ✗ Ephemeral Random IDs generated per session. Discarded when you close the tab.
Cookies ✗ None No cookies are set — ever.
Analytics / tracking ✗ None Zero analytics scripts, pixels, or fingerprinting tools.
Account / personal data ✗ None No sign-up, no email, no name — nothing personal is collected.

How Your File Actually Travels

FileCourier is a browser-to-browser application built on WebRTC. When you send a file, here is the complete data path:

  1. Your browser generates a random peer ID and registers it with the PeerJS signaling server (0.peerjs.com). The server stores this ID in memory for the duration of your session only.
  2. The share link you copy contains that peer ID — no other personal data.
  3. When the receiver opens the link, their browser contacts the signaling server to locate your peer ID and exchange ICE candidates (network path metadata). The signaling server is used only for this handshake.
  4. Once the WebRTC DataChannel is established, your file streams directly from your browser to theirs. The signaling server is never contacted again.
  5. If a direct connection cannot be established, a TURN relay server is used. All data through the relay is DTLS-encrypted — the relay server relays encrypted bytes it cannot read.

Third-Party Services

FileCourier uses a small number of external services to function:

Service Purpose Data sent
PeerJS Cloud (0.peerjs.com) WebRTC signaling — peer discovery and ICE exchange Ephemeral peer IDs and ICE candidates only. No file data.
Google STUN (stun.l.google.com) Discover your public IP to establish direct connection Connection metadata only. No personal data, no file data.
freeturn.net TURN Relay fallback if direct P2P fails Encrypted file data (relay can't decrypt it). No metadata stored.
Google Fonts Load the Inter typeface for the UI Font request — standard browser request. Google's font CDN privacy policy applies.
unpkg.com / jsDelivr Serve PeerJS and StreamSaver.js libraries Standard CDN request. CDN provider logs may include your IP.

Encryption

WebRTC mandates DTLS-SRTP encryption on every DataChannel — there is no unencrypted mode. This means every byte of every file is encrypted in transit, whether it travels direct P2P or through a TURN relay. No one — including us — can read what is being transferred.

Open Source Verification

FileCourier is fully open source under the MIT license. Every claim on this page can be independently verified by reading the source code on GitHub. There are no server-side components beyond the signaling server and TURN relay described above.

Questions?

If you have questions about how FileCourier handles data, please open a GitHub issue. We will respond as quickly as possible.

Last updated: May 2025

Ready to transfer privately?

No account, no upload, no trace. Just a link and a transfer.

Start a Transfer →