Import an SD Card on a Mac Without Photos (Finder, Image Capture or One Script)
Photos wants to swallow every card into its library, which is the wrong home for drone, action camera and Sony video. Here is how to stop it opening, three ways to copy a card to ordinary folders, and a short script that copies the whole card, writes a checksum list and never overwrites.
To keep camera files as ordinary files on a Mac, copy the card in Finder or Image Capture into a new folder, and stop Photos from opening when a card goes in. For drones, action cameras, 360 cameras and Sony video, plain folders are the better home anyway: Photos does not keep sidecar files, and Sony video is not in the folder Photos looks at first. Below are three ways to do it, from simplest to safest.
Why not Photos for camera cards
- It imports media, not the card. DJI's
.SRTflight data, GoPro's.LRVproxies, Sony's.XMLclip metadata and Insta360's unstitched.insvare either skipped or useless inside a library. - Files end up inside a library package, not in folders an editor, a backup tool or another computer can read directly.
- It fills your system drive unless you have moved the library, and a day of 4K drone footage is large.
Photos is fine for phone pictures. For everything else, use folders, and add a catalogue on top later if you want one.
Step 1: stop Photos opening when you insert a card
Apple says a card formatted by a camera behaves like the camera itself when you insert it. Two places control what opens:
- In Photos, on the import screen for that card, untick Open Photos.
- In Image Capture, select the card in the sidebar, open the options in the toolbar and set what opens when this device connects to no application.
On recent macOS versions you may also be asked to allow a new card or accessory the first time it connects. Apple's SD card help notes that new SD cards have to be approved.
Option 1: Finder
- Create a new, empty folder for this card: date, trip and camera, for example
Footage/2026/2026-10-10_Lisbon/HERO13. - Open the card in Finder. Select everything at the top level (Command-A), including
PRIVATEif it is there, and drag it into the new folder. - Wait for the copy to finish. Then eject the card (File, then Eject) before you remove it.
Two traps:
- Do not copy only DCIM. Sony keeps video in
PRIVATE/M4ROOT/CLIP; see Sony XAVC files explained. - Never drop a card into a folder that already has files in it. GoPro, older DJI drones and Sony reuse names. Finder will offer Replace, and one click loses footage. See a folder structure for several cameras.
Option 2: Image Capture
Image Capture is in Applications on every Mac. Select the card under Devices, choose Other in the Import To menu and pick your new folder, then click Download All. Leave the delete-after-import option off.
Image Capture shows photos and videos, so it is handy for a quick photo grab. It is not a full card copy: it may leave out folders and sidecar files that a Finder copy or the script below would include.
Option 3: a script that copies everything and refuses to merge
If you offload cards often, this short script does the routine the same way every time. It builds the dated folder, stops if that folder already exists, records a SHA-256 checksum for every file on the card, then copies the whole card. Save it as offload.sh in your home folder:
#!/bin/zsh
# Usage: offload.sh /Volumes/CARD CAMERA TRIP
set -euo pipefail
CARD="$1"; CAM="$2"; TRIP="$3"
DEST="$HOME/Footage/$(date +%Y)/$(date +%Y-%m-%d)_${TRIP}/${CAM}"
if [ -e "$DEST" ]; then
echo "Stopping: $DEST already exists. Use a new name, never merge." >&2
exit 1
fi
mkdir -p "$DEST"
# 1. Fingerprint every file on the card (hidden system files skipped)
( cd "$CARD" && find . -path '*/.*' -prune -o -type f -print0 \
| xargs -0 shasum -a 256 ) > "$DEST.sha256"
# 2. Copy the whole card
rsync -a --exclude='.*' "$CARD/" "$DEST/"
echo "Copied $(wc -l < "$DEST.sha256" | tr -d ' ') files to $DEST"Make it runnable once, then use it for every card:
chmod +x ~/offload.sh
~/offload.sh /Volumes/Untitled HERO13 LisbonReplace Untitled with the card's name as it appears in Finder. If you offload a second card from the same camera on the same day, give it a new camera tag such as HERO13_card2; the script will not let you merge into the first.
Check the copy
Checking immediately can read from memory rather than the drive. If the destination is an external drive, eject it and plug it back in first. Then:
DEST="$HOME/Footage/2026/2026-10-10_Lisbon/HERO13"
cd "$DEST" && shasum -a 256 -c --quiet "$DEST.sha256" && echo "ALL VERIFIED"ALL VERIFIED means every file on the card arrived intact. Anything missing or different is listed by name. Why this matters, and the Windows version, are in verified copy vs drag and drop.
The .sha256 file stays next to the folder as a record: running the check again in a year tells you if anything on that drive has changed.
Hidden files on the card
macOS can add hidden items to a card when you browse it in Finder, such as folders starting with a dot. Cameras ignore them, and the script above skips them. The clean fix is to format the card in the camera once your copy is verified, which you should be doing anyway rather than deleting files from the computer. Sony explicitly warns against deleting or editing movie files on its cards from a computer.
Card readers and speed
The slowest link sets the pace: the card, the reader, or the port. A UHS-II card in a UHS-I reader runs at UHS-I speed. If your Mac has an SD slot, check Apple's specifications for your model before buying a reader. For CFexpress cards, you need a dedicated reader.
Do this every time, in this order
- Copy the whole card into a new, dated camera folder.
- Check it against the card.
- Copy it to a second drive and check that too.
- Format the card in the camera.
We are building a Mac app that runs this routine for you, sorts footage by camera and keeps the checksum records. Until then, the script above does the job with tools already on your Mac.