Annotate the real website, not a screenshot of it
Pin Feed loads the live page through a reverse proxy. Click anything, leave a comment, draw right on it. The site itself stays untouched, and real visitors never see a thing.
Logo feels heavy here. Try it at 80%?
Most tools annotate a copy of your site
A screenshot is already out of date the moment you take it. Annotating the live page changes what feedback can do.
| Feature | Pin Feed | Screenshot-based tools |
|---|---|---|
| What you annotate | The live page, as it renders right now | A static capture from earlier |
| Menus, hovers, and carousels | Open them in browse mode, then pin | Frozen at capture time |
| After the site changes | Reload and keep pinning | Re-capture, re-upload, re-share |
| Where pins attach | The element (CSS selector + offset) | Pixel coordinates on an image |
| Point-in-time record | Auto screenshot at every pin | Yes |
| Sites behind strict firewalls | Snapshot mode or a 30-second whitelist | Yes |
| Setup | Paste a URL, nothing to install | Capture, upload, or install something |
Honest caveat: a static capture never fails to load. When a strict firewall blocks our proxy, snapshot mode and the whitelist guide cover the gap.
And because the page is live, you can resize it too. Review on desktop, tablet, and mobile, with each viewport keeping its own set of pins.
When a pin isn't enough, draw it
Every tool comes with a color picker (any hex), undo, and a pause toggle so you can scroll mid-drawing. Drawings are stored as vectors, so they re-render sharp at any zoom.
Pencil
Freehand, for the shapes words can't make.
Highlighter
A translucent marker for the exact line of copy you mean.
Line
Straight lines for alignment and spacing calls.
Arrow
Point at the thing, arrowhead included.
Rectangle
Box a section, a button, a banner.
Circle
Ring the small stuff a pin would cover up.
Pins stick to the element, not the pixel
Every pin stores the element's CSS selector, tag, and your exact click offset inside it, alongside the position coordinates. So when the page animates, reflows, or loads at a different width, the pin rides along with the thing it points at. It's the difference between “move the thing up a bit” and revisions web designers can actually act on.
- Pins track the element through animations and reflows
- Carousel-aware: pins anchor to the slide's logical index on Swiper, Slick, and Owl, and the screenshot engine even drives the carousel to the pinned slide
- If the element is deleted later, the thread warns you instead of floating in space
Built for the web people actually ship
Live production sites, half-finished staging builds, and the frameworks in between.
WordPress
Purpose-hardened for WordPress. No plugin to install, and your client's hosting stays untouched.
Elementor and page builders
Survives builder markup, nested wrappers, and the div soup page builders generate.
Staging links
Annotate staging and preview URLs before launch, then sweep the live site after it ships.
Modern SPAs, via snapshot mode
Next.js App Router and similar frameworks won't load through a live proxy, so snapshot mode renders them for review instead.
If a host's firewall blocks the proxy, send them the 30-second whitelist guide (copy-paste rules for Cloudflare, nginx, Apache, and Wordfence). And when it's not a website at all, image and PDF proofing handles files the same way, with each version keeping its own pins.
0 client accounts needed3 viewports6 drawing tools1 link
Annotation questions, answered
Annotate the page, not a picture of it.
Paste a URL and drop your first pin in under a minute. Free for 3 projects, 14 days of Pro included.
Start free