Card Offloader

How it works

Verified card offload, in plain terms

Copying a card is easy. Knowing that the copy is complete, before you format the card, is the part software has to earn.

What goes wrong, and why you do not see it

A drag-and-drop copy in the Finder reports success when the write calls return. It does not read anything back. If a byte was mangled in the reader, in the cable, in the drive's cache or on the medium, nothing in that workflow will notice — and you will find out months later, in the edit, on the one shot you cannot get again.

Comparing file counts and folder sizes does not help either. A truncated file has a size. A corrupted file has exactly the right size.

What Card Offloader does instead

Read once, write to every destination, then read every file back The card is read a single time. The data is hashed as it streams and written to three destinations in parallel. Afterwards each destination is flushed and every file is read back from it and compared with the source hash. SD Memory card read exactly once 1 read Stream & hash xxHash64, in flight Local SSD destination 1 Backup drive destination 2 NAS over SFTP destination 3 flush, then read back
One read, many writes, then a read back from every destination. Solid arrows are the copy; dashed arrows are verification, which happens only after each device has been told to commit its write cache. Adding a third destination does not add a third read of the card.
  1. Detects the card and scans it Every file, including the ones people forget: sidecars, hidden files, the manufacturer's folders. You can filter what gets copied, and you can point it at an ordinary folder instead of a card if the material already came off a drive.
  2. Reads the card exactly once The bytes are hashed as they stream and written to every destination you selected, in parallel. Three destinations do not mean three reads of the card — the slow, wearing device is touched once.
  3. Flushes every destination device Each drive is asked to commit its write cache to the actual medium before anything is checked, so verification reads the disk rather than a cache that agrees with itself.
  4. Reads every file back and compares From each destination, with the operating system's cache bypassed. A mismatch is a hard, red, blocking failure — never a warning.
  5. Writes the reports CSV and PDF in every tier. On Pro, an ASC MHL manifest that any MHL-aware tool can validate without our involvement, plus the camera report.

The folder tells you the truth even if the Mac dies

The destination folder is created carrying the name !!! INCOMPLETE - DO NOT USE AS BACKUP !!!, and loses it only once every single file has been verified.

Backup SSD
!!! INCOMPLETE - DO NOT USE AS BACKUP !!! 2026-08-24 Shoot A
2026-08-23 Shoot B
The folder on top is still being written, or the job failed. The one below passed: every file was read back from the disk and matched. The state is in the folder name, not in an app that may no longer be running — so it survives a crash, a power cut, and coming back the next morning.

This is a small idea that does a lot of work. If the Mac crashes, if the power goes, if you close the lid and walk away, the state of the job is not held in an app that is no longer running — it is written on the folder, in words, where you will see it tomorrow morning or next month.

We tested the ugly version of this on purpose: card pulled physically out of the reader mid-copy, twice. 937 files across three destinations came out byte-identical to the source with zero partial files, checked with an outside tool. The test and its conditions.

What it will never do to your card

None of these exist in the application. Not disabled by default, not buried in preferences behind a warning — absent. The sandbox, the type system and an automated test all enforce it, because the one irreversible mistake is worth three layers of prevention.

Formatting a card is a job for the camera that will shoot it, and it should happen after you have looked at a report that says every file verified.

Where the copies can go

DestinationAvailability
Local drives, external SSDs, anything mounted in the FinderFree tier: one. Pro: as many as you like, simultaneously.
NAS over SFTPPro — see offloading to a NAS
S3 and Backblaze B2Roadmap, not in 1.0. We would rather ship SFTP properly than three transports badly.

Read-back verification applies to remote destinations too. If verifying over the network is impractically slow for your setup, that becomes an explicit choice you make and it is recorded in the report — never something the software quietly downgrades to look fast.

Where we are not the answer

If one verified local copy is all you need, several free tools do that well, including some on the Mac App Store, and our own free tier does it too. Paying for Card Offloader makes sense when you need several destinations at once, a NAS in the loop, or a report you can hand to a client.