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 comes two ways. The direct download from bendansby.com/apps/hotshot is a .dmg — open it and drag HotShot.app to your Applications folder; the build is signed with a Developer ID and notarized by Apple. The Mac App Store version installs and updates the usual way.

Requires macOS 15 Sequoia or later, on Apple Silicon or Intel.

Direct download vs. Mac App Store. The same app either way, with four exceptions — every one of them something Apple's sandbox won't allow, and every one left out of the store build rather than shipped in place doing nothing. Everything else is identical: hiding the desktop icons, the delay, markup, Compose, recording and its whole editor, and Copy Link.
DirectMac App Store
Resize a window before shooting it — the size dropdown in the window picker Yes No. It needs the Accessibility permission, which the sandbox refuses — so the store build doesn't ask for it and doesn't offer the dropdown.
Hide the menu bar when staging a shot Yes No. It writes a system-wide setting the sandbox blocks, so the switch isn't there. Hiding the desktop icons still works.
Chrome extension Yes Safari only. Chrome needs a helper installed into Chrome's own folder, which a sandboxed app can't write to.
Esc to stop a recording Yes No — stop from the menu bar instead. See Stopping a recording.

Permissions

The first launch shows a permissions screen. Screen Recording is required and HotShot genuinely cannot work without it; the rest are optional and only matter if you want what they enable.

PermissionWhyRequired?
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. Direct build only
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 the required permissions are on — no relaunch needed.

The Mac App Store build asks for Screen Recording alone: it can't use Accessibility at all, so there's no Accessibility row on its permissions screen and nothing to grant.

Recording system audio isn't on the list because it needs no permission of its own — the Screen Recording access above covers the sound your Mac is playing as well as the picture.

Quick start

  1. Launch HotShot. It lives in the menu bar — look for the flame icon at the top right.
  2. Click the icon (or press your global shortcut) to open the capture panel.
  3. Pick a capture — Screen, Window, Selection, or Web Page. Or press ⌘1 through ⌘4.
  4. The shot opens in a new untitled document, on the Markup tab.
  5. Annotate it. Then switch to Compose to put it on a backdrop with a title.
  6. 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:

ShortcutActionWhat it does
⌘1Capture ScreenEverything on the display. Asks which, if you have more than one.
⌘2Capture WindowPick a window, optionally resized first.
⌘3Capture SelectionDrag out a region.
⌘4Capture Web PageBrowse, then shoot at chosen viewports.
⌘5Record ScreenRecord a whole display. Asks which, if you have more than one.
⌘6Record WindowRecord 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.

Prefer a plain menu? Settings → General → Clicking the icon opens switches the menu-bar icon between the rich panel and a classic macOS menu. The global shortcut always summons the panel.

Screen

Captures a whole display. With one screen connected it shoots it straight away; with more than one it asks which you meant — see Displays.

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.

Displays

Connect a second display and Capture Screen and Record Screen open a picker first. Every connected display is shown as a live thumbnail with its name and pixel size, and the one your menu bar is on is marked Main. Click the one you want; Esc cancels without capturing.

On a single screen there is nothing to choose, so no picker appears and nothing about the shortcuts changes — ⌘1 and ⌘5 stay one keystroke.

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, and it's the one capture option the Mac App Store build doesn't have — the dropdown isn't in its picker.

Window captures exclude the drop shadow. You get the window itself, edge to edge, with a transparent background around its rounded corners — ready to drop onto a Compose backdrop with a shadow of your own.

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.

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:

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, giving you time to open a menu, hover something, or get a dialog on screen.

For a still capture the delay runs before staging; for a recording it runs after, so the desktop is already clean while you count down and is clean from the first frame. For Capture Selection the delay runs after you draw the region — you need to see the real screen to know what you're selecting.

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:

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:

KeyToolNotes
VSelectMove, resize, and multi-select. Drag a marquee to select several at once.
RRectangleFilled or outlined.
OEllipse
AArrowChoose the head style at either end from the toolbar.
LLineSame arrowhead options as the arrow tool.
CCalloutA labeled bubble with a leader you can drag anywhere.
XCrossX, circled X, or a prohibition sign.
HCrosshairPoint 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.
TTextPlain text on the canvas.
NNoteA sticky note with a leader arrow. Styles: plain, critical, warning, success.

Working with what you've drawn:

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):

KeyWhat it does
1 / 2Loupe size — smaller or larger.
, / .Zoom out / zoom in.
PToggle 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.

A single picture on the canvas can be cropped on its own, too, from the toolbar that appears when it's selected. It opens the same crop window — same dimming, handles and buttons — and the crop holds everywhere the shot leaves HotShot: Copy, Copy Link, Export, and the version Compose starts from.

Compose

The Compose tab takes the flattened Markup result and makes it presentable. The sidebar has two sections.

Canvas

ControlOptions
BackdropNone, a solid color, or your own image.
RatioAuto, or a fixed aspect the shot is letterboxed into.
PaddingNone, Snug, Roomy, Spacious.
CornerSharp, Subtle, Soft, Round, or Pill. The same five presets style recordings.
EffectOff, 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:

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.

ActionWhat it does
SaveWrites the document. The first time it asks where; after that it saves straight back to the same file.
Save AsHold ⌥ — the button relabels itself — to write a copy. The document then follows the copy, so later saves go there.
OpenOpens 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.

