Snap to elements.
Annotate in place.
A Chrome extension that captures screenshots and auto-fits boxes, circles and arrows to the real page element you hover. No more hand-drawing misaligned shapes.

Built because I was tired of misaligned rectangles
I write a lot of bug reports and product feedback. Every time, the workflow was the same: take a screenshot, paste it into an editor, carefully draw a rectangle around the button I wanted to highlight, realize it’s a few pixels off, undo, redraw, redo. Repeat for every annotation on every screenshot.
The rectangles never quite lined up with the actual UI element. Edges were fuzzy. Circles looked hand-drawn — because they were.
So I built this. When you hover an element, the extension reads its getBoundingClientRect and generates a clean annotation fitted to those exact bounds. One click, pixel-perfect.
Everything you need to mark up a screenshot
Twelve annotation tools, text extraction, mosaic for sensitive info, multi-format export — all in one toolbar.
Snap to DOM elements
Hover any button, card, image or text block — get a perfectly fitted rectangle, circle or arrow in one click. Highlight a screenshot →
12 annotation tools
Rectangle, ellipse, line, arrow, highlight marker, text, numbered steps, stamps, mosaic and zoom-in-place. Markup a screenshot →
Zoom-in-place callouts
Select a region — the tool auto-trims margins and magnifies in place. Perfect for highlighting tiny UI details. How zoom works →
Mosaic & redaction
Pixelate, blur or black-bar any region to redact passwords, API keys, emails or faces. Blur a screenshot →
Text extraction
Pull readable text from any screenshot to your clipboard. Comes from the live DOM, not OCR — so it's exact.
PNG / JPG / PDF + auto-copy
Download in three formats. When you close the editor, the result is already on your clipboard.
Three steps. No context switch.
The editor opens in-place on the page — no new tab, no leaving your workflow.
Capture
Press Alt+A (Windows) or ⌘⇧S (Mac) to capture the visible area, Alt+C / ⌘⇧X to drag a region, or right-click the page.
Annotate
Hover an element to highlight it, click to snap a fitted shape. Or draw freely on empty space.
Export
Close the editor — the result is auto-copied to your clipboard. Or download as PNG / JPG / PDF.
How it compares
An honest side-by-side. Other tools are good — this one just does element-snapping, which they don’t.
| Feature | Screenshot Annotation | Lightshot | Awesome Screenshot | Snagit |
|---|---|---|---|---|
| Snap to real DOM elements | Yes — core | Hand-drawn | Hand-drawn | Hand-drawn |
| In-page editor | Yes | Desktop app | New tab | Desktop app |
| Text extraction | Yes (DOM) | — | — | Yes (OCR) |
| Zoom-in-place | Yes | — | — | Manual |
| Numbered auto-renumber | Yes | — | — | Manual |
| Free | Fully | Free | Freemium | $49.99+ |
| No tracking / analytics | Zero requests | Has analytics | Has analytics | Has analytics |
| Full-page capture | On roadmap | — | Yes | Yes |
| Video recording | Not planned | — | Yes | Yes |
Reflects features on each tool's site as of August 2026. Email me if anything's inaccurate.
Technical details
For power users, IT admins and reviewers.
Compatibility
- BrowserChrome MV3
- Also works inEdge, Brave, Arc
- OSWin / macOS / Linux
- LanguagesEN, ZH-TW, JA, ES, FR, DE
- Min Chrome88+
Package & permissions
- Package size316 KB
- Permissions5 (minimal)
- Network requests0
- Background scripts1 service worker
- Third-party libs0
Capture shortcuts
- Visible areaAlt + A
- Drag regionAlt + C
- Right-click → Free regionMouse
- Undo / Redo⌘Z / ⌘⇧Z
- Save / Close⌘S / Esc
Editor tool shortcuts
- SelectV
- Rectangle / EllipseR / O
- Line / ArrowL / A
- Highlight / TextH / T
- Number / Mosaic / ZoomN / M / Z
Frequently asked questions
Is it really free? What’s the catch?
Yes. No paid tiers, no premium version, no in-app purchases, no account. I built this for myself and pay $0/month to run it — there’s no backend.
Does it send my screenshots anywhere?
No. The extension makes zero network requests. Everything happens locally; screenshots never leave your device. You can verify this in the network tab during a capture.
Why those permissions?
Five permissions, all scoped to the screenshot flow: activeTab captures the tab, scripting reads element positions, storage remembers your preferences, unlimitedStorage handles high-DPI screenshots over Chrome’s 5 MB default, contextMenus adds the right-click item. No history, no cookies, no webRequest.
Does it work in Edge, Brave or Arc?
Yes — any Chromium browser that supports Chrome extensions. Install directly from the Chrome Web Store.
Mac and Windows?
Both. Shortcuts are Alt+A / Alt+C on Windows and Linux, and ⌘⇧S / ⌘⇧X on macOS — macOS has no Alt key, so it uses ⌘⇧ instead.
Why doesn’t it work on chrome:// pages?
Chrome blocks all extensions from its internal pages (chrome://, the Web Store, settings). This is a platform limit, not a bug.
Can it capture full pages or scroll?
Not yet. Currently it captures the visible viewport or a dragged region. Full-page capture is on the roadmap.
How do I report a bug?
Email virgil1126@gmail.com. I read everything and usually reply within 48 hours. See the changelog for what changed in each release.
Roadmap & known limits
What’s done, what’s next, and what this extension won’t do — even if you ask.
DoneRecently shipped
- Multi-format export (PNG / JPG / PDF)
- Text extraction from DOM
- 6 UI languages (EN, 繁中, JA, ES, FR, DE)
- Auto-copy on editor close
- Origin validation for security
NextIn active development
- Full-page / scrolling capture
- Delayed capture (countdown timer)
- Custom keyboard shortcut remapping
- More annotation presets
MaybeConsidering
- Cloud sync of preferences (opt-in)
- Annotation templates
- Team shared color palettes
Won't doOut of scope
- Video / screen recording
- Account system
- Paid tiers or in-app purchases
- Telemetry or usage analytics
Who’s behind this
Not a company. Not VC-funded. Just one developer fixing a problem.

Virgil
I’m a software engineer who got tired of hand-drawing screenshot annotations. This is the tool I wished existed — small, fast, private, focused on one job.
I read every email, fix bugs as fast as I can, and ship updates regularly. No team, no roadmap meetings, no growth team.