CopySync

Copy on this computer.
Paste on that one.

Mac, Windows and Linux. Text, images, files, whole folders. No shared account required. On the same network it works with no server at all, and it works across networks too. Data moves directly between your devices, end-to-end encrypted.

Version 1.6.4, free and open source. macOS 13 or later; Windows 10 and 11; Linux (x64 and ARM64).

New here? Set it up in three steps →

Everything you copied, on every computer

History keeps the last 3 days, ready to go back on the clipboard; click an image to preview it. Files under 50 MB have already arrived by the time you switch computers, and larger ones are a click away.

CopySync history: files, images and text from a MacBook Air and a Mac mini; a large file shows a button to pull it to this device

What happens when you copy

Text, images, files and whole folders all take the same path.

  1. Notice

    On Mac, the background service checks the clipboard's change count at short intervals; reading the count and types needs no permission and never shows a prompt. On Windows, the system tells it the moment you copy.

  2. Send

    Text travels inside the message. Images and files under 50 MB are streamed right away. Larger files are announced as a record and sent when you ask for them.

  3. Paste

    The other computer stores the content locally, then puts it on the clipboard. What you paste with ⌘V or Ctrl+V is a real local file.

Why not what's already there

Universal Clipboard needs the same Apple ID and both Macs close together. AirDrop asks you to accept every time. Messaging yourself means manual downloads and files left on someone else's server. With one Mac and one Windows PC, none of the built-in options work at all.

CopySync compared with other options
CopySyncUniversal ClipboardAirDropChat apps
Different Apple IDsYesNoNeeds acceptingYes
Between Mac and WindowsYesNoNoYes
Different networks (home and office)YesNoNoYes
Paste right away, nothing to acceptYesYesNoNo
Files and whole foldersYesUnreliableYesZip first
Find something you copied earlierYesNoNoScroll back
Content stays off third-party serversYesYesYesNo

How it works

Your two computers open an encrypted connection to each other. On the same network they find each other on their own; across networks your server introduces them, and relays traffic when a direct path can't be made. The diagram shows the cross-network case.

How CopySync connects Computer A and computer B (Mac or Windows) connect directly over WebRTC. Both connect to your server for signaling. If the direct connection fails, data is relayed through the server's TURN service. Your server Signaling, STUN, TURN relay Signaling: connection details Relay: only if direct fails Mac You copy here Mac or Windows You paste here Direct WebRTC, DTLS encrypted Data moves only between your computers Data (direct) Data (relay, fallback) Signaling
  • Direct WebRTC, DTLS encrypted Data moves only between your computers
  • Your server Signaling, STUN, TURN relay
  • Relay: only if direct fails

Your server can't see what you copy

  • No accounts, no stored content. A device's identity is an Ed25519 key, and its ID is derived from the public key, so the server verifies identity without a user table.
  • You compare fingerprints when pairing. Both screens show the same two lines: the fingerprint of each device's key. The server could swap keys in transit, but then the two screens would no longer match. That check is what stops a man in the middle.
  • Every message after that is signed, so the server can't impersonate your device. The direct channel's certificate is checked again after the handshake; a mismatch drops the connection.
  • The relay only forwards ciphertext. TURN carries encrypted packets, and relay credentials are issued per device and expire after 12 hours.
  • Same on the local network. What a device broadcasts on the LAN is an anonymous token that changes daily, not its name; the name is added only while Search nearby is open. Pairing still means comparing fingerprints, and every message is still signed.
The fingerprint check during pairing shows R8NF-2WTC-QL5J and asks you to confirm it matches the other computer exactly

When things go wrong

Every network is different. Each of these cases was considered, and each has a test.

