CopsyGuidesVerify a file copy on Mac

How to verify a file copy on Mac

· Last verified June 2026
Short answer

To verify a file copy on Mac, compare a checksum of the original against a checksum of the copy. For one file, open Terminal and run shasum -a 256 on the source and again on the destination. If the two hashes match exactly, the copy is bit-for-bit correct. If they differ at all, the copy is corrupt.

For a whole camera card (hundreds of clips), checksumming files by hand doesn't scale. Copsy — a free Mac camera-offload app — hashes every file during the copy, writes an ASC-MHL manifest (the film-set / Netflix-delivery standard), then re-reads the destination and confirms each one automatically.

Download Copsy for Mac → · macOS 13+ · no account needed · free

Why verify a copy at all?

Copying a file is not guaranteed to be perfect. A flaky USB cable, a failing card reader, a card that's near end-of-life, a kernel hiccup, an interrupted write — any of these can produce a destination file that looks the right size in Finder but is silently corrupt inside. With a Word document you'd notice. With a 4-minute take that won't play until you're back in the edit suite three days later, you won't, and by then the card may be wiped.

Verification closes that gap. Instead of trusting that the bytes arrived, you prove it: you read the copy back and confirm it's identical to the source. On a film set this is non-negotiable; for anyone moving irreplaceable footage off a card, it should be too.