A capture you've never saved has nowhere to autosave to. Until you save it the first time, it behaves like any untitled scratch document: closing the window discards it. If a capture matters, save it once and autosave takes over from there.

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. Record Screen asks which display to record when you have more than one — see Displays. The recording is written to ~/Movies/HotShot/ as it goes.

Turn the Camera, Microphone and System Audio switches on in the panel before you start — none of them can be added to footage afterwards. Camera and Microphone ask for permission if HotShot doesn't have it yet, and switch themselves back off if you decline, so a switch is never left on over a device that can't actually record. System Audio just goes on: there's no device to grant.

Stopping a recording

There are three ways to stop:

In the Mac App Store build, Esc isn't one of them. Watching for a keypress while another app is frontmost needs Input Monitoring, which the sandbox refuses — so that build's badge reads “Recording — stop from the menu bar” instead of naming a key that wouldn't work. To make sure a stop control always exists there, HotShot's menu-bar icon is forced visible for the length of a recording even if you've switched it off in Settings.

Review & trim

When a recording stops, a review window opens with the clip, a filmstrip, and a sidebar.

Stop cancels an export at once, whatever it's carrying — pointer, webcam, zooms — and leaves no half-written file behind.

Zoom & cursor

Zoom spans

Under the filmstrip is a thin zoom track. Drag on it to create a span — it fits the gap you draw it in rather than swallowing its neighbours — and drag the span to move it, or its ends to resize it. During a span the export zooms in and follows the pointer, which is what makes a long recording of small UI readable.

Click a span to set how far it zooms: a popover opens with a slider from 1.2× to 3×, snapping in steps of 0.2, and the span shows its level on the track. Delete lives in the same popover. New spans start at 1.8×, which is also what recordings saved before per-span levels existed keep. Clicking empty track just deselects.

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.

The pointer grows with the zoom — easing up as a span comes in and back down as it leaves, click ring and trail included — so it stays in proportion to whatever it's pointing at.

Turn it off and you get the ordinary macOS pointer, exactly as recorded.

Cutting

Trimming takes off the ends. Cutting takes a stretch out of the middle — the pause before you found the right window, the bit where you fumbled the click.

A cut removes the footage from playback and from the export, not just from view. Everything travels with it: the audio, the webcam bubble, the synthetic cursor and any zoom spans all follow the shortened clip.

Saved recordings

A recording is a document. Save in the review window writes a .hotshotclip holding the whole session — and opening it later puts you back exactly where you were.

Open also takes plain videos — .mp4 and .mov — and drops them straight into the same window, with trim, cutting, zooms, the canvas treatment and export. A video that HotShot didn't record has no pointer to restyle and no webcam track, so those controls simply aren't shown.

Camera, microphone & system audio

All three are off by default and none of them ever blocks anything — if you never want a webcam bubble, you never have to grant camera access.

The microphone and system audio can both be on. Narrate over the thing you're demonstrating and both land in the finished recording, and in the export — there's one Muted / Keep choice in the review window covering whatever the take captured, rather than a switch per source.

All three have quick switches in the capture panel as well as in Settings, because whether you're on camera — or taking the machine's own sound — 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.

The Chrome extension needs the direct download. That helper has to be registered inside Chrome's own application-support folder, which a sandboxed app can't write to — so the Mac App Store build ships the Safari extension only, and its Settings has no Chrome section. Safari, and HotShot's own web capture, work the same in both.
Both extensions act only on the tab you invoke them from, only when you click them. They make no network connections of their own: the page goes from your browser to HotShot on the same Mac and nowhere else.

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:

DestinationSetup
iCloud DriveNothing to do — it rides your Mac's iCloud account.
DropboxClick Connect… and sign in. HotShot gets its own app folder only, not the rest of your Dropbox.
Google DriveClick Connect… and sign in. HotShot can see only the files it created, nothing else in your Drive.
OneDriveClick 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.

A shared link is public. Anyone with the URL can open it — that's what makes it shareable. HotShot warns you once before your first share. To revoke a link, delete the file from your own storage.

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. Progress shows as two bars, rendering and then uploading, and Stop cancels at either stage.

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:

DestinationLargest fileWhy
iCloud Drive500 MBHotShot's own limit. The file counts against your iCloud storage.
Dropbox150 MBDropbox's own limit for a single upload.
Google Drive500 MBHotShot's own limit.
OneDrive250 MBMicrosoft'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.

The size is measured after rendering, because padding, a backdrop and an aspect ratio all change how big the clip ends up. That means an over-size clip is refused after the render rather than before it.

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:

TabWhat's in it
GeneralShow 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.
ExtensionsJump to Safari's extension settings, and reveal the Chrome extension folder. (Safari only in the Mac App Store build.)
RecordingSynthetic cursor; camera on/off and device; microphone on/off and device; system audio on/off.
AdvancedLicense, software updates, and how many recordings to keep on disk — with Reveal in Finder and Clear All. (In the Mac App Store build, the recordings section only: Apple handles the purchase and the updates.)

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.

Accessibility

HotShot works with the keyboard, VoiceOver and Voice Control:

Updates

The direct build checks for updates automatically using Sparkle, and you can check any time via Settings → Advanced → Check for Updates…. Updates install in place.

The Mac App Store build updates through the App Store along with your other apps, so it has no updater of its own.

License

The direct build 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.

The Mac App Store build has no license key and no trial — you buy it from Apple, and it's unlocked from the first launch. There's nothing to activate and no reminder to see.

Support

Questions or bug reports? Email ben.dansby@gmail.com and you'll get a reply, usually within a day or two. For privacy questions, see the privacy policy.