The open-source CleanShot X alternative for macOS.
Screenshots, screen recording, annotation, OCR, scrolling capture, GIF export & color picker — all free, all local.
No account. No subscription. No telemetry. Just screenshots.
| Paid Tools (CleanShot X, Snagit) | macOS Built-in | ScreenCap | |
|---|---|---|---|
| Price | $29–89/yr | Free | Free forever |
| Area capture with dimensions | Yes | No | Yes |
| Annotation editor | Yes | Markup only | Yes |
| Scrolling capture | Yes | No | Yes |
| Screen recording | Yes | Yes | Yes |
| OCR text extraction | Yes | No | Yes |
| Color picker | Yes | No | Yes |
| Pin to desktop | Yes | No | Yes |
| GIF export | Yes | No | Yes |
| Open source | No | No | Yes |
| Privacy (no network) | Varies | Yes | Yes |
- Fullscreen -- Instant full-screen capture with flash & sound
- Area Select -- Crosshair overlay with live pixel dimensions, shift-to-square
- Window -- Hover to highlight, click to capture (with optional shadow)
- Scrolling -- Auto-scroll and stitch into a single tall image
- Screen Recording -- Full screen or selected area to MP4 (H.264)
- GIF Export -- Convert any recording to GIF with configurable FPS and size
- Recording Toolbar -- Floating pause/stop/timer controls
- OCR -- Select a region, extract text to clipboard via Apple Vision
- Color Picker -- Magnifier loupe with hex/RGB, click to copy
- Annotation Editor -- Arrow, rectangle, ellipse, line, text, freehand, highlight, blur/pixelate, numbered steps, crop
- Undo/Redo -- Full undo stack for all annotation actions
- Export -- Save as PNG, JPEG, or TIFF
- Floating Thumbnail -- Post-capture preview with drag-and-drop to any app
- Pin to Desktop -- Always-on-top pinned screenshots with adjustable opacity
- Launch at Login -- Optional startup toggle from Preferences for installed app bundles
- Toast Notifications -- Non-intrusive confirmation messages
| Shortcut | Action |
|---|---|
Ctrl+Shift+1 |
Open the all-in-one capture toolbar |
Ctrl+Shift+3 |
Capture Fullscreen |
Ctrl+Shift+4 |
Capture Area |
Ctrl+Shift+5 |
Capture Window |
Ctrl+Shift+6 |
Capture Scrolling |
Ctrl+Shift+7 |
Record Screen |
Ctrl+Shift+8 |
Record Area |
Ctrl+Shift+9 |
OCR Screen Region |
Ctrl+Shift+0 |
Color Picker |
ScreenCap now defaults to a conflict-free shortcut profile on first launch so it does not fire alongside Apple's built-in screenshot shortcuts. You can switch to a Cmd+Shift compatibility profile in Preferences, but macOS screenshot shortcuts should be disabled first if you do.
git clone https://github.com/8tp/ScreenCap.git
cd screencap/ScreenCap
swift build -c releasecd screencap/ScreenCap
open Package.swift
# Set signing to "Sign to Run Locally"
# Build and run (Cmd+R)- macOS 14 (Sonoma) or later
- Xcode 15+ (for building)
- Screen Recording permission (prompted on first use)
ScreenCap/Sources/
App/ App lifecycle, menubar, permissions
Capture/ Screenshot engine, area/window/scroll capture, recording, GIF
Editor/ Annotation editor, canvas, 10 drawing tools, background presets
Tools/ OCR (Vision), color picker, magnifier
UI/ Floating thumbnail, pin window, preferences, onboarding, toasts
Utilities/ Global hotkeys, image I/O, user defaults
MenuBarControllerreceives menu and hotkey actions.- Capture actions route into
ScreenCaptureEngine,ScreenRecorder,ScrollCapture,OCRTool, orColorPickerTool. - Captures and recordings feed
FloatingThumbnailController. - Thumbnails can open
AnnotationEditorControlleror pin images to the desktop. PreferencesViewupdates shared defaults and shortcut configuration.
| Layer | Technology |
|---|---|
| UI Framework | SwiftUI + AppKit |
| Screen Capture | ScreenCaptureKit / CGWindowListCreateImage |
| Recording | AVFoundation + AVAssetWriter |
| OCR | Vision (VNRecognizeTextRequest) |
| Image Filters | CoreImage (CIPixellate, CIGaussianBlur) |
| Global Hotkeys | soffes/HotKey |
| Persistence | UserDefaults |
| Tab | Settings |
|---|---|
| General | Save location, launch at login, image format (PNG/JPEG/TIFF), JPEG quality, clipboard/thumbnail/sound toggles |
| Capture | Capture delay, hide desktop icons, window shadow |
| Shortcuts | Switch between conflict-free Ctrl+Shift and macOS-style Cmd+Shift shortcut profiles |
| Advanced | Thumbnail position & duration, reset all |
ScreenCap makes zero network calls. Everything runs locally on your Mac. No accounts, no analytics, no tracking. Your screenshots never leave your machine.
See CONTRIBUTING.md for guidelines.
MIT -- free for personal and commercial use.
ScreenCap — the free, open-source screenshot tool for macOS. Built with Swift, SwiftUI, and AppKit.