Can't find the other computer on the network
Different subnets, guest networks and Wi‑Fi with client isolation block local discovery. Enter the address shown under the other computer's code when pairing; it's remembered afterwards, and if both computers change addresses you enter it once more in the device list.
The system blocks the local network
From macOS 15, the background service needs your permission to reach devices on the local network; Windows asks about the firewall on first run. If either isn't allowed, the app says so and links straight to the fix.
No direct path between the computers
Common behind symmetric NAT and corporate firewalls. Traffic switches to the TURN relay on your server, still encrypted, and the device list shows "Relay".
Public STUN servers unreachable
Public STUN is unreliable in some regions, including mainland China. Your server runs its own STUN, and clients prefer it.
Connected through the relay first
The relay handshake is fast and sometimes beats the direct path. Once connected, the side that started the connection punches again while idle and switches to direct when that works, never in the middle of a transfer.
The other computer sleeps, drops off or restarts
A connection that dies silently is noticed, closed and reconnected. Anything you copy meanwhile is kept and added to the other computer's history once it's back, without overwriting what's on its clipboard now.
Server connection drops
Reconnects automatically: the delay starts at 1 second and doubles up to 30, with jitter so devices don't all reconnect at once. Devices on the same network keep syncing.
File too large
Above the limit only a record is synced, pulled when you need it. If the source file is gone by then, you get a clear message instead of a vague failure.
Pasting into plain-text fields
Rich text copied from the web is written as both HTML and plain text, so no markup leaks into what you paste.
A file name Windows doesn't allow
Colons, question marks and a few other characters that are fine on a Mac arrive as the matching full-width characters, so the name still reads the same. Two names that differ only in case never overwrite each other.
Copying a password
On Windows, password managers mark what they copy as "don't record". CopySync skips it: not synced, not kept in the history.
Clipboard access not granted yet
Content isn't read, which would block on a prompt a background process can't show. The app asks you to grant access and links straight to the setting.
Background service crashes
launchd on Mac, and CopySync's own supervisor on Windows, restart it, throttled to once every 10 seconds.
App updated or moved
On launch the app re-points its login item and restarts the service on the new version.

Install

Install the app on each computer. On the same network you can pair right away; across networks, pick a way for them to find each other. First time? Follow the quick start.

Mac

  1. Download the DMG, open it and drag CopySync into Applications.There's one for Apple silicon and one for Intel; the download page shows how to tell which your Mac has.
  2. Open it from Applications.The first time, macOS says it can't verify the developer: CopySync isn't notarized by Apple yet. Go to System Settings → Privacy & Security and click Open Anyway near the bottom. You only do this once.
  3. Click Turn on background sync. When macOS asks whether CopySync may read the clipboard or find devices on your local network, allow both.
  4. To sync across networks, enter your server in Settings as ws://server-address:8787/signal and press Return. On the same network, leave it empty.
Download for Mac

Windows

  1. Run CopySync-Setup.exe. It installs for the current user, no administrator rights needed.CopySync isn't code-signed yet, so Windows says "Windows protected your PC": click More info, then Run anyway. To skip the installer, get the portable zip.
  2. Open CopySync and click Turn on background sync. Allow it if Windows Firewall asks. After you close the window it keeps running in the notification area.
  3. To sync across networks, enter your server address in Settings and press Enter. On the same network, leave it empty.
Download for Windows

Linux

  1. On Ubuntu, Debian and similar, download the .deb and run sudo apt install ./CopySync-linux-amd64.deb; on other distributions, download the tar.gz, extract it and run ./CopySync/install.sh.
  2. Open CopySync from the app menu and click Turn on background sync. From then on it starts when you log in.
  3. To sync across networks, enter your server address in Settings and press Enter. On the same network, leave it empty.
Download for Linux

Ways to connect

No server on the same network. Pick the way that fits; each has a step-by-step guide:

Compare the three

Pairing: on one computer, choose Devices → Add device to show a 6-character code; enter it on the other, and confirm once both screens show the same two fingerprints. On a different subnet, also enter the address shown under the code. Any mix of Mac, Windows and Linux works the same way.

Specifications

Version1.6.4, released
Mac appmacOS 13 Ventura or later; separate downloads for Apple silicon and Intel, about 25 MB each, no Rosetta; a universal version for both is about 47 MB
Windows appWindows 10 and Windows 11, x64; installs per user, no administrator rights; about 23 MB download
Linux appx64 and ARM64; .deb (Debian, Ubuntu and similar) or tar.gz (other distributions), about 22 MB; needs an X11 desktop, or a Wayland desktop with XWayland (GNOME, KDE and others include it by default); GTK 3
ServerOptional, only for syncing across networks. Linux on x86_64 or ARM64 (systemd or Docker), macOS (Intel and Apple silicon), Windows 10 and 11 x64 (as a service); about 15 MB of RAM
LanguagesEnglish, Simplified Chinese and Japanese; follows the system by default, switchable in Settings
ContentPlain text, rich text, images and screenshots, files, folders; each type can be turned off
TransportWebRTC data channels, direct first with TURN relay fallback; on the same network, mDNS discovery and connection details over UDP 8788; every uplink probed on multi-uplink networks; files streamed as tar + zstd
Encryption and identityEnd-to-end DTLS; Ed25519 device keys; every signaling message signed
Pairing6-character code valid for 5 minutes, using an alphabet without look-alikes such as 0/O and 1/I; fingerprints compared by you
Auto-sync limit50 MB by default, adjustable from 1 MB to 1 GB
History3 days by default, adjustable from 1 hour to 30 days; expired items removed automatically
Measured speedA 20 MB file transfers in about 330 ms over a direct LAN connection, checksums matching
Built withGo for the background service and server (pure Go calling Win32 on Windows and speaking the X11 protocol on Linux), Flutter for the app (one codebase for all three systems), Protocol Buffers for messages
LicenseGNU AGPL-3.0

