HotShot documentation
Capture the screen, a window, a region, a live web page, or a recording — then mark it up, compose it, and export it, without leaving the app.
Installation
HotShot is a direct download from bendansby.com/apps/hotshot: a .dmg — open it and drag HotShot.app to your Applications folder. The build is signed with a Developer ID and notarized by Apple.
Requires macOS 15 Sequoia or later, on Apple Silicon or Intel.
Permissions
The first launch shows a permissions screen. Two are required, and HotShot genuinely cannot work without them; two more are optional and only matter if you want them.
| Permission | Why | Required? |
|---|---|---|
| Screen Recording | To read the pixels of your screen at all — every capture and every recording depends on it. | Yes |
| Accessibility | To resize the window you're about to capture to an exact size before shooting it. | Yes |
| Camera | Only for the optional webcam bubble in a recording. | No |
| Microphone | Only for optional narration in a recording. | No |
Grant them in System Settings → Privacy & Security. The screen re-checks continuously, so it lets you through the moment both required permissions are on — no relaunch needed.
Quick start
- Launch HotShot. It lives in the menu bar — look for the flame icon at the top right.
- Click the icon (or press your global shortcut) to open the capture panel.
- Pick a capture — Screen, Window, Selection, or Web Page. Or press
⌘1through⌘4. - The shot opens in a new untitled document, on the Markup tab.
- Annotate it. Then switch to Compose to put it on a backdrop with a title.
- Export a PNG, copy it to the clipboard, or copy a share link.
The panel
Everything starts from one panel. It opens two ways, and they show exactly the same thing: click the menu-bar icon, or press the global keyboard shortcut you set in Settings, which floats the panel over whatever you're doing.
Six actions, each with its own shortcut while the panel is open:
| Shortcut | Action | What it does |
|---|---|---|
⌘1 | Capture Screen | Everything on the display. |
⌘2 | Capture Window | Pick a window, optionally resized first. |
⌘3 | Capture Selection | Drag out a region. |
⌘4 | Capture Web Page | Browse, then shoot at chosen viewports. |
⌘5 | Record Screen | Record the whole display. |
⌘6 | Record Window | Record one window. |
Below the actions are the staging toggles and, when a recording is in prospect, the camera and microphone switches. Two buttons sit at the bottom left: one opens an empty canvas you can paste into, the other opens a saved HotShot document.
Screen
Captures the whole main display. If either staging toggle is on, HotShot cleans up first, takes the shot, and puts everything back — you never see the intermediate state in the finished image, and neither does your desktop for more than a moment.
Window
Opens a floating picker showing every capturable window as a live thumbnail. Click the one you want.
The picker also has a size dropdown. Choose a size and HotShot resizes that window before shooting it, so you get an exact pixel dimension rather than whatever the window happened to be. This is what the Accessibility permission is for.
Selection
Dims the screen and gives you a crosshair. Drag out the region you want; release to capture it. Esc cancels.
Staging applies here too, but it's applied after you've drawn the region — you need to see the real screen to know what you're selecting.
Web page
Opens a browser window inside HotShot. Type an address, browse to what you want, and capture it as a full-length page shot.
- The address bar remembers where you've been. Start typing and it autocompletes from your HotShot browsing history. Reopening the window lands you back on the last page you loaded.
- Pick as many viewports as you like. Choose the widths you care about — phone, tablet, laptop, desktop — and HotShot shoots them all in one run, laying them out side by side, top-aligned, in a single document.
- Your viewport selection persists between sessions, so a routine set of widths is picked once.
To capture a page in your real browser — logged in, scrolled where you left it, cookie banner already dismissed — use the browser extensions instead.
Staging & delay
Two toggles on the panel clean the shot up before it's taken:
- Hide desktop icons — every file, folder, and stray download on the desktop disappears for the duration of the capture. Nothing is moved or deleted.
- Hide menu bar — the menu bar collapses away, so the top edge of the shot is clean.
Both are reversed automatically the moment the capture or recording finishes.
The Delay setting (None, 3, 5, or 10 seconds) applies to all six actions. It runs before staging and before the shot, giving you time to open a menu, hover something, or get a dialog on screen. For Capture Selection the delay runs after you draw the region, for the same reason staging does.
Documents
Every capture opens an untitled document — nothing is written to disk unless you save it, and nothing lands in a temp folder you have to clean up later. A document has two tabs:
- Markup — annotate the capture itself.
- Compose — put the flattened result on a backdrop, with a title and caption.
Settings → General → Open captures on chooses which tab a new capture lands on. If you mostly want a quick arrow and out, leave it on Markup; if you mostly want a presentable image, set it to Compose.
Markup
The Markup tab is a full annotation canvas over your capture. Pick a tool from the toolbar, or press its key:
| Key | Tool | Notes |
|---|---|---|
V | Select | Move, resize, and multi-select. Drag a marquee to select several at once. |
R | Rectangle | Filled or outlined. |
O | Ellipse | |
A | Arrow | Choose the head style at either end from the toolbar. |
L | Line | Same arrowhead options as the arrow tool. |
C | Callout | A labeled bubble with a leader you can drag anywhere. |
X | Cross | X, circled X, or a prohibition sign. |
H | Crosshair | Point at something precisely — and see the pixel loupe. The guide lines run the width and height of the image they're over, so they mark the shot rather than crossing the whole canvas. |
T | Text | Plain text on the canvas. |
N | Note | A sticky note with a leader arrow. Styles: plain, critical, warning, success. |
Working with what you've drawn:
- Snap to edges — the toolbar toggle turns on alignment guides that snap items to each other and to the image edges. Hold
⌘while dragging to override the snap for one move. - Duplicate — hold
⌥and drag an item to leave a copy behind. - Zoom —
⌘+and⌘−, or⌘0to fit the whole capture in the window. Scroll or two-finger swipe to pan; holdSpaceand drag to pan with the mouse. - Stacking order —
⌘]brings the selection forward one step,⌘[sends it back one. Add⇧to go all the way:⌘⇧]to the front,⌘⇧[to the back. The capture itself is an ordinary object too, so you can push an annotation behind it or bring it out in front. - Undo —
⌘Z, all the way back.
A blank canvas — the left-hand button at the bottom of the capture panel — shows an empty document. Paste an image into it with ⌘V and mark that up instead.
Loupe & crop
Pixel loupe
Select the Crosshair tool and hover over the image: a magnifier follows the pointer, showing the pixels under it and the exact color value. Handy for checking a hairline, a gradient edge, or a color you need to match.
While the loupe is up (click the canvas once so it has keyboard focus):
| Key | What it does |
|---|---|
1 / 2 | Loupe size — smaller or larger. |
, / . | Zoom out / zoom in. |
P | Toggle the pixel grid (at 3× and above). |
Crop
The Crop button in the toolbar opens a crop editor over the whole canvas. Drag out the region to keep and confirm. Everything on the canvas shifts with it, so annotations stay where they belong relative to the image. Crop is undoable like anything else.
Compose
The Compose tab takes the flattened Markup result and makes it presentable. The sidebar has two sections.
Canvas
| Control | Options |
|---|---|
| Backdrop | None, a solid color, or your own image. |
| Ratio | Auto, or a fixed aspect the shot is letterboxed into. |
| Padding | None, Snug, Roomy, Spacious. |
| Corner | Sharp, Soft, Round, or Window (matching macOS window corners). |
| Effect | Off, Shadow, or Glow. |
Text content
A Title and a Caption, drawn with the composition. Autofill writes both for you from what HotShot knows about the capture — the app and window it came from, the page and viewports it shot, the date. Edit whatever it suggests.
Exporting
From Compose you can:
- Export a PNG to anywhere on disk.
- Copy the image to the clipboard and paste it straight into a message, a ticket, or a document.
- Copy a link, if you've set up a sharing destination — see Copy Link.
Exporting flattens the annotations into the image. To keep them editable instead, save the document — see Saving & reopening.
Saving & reopening
A capture is a live document: the arrows, notes and callouts are still separate objects you can move, restyle or delete. Exporting a PNG flattens them permanently. Saving keeps them.
Save and Open sit at the right-hand end of the Markup toolbar. They're buttons rather than menu items because HotShot lives in the menu bar and has no menu of its own — so there's no File menu and no ⌘S.
| Action | What it does |
|---|---|
| Save | Writes the document. The first time it asks where; after that it saves straight back to the same file. |
| Save As | Hold ⌥ — the button relabels itself — to write a copy. The document then follows the copy, so later saves go there. |
| Open | Opens a saved document in its own window. If it's already open, that window comes forward instead of opening a second copy. |
Save is only available when there's something to write; it goes quiet once the document matches what's on disk.
Autosave
Once a document has been saved once, HotShot keeps it up to date on its own — changes are written a couple of seconds after you stop making them, and again when you close the window. You don't have to remember to save.
The file
Documents are saved as .hotshot files. Each one holds the original capture at full resolution, every annotation, and your Compose styling — so reopening it puts you exactly where you left off, with everything still editable.
You can also start from the capture panel: the folder button at the bottom opens a saved document without needing one already on screen. Or double-click a .hotshot in the Finder — HotShot opens it whether or not it's already running.
Recording
Record Screen and Record Window take the same staging and delay options as the still captures. The recording is written to ~/Movies/HotShot/ as it goes.
Turn the Camera and Microphone switches on in the panel before you start — neither can be added to footage afterwards. Turning either on asks for permission if HotShot doesn't have it yet, and switches itself back off if you decline, so a switch is never left on over a device that can't actually record.
Stopping a recording
There are three ways to stop, depending on how you've got HotShot set up:
- macOS's own recording indicator in the menu bar — click it and choose to stop. This is the usual one.
- HotShot's menu-bar icon turns red while recording. Click it to stop; right-click still opens the full menu.
- Press
Esc. When you record with the synthetic cursor and you've hidden HotShot's menu-bar icon, there's no icon to click and macOS's own indicator is suppressed — so HotShot floats a small “Recording — press Esc to stop” badge on screen for the duration. The badge never appears in the footage.
Review & trim
When a recording stops, a review window opens with the clip, a filmstrip, and a sidebar.
- Trim by dragging the handles at either end of the filmstrip. Hover-scrub the strip to find your in and out points.
- The Canvas sidebar is the same treatment Compose gives a still image — backdrop (color, image, or transparent), ratio, padding, corner radius, and shadow or glow — and it's applied to the real exported video, not just the preview.
- A transparent backdrop exports with a genuine alpha channel (HEVC in a
.mov) so the result drops onto a background in another app. - Copy Link renders the same clip and uploads it, putting a shareable URL on your clipboard instead of a file on your disk — see Copy Link.
Zoom & cursor
Zoom spans
Under the filmstrip is a thin zoom track. Drag on it to create a span; drag the span to move it, or its ends to resize it; select it and delete to remove it. During a span the export zooms in and follows the pointer, which is what makes a long recording of small UI readable.
There is deliberately nothing to configure per span — every span zooms the same amount and tracks the cursor. Drag, and it works.
Synthetic cursor
With Settings → Recording → Draw a synthetic cursor on (it's on by default), HotShot suppresses the real pointer in the recording and draws its own instead: a clean cursor that stretches along its travel, squashes across it, and trails a short comet of ghosts when it moves fast. It settles to neutral around clicks and through drags, so a click still reads as crisp and a drag follows its real path.
Turn it off and you get the ordinary macOS pointer, exactly as recorded.
Camera & microphone
Both are off by default and neither ever blocks anything — if you never want a webcam bubble, you never have to grant camera access.
- Microphone goes straight into the recording's audio track. Pick the device in Settings → Recording.
- Camera records alongside the screen, and is composited in as the bubble afterwards — which is what keeps its shape, size, and position adjustable long after the recording is over.
Both have quick switches in the capture panel as well as in Settings, because whether you're on camera is a decision you make when you hit record, not a preference you set once.
Browser extensions
HotShot's own web capture browses a page from scratch. The extensions exist for the one thing it can't reach: the page in your real browser — logged in, scrolled where you left it, forms filled, banner already dismissed. Click the extension and HotShot renders exactly that state.
Safari
The extension ships inside HotShot.app. Open Settings → Extensions → Safari → Open Safari Settings…, find HotShot in Safari's Extensions list, and tick it. Then click the HotShot button in Safari's toolbar on any page.
Chrome (and other Chromium browsers)
Install it from the Chrome Web Store — or open Settings → Extensions → Chrome → Get the Extension…, which opens the same listing. Works in Edge, Brave, Vivaldi and Arc too.
Chrome can't open a macOS URL directly, so HotShot installs a tiny helper alongside the app for the extension to talk to. That's automatic — nothing to configure.
Copy Link
Copy Link uploads the finished file and puts a public URL on your clipboard. It works on stills and on recordings, and appears in three places: the Markup toolbar (the annotated shot, unstyled), the Compose toolbar (the composed image), and the recording review window (the trimmed, styled clip).
Choose the destination in Settings → General → Copy links with:
| Destination | Setup |
|---|---|
| iCloud Drive | Nothing to do — it rides your Mac's iCloud account. |
| Dropbox | Click Connect… and sign in. HotShot gets its own app folder only, not the rest of your Dropbox. |
| Google Drive | Click Connect… and sign in. HotShot can see only the files it created, nothing else in your Drive. |
| OneDrive | Click Connect… and sign in. HotShot gets its own app folder only, not the rest of your OneDrive. |
The file lands in your storage in every case. HotShot doesn't host anything, so there's no service of ours to go down and nothing of yours sitting on our disk. Disconnect removes the stored sign-in from your Keychain.
Sharing a recording
In the recording review window, Copy Link sits next to Export. It renders the clip exactly as Export would — same trim, same backdrop, padding, corners and effect — then uploads that and copies the link. The button reads Rendering… while it works, because encoding the clip is the slow part; the upload follows on its own.
Nothing is left behind on your Mac: the rendered clip goes to a temporary file that's deleted as soon as the upload finishes. If you want to keep a copy, use Export instead — or as well.
Size limits
A screenshot is a couple of megabytes; a recording can be hundreds. Each destination has a ceiling:
| Destination | Largest file | Why |
|---|---|---|
| iCloud Drive | 500 MB | HotShot's own limit. The file counts against your iCloud storage. |
| Dropbox | 150 MB | Dropbox's own limit for a single upload. |
| Google Drive | 500 MB | HotShot's own limit. |
| OneDrive | 250 MB | Microsoft's limit for a single upload. |
Go over and HotShot tells you the size it came out at and the ceiling it hit, so you know how much to trim. Trimming the clip shorter is usually enough; if you want the whole thing, Export it and send the file.
One difference worth knowing: a Google Drive video link opens Drive's own player page rather than the file directly, so the recipient can stream it instead of downloading the whole thing first. A Dropbox link points straight at the file, so the recipient sees the image itself. A Google Drive link opens Drive's preview page, which shows the image with Drive's chrome around it. An iCloud Drive link opens iCloud's download page — Apple's own page, which HotShot can't change; it previews in chat as a generic iCloud card rather than as your screenshot. If you want the recipient to just see the image, use Dropbox. OneDrive links don't preview inline in Slack and similar apps — Microsoft resolves a share link through several redirects before reaching the image, and link previewers give up before the end. The link works fine when clicked; it just shows as a plain URL rather than a thumbnail. If inline previews matter to you, use one of the other three destinations.
Settings
⌘, or the menu opens Settings, in four tabs:
| Tab | What's in it |
|---|---|
| General | Show the menu-bar icon; whether clicking it opens the panel or a plain menu; which tab captures open on; the sharing destination and its connection. |
| Extensions | Jump to Safari's extension settings, and reveal the Chrome extension folder. |
| Recording | Synthetic cursor; camera on/off and device; microphone on/off and device. |
| Advanced | License, software updates, and how many recordings to keep on disk — with Reveal in Finder and Clear All. |
The global keyboard shortcut that summons the capture panel is set here too; the shortcut's keys are drawn in the panel's own header, so it's always visible.
Updates
HotShot checks for updates automatically using Sparkle, and you can check any time via Settings → Advanced → Check for Updates…. Updates install in place.
License
HotShot runs fully unlocked for a seven-day trial — every feature, no watermark on anything you export. After the trial, HotShot reminds you to buy a license every other capture or recording. It still doesn't watermark your work or block an export; the reminder is the nudge.
Buy from Settings → Advanced → Buy a License…, and activate with Enter License…. Activation needs the internet briefly, then works offline. A key covers the Macs you personally use. Refunded or revoked keys stop working at the next background revalidation.