What a checksum proves (and what it doesn't)

A checksum (or hash) is a short fingerprint — a string like 3a7bd3e2… — computed from every byte of a file. Change a single bit anywhere in the file and the checksum changes completely. That's the whole trick:

What a checksum does not prove: that the original was good. If the camera wrote a bad clip to the card, a verified copy of a bad clip is still bad. Verification proves fidelity of the copy, not the quality of what you shot. That's exactly what you want when offloading: your job is to get the card to a drive without losing or altering anything.

MD5 vs SHA-256 vs xxHash — which one?

For copy verification you only need to detect accidental corruption, so any of them work. xxHash is the fastest and is common in media/offload tools. SHA-256 is slower but cryptographically strong. MD5 is dated but perfectly fine for catching copy errors. The ASC-MHL standard supports MD5, SHA-1, SHA-256 and xxHash, so professional tools let you choose. The golden rule: hash the source and the destination with the same algorithm and compare.

The manual way: checksum a file in Terminal (shasum)

macOS ships with shasum and md5 built in, so there's nothing to install. This is the right approach for a single file or a quick spot-check.

  1. Open Terminal (Applications → Utilities → Terminal).
  2. Hash the source file. Type shasum -a 256 (with a trailing space), then drag the original file from Finder into the Terminal window to paste its path, and press Return. You'll get a long hash followed by the filename.
  3. Hash the copy. Do the same for the copied file at the destination: shasum -a 256 then drag in the copied file, press Return.
  4. Compare the two hashes. If the hash strings are character-for-character identical, the copy is verified. If they differ anywhere, the copy is corrupt — re-copy it.

Prefer MD5? Swap in md5 yourfile. Want SHA-1 instead of SHA-256? Use shasum -a 1. To check a folder of files against a saved list, you can write hashes to a file with shasum -a 256 * > hashes.txt and later confirm them with shasum -c hashes.txt.

This is genuinely useful and completely free. Its limit is scale: a single camera card can hold hundreds or thousands of files, and eyeballing hashes two at a time across that many clips, every shoot, is slow and error-prone. That's where a whole-card, automatic workflow is worth it.

The automatic way: verify a whole card with ASC-MHL

A purpose-built offload tool does the same checksum logic, but for every file at once and without you typing anything. The professional pattern:

  1. Hash on the way in. As each file copies from the card, its checksum is computed.
  2. Write a manifest. Every checksum is recorded in an ASC-MHL file — an open, auditable list of what was copied and its hashes, the same standard used on film sets and for Netflix-style deliveries.
  3. Read the destination back. The tool re-reads each copied file and recomputes its checksum.
  4. Confirm. Each destination hash is compared to the manifest. A green pass means the whole card is verified; any mismatch is flagged so you know before you format the card.

Several tools do this. DaVinci Resolve's Clone Tool is free and uses xxHash. MhlFileVerify is a free, verify-only utility. Paid DIT tools like OffShoot (the current name of Hedge, around $169, last verified June 2026) and Silverstack are excellent and well-proven. Copsy is the free option that also handles the copy, the cloud and the notification in one pass.

How Copsy verifies a card automatically

Copsy — a free Mac camera-offload app (macOS 13+) — runs the verify-everything workflow above end to end, free, with no signup and no card limit:

  1. Plug in the card. Copsy auto-detects it by content: Sony, ARRI, Blackmagic/BMD, RED, Canon, Nikon, Panasonic, Fujifilm, GoPro, drones, audio recorders, or any card it can read.
  2. Pick destinations. Copy to an external drive, and optionally to Google Drive or Dropbox in parallel in the same pass.
  3. Copy + hash + organize. Files copy while their checksums are computed, organized by date and source, with an ASC-MHL manifest written alongside.
  4. Verify automatically. Copsy re-reads the destination and confirms every file's ASC-MHL checksum, with no Terminal and no hand-comparing hashes.
  5. Get pinged. A Telegram message tells you it finished and verified, so you can walk away and only format the card once the copy is proven good.

Verification methods on Mac compared

Method Copsy Terminal shasum Finder drag
Checksum-verifies the copy✓ ASC-MHL, every file✓ if you run it✗ no verification
Scales to a whole card automaticallymanual, file by file
Writes an auditable manifest✓ ASC-MHLonly if you save a list
Copies the card for youverify only✓ (unverified)
Drive + cloud (Drive/Dropbox) in parallel
Notifies you when done✓ Telegram
PriceFREEFREEFREE

Competitor pricing referenced in this guide was last verified June 2026 — check each vendor's site for current figures.

The bottom line

If you only need to spot-check one file, shasum -a 256 in Terminal is free and exact. If you're offloading a card every shoot, automate it: a tool that hashes during the copy and confirms against an ASC-MHL manifest gives you the same proof for hundreds of files without typing a single command. Whatever you do, don't trust a plain Finder drag for irreplaceable footage — it copies but never checks.

Frequently asked questions

How do I verify a file copied correctly on a Mac?
Generate a checksum of the original and a checksum of the copy, then compare them. In Terminal, run shasum -a 256 on the source file and again on the copied file; if the two hashes match exactly, the copy is bit-for-bit identical. For a whole card of footage, use a tool like Copsy that checksums every file with ASC-MHL during the copy and confirms each one automatically.
What does a checksum actually prove?
A checksum is a short fingerprint computed from every byte of a file. If even one bit changes, the checksum changes. So when the source and destination checksums match, it proves the copy is identical to the original — nothing dropped, truncated or corrupted in transit. It does not prove the original itself was good, only that the copy faithfully matches it.
Does dragging files in Finder verify the copy?
No. Finder copies the bytes but does not read the destination back and compare checksums, so a silent error, a flaky cable or a failing card can leave you with a file that looks fine but is corrupt. To know a copy is good you need checksum verification — either manually with shasum or automatically with a verifying offload tool.
Which checksum should I use — MD5, SHA-256 or xxHash?
For verifying that a copy matches its source, any of them work because you only need to detect accidental corruption. xxHash is the fastest and is common in media tools; SHA-256 is slower but cryptographically strong; MD5 is dated but fine for copy verification. ASC-MHL supports MD5, SHA-1, SHA-256 and xxHash, so professional offload tools let you pick — just hash both sides with the same algorithm.
How do I verify hundreds of files from a camera card at once?
Checksumming files one by one in Terminal doesn't scale. Use an offload app that hashes every file during the copy and writes an ASC-MHL manifest, then re-reads the destination and confirms each checksum. Copsy does this automatically and for free, copying a card to a drive and optionally Google Drive or Dropbox in parallel while verifying every file.
What is ASC-MHL?
ASC-MHL (Media Hash List) is an open standard from the American Society of Cinematographers for recording a checksum of every file in a copy, plus the history of where the media has traveled. It's the verification format used on film sets and for Netflix-style deliveries, and tools that write an ASC-MHL manifest give you a portable, auditable proof that each file copied correctly.

Verify every file without touching Terminal

Copsy — a free Mac camera-offload app. It copies your card to a drive and the cloud and ASC-MHL-verifies every file, so nothing is lost.

⬇ Download Copsy for Mac
macOS 13+ · No card limit, no signup, free