Questions

Why do .uuremote_ files keep appearing while UU Remote is running?

UU Remote writes temporary placeholder files to the system clipboard. Older CopySync clients recorded and forwarded them as ordinary files. Version 1.3.2 filters the confirmed placeholder naming pattern on send and receive, and removes placeholder-only history on startup. Ordinary empty, hidden and large files are unaffected. The 50 MB threshold only controls automatic transfer; UU’s UDP P2P setting is unrelated. Upgrade both clients. Other clipboard sync tools may still duplicate ordinary content.

How is this different from Universal Clipboard?

Universal Clipboard needs both devices on the same Apple ID, with Bluetooth and Wi‑Fi on, close to each other, and works only between Apple devices. CopySync works on the same network as soon as it's installed; across networks, both computers reach your server or run Tailscale. So different Apple IDs work, one Mac and one Windows PC work, and so does one at home and one at the office. It also keeps a history and lets you pull large files on demand.

If your Macs share an Apple ID, sit side by side, and you mostly copy text, the built-in feature is already enough.

Can the server see what I copy?

No. With a direct connection the data never touches the server. When it relays, it forwards DTLS-encrypted packets. It keeps no accounts and stores no clipboard content. The code is open, so you can check.

Does it connect directly on office networks with several uplinks?

Yes. These networks pick an uplink per destination. CopySync probes several servers from one port to learn its address on every uplink and sends them all to the peer, which tries each one. A Mac behind a 4-uplink office network connects directly to a home connection in our tests. Peers behind NATs that randomize ports still fall back to the relay.

Do I need my own server?

Not necessarily. When your computers are on the same network, install the app and pair; there's no server.

Across networks there are two ways: a public server, where the smallest VM is enough and sync works from anywhere; or Tailscale on each computer, entering the other computer's Tailscale address when pairing, with no server at all. There's no public CopySync server, so nobody's data passes through anyone else's machine.

No public IP at home. Can I sync between home and the office?

Yes, in two ways. With a public server, run CopySync's server there and connect both computers to it; see the public server guide. Without one, install Tailscale on every computer under the same account and enter the other computer's Tailscale address when pairing; see the Tailscale guide.

Both computers are on the same network. Why can't they find each other?

Check that they're really on the same subnet: wired and Wi‑Fi in many offices, guest networks, and Wi‑Fi with client isolation don't let devices see each other. In that case, on the computer entering the code, click On a different subnet? and enter the address shown under the other computer's code.

On Windows, allow CopySync when the firewall asks on first run; if you clicked Cancel, click Allow under Settings → Local network. On a Mac, turn on CopySync Daemon in System Settings → Privacy & Security → Local Network. More in the same network guide.

Windows? Linux? iPhone?

Windows 10 and 11 (x64) are supported and work together with Macs. Files you paste on Windows are real files you can drop into Explorer or Office.

Linux desktops on x64 and ARM64 are supported too: X11, or Wayland with XWayland (GNOME, KDE and others include it by default). Files you copy paste straight into the file manager.

iPhone and iPad aren't supported: iOS doesn't let apps watch the clipboard in the background, so copy-and-it's-there can't work.

Why does the system warn me the first time?

CopySync isn't notarized by Apple yet, and the Windows build isn't code-signed yet; both require paid certificates.

On Mac, open System Settings → Privacy & Security and click Open Anyway near the bottom. On Windows, click More info and then Run anyway in the "Windows protected your PC" prompt. You only do this once.

What about large files?

By default, anything under 50 MB is pushed to the other computer as you copy it, so you can paste right away. Larger files sync as a record; pull them from the history when you need them. The limit is adjustable in Settings.

Is it free? Can my company use it?

Yes. CopySync is open source under the GNU AGPL-3.0, so individuals and companies can use and modify it for free. If you distribute it, or offer a modified version over a network, you publish your source under the same license.

Two computers, one clipboard.

Version 1.6.4, free and open source. macOS 13 or later; Windows 10 and 11; Linux (x64 and ARM64).

New here? Set it up in three steps → View the source on GitHub