MarkLayer

Product

MarkLayer featuresWhat's new in MarkLayerPricingSupport the projectAbout MarkLayerPrivacy

Guides

All guidesHow MarkLayer works, in plain EnglishWebsite feedback tools in 2026, twenty-one comparedHow to annotate a website, four waysHow to annotate a PDF for freeHow to annotate an image or screenshotThe best free website annotation tools in 2026, auditedCollecting website feedback without making anyone log inThe Markup.io price hike: what changed and what it costs nowMCP servers for bug reports and visual feedback, comparedGive your AI coding agent visual feedback from a live webpageSending MarkLayer annotations to Jira, Linear, Slack and moreOpen-source website annotation tools in 2026

Use cases

All use casesHow to get client feedback on a staging site without asking them to install anythingPoint an AI coding agent at a UI element on your local dev serverMarkLayer for Design ReviewMarkLayer for QA Bug ReportingMarkLayer for Client FeedbackMarkLayer for Remote TeamsMarkLayer for StudentsMarkLayer for EducatorsMarkLayer for ResearchersMarkLayer for Content CreatorsMarkLayer for MarketersMarkLayer for AgenciesMarkLayer for Freelance Web DesignersMarkLayer for Product Teams

Compare

All comparisonsMarkup.io review: MarkLayer is a free Markup.io alternativePastel vs MarkLayer: a free Pastel alternativeBugHerd vs MarkLayer: a free BugHerd alternativeAnnotateWeb vs MarkLayer: a free AnnotateWeb alternativeJam.dev vs MarkLayer: a free Jam.dev alternativeMarker.io vs MarkLayer: a free Marker.io alternativeUserback vs MarkLayer: a free Userback alternativeRuttl vs MarkLayer: a free Ruttl alternativeLoom vs MarkLayer: a free Loom alternativeHypothesis vs MarkLayer: a free Hypothesis alternativeUsersnap vs MarkLayer: a free Usersnap alternativestagewise vs MarkLayer: a free stagewise alternativeVolley vs MarkLayer: a free Volley alternativeSuperflow vs MarkLayer: a free Superflow alternativeFeedbucket vs MarkLayer: a free Feedbucket alternativeFigma vs MarkLayerHuddlekit vs MarkLayer: a free Huddlekit alternativeAtarim vs MarkLayer: a free Atarim alternativezipBoard vs MarkLayer: a free zipBoard alternativeWebvizio vs MarkLayer: a free Webvizio alternativeBugSmash vs MarkLayer: a free BugSmash alternativeYbug vs MarkLayer: a free Ybug alternativeSureFeedback vs MarkLayer: a free SureFeedback alternativeSimpleCommenter vs MarkLayer: a free SimpleCommenter alternativePageProofer vs MarkLayer: a free PageProofer alternative

Alternatives

All alternativesFree Markup.io alternative: 5 tools comparedFree Pastel alternativesFree AnnotateWeb alternativesFree Jam.dev alternativesThe best free Marker.io alternative, plus 3 more picksFree Userback alternativesFree Hypothesis alternativesBugHerd free alternative: 4 picks, 3 that cost nothingFree Ruttl alternativesFree Usersnap alternativesFree stagewise alternativesFree Loom alternativesThe closest free Huddlekit alternative, plus 3 more picksThe closest free SureFeedback alternative, plus 3 more picksThe closest free Atarim alternative, plus 3 more picksThe closest free Feedbucket alternative, plus 3 more picksThe closest free PageProofer alternative, plus 3 more picksThe closest free Superflow alternative, plus 3 more picksThe closest free Ybug alternative, plus 3 more picksThe closest free SimpleCommenter alternative, plus 3 more picks

MarkLayer for Product Teams

By Dean Rusin · Last updated: October 2026

A product team's review has three people who each need something different from the same comment: the designer needs it on the right pixel, the PM needs a status, and the engineer needs a selector. MarkLayer puts all three on one thread anchored to the element on the live build. The thread can be worked by the engineer, filed to the tracker, or handed to a coding agent over MCP, and whichever path it takes, the people in the room watch it move from open to resolved to approved on the page.

Teams reviewing a local dev server with an agent in the loop should read localhost and AI agents, which covers the extension side of that flow.

Bottom line

For a product team, MarkLayer turns a review of a staging build into a list of element-anchored threads the engineer can act on. Each comment carries the CSS selector and the text of the element it points at, a priority and a status, and the same thread can be worked by an AI coding agent over MCP with no server to install. It is free, nobody on the team signs up, and the hand-off to Linear, GitHub or Jira is one click out.

On this page

The problem

Design QA on a preview build is a Slack thread of cropped screenshots. The designer posts a PNG with a red box, the PM asks which breakpoint, the engineer asks which component, and by the time it reaches a ticket the build has been redeployed and the screenshot shows something that no longer exists. The feedback tools built for this want a per-seat licence for everyone who might comment, which on a product team is everyone.

Why MarkLayer fits product managers, designers and engineers reviewing staging, preview and production builds together

How it works

  1. Open the preview build. Paste the preview or staging URL into marklayer.app. For a build behind SSO, open it in Chrome and use the free extension in your signed-in tab instead.
  2. Leave element-anchored comments. Click the component you mean and type. The comment records the element's selector and text, so it still points at the right thing after the next deploy.
  3. Share one link with the team. Click Share and drop the link in the channel. Everyone opens it in their browser and comments alongside you, with no account on anyone's side.
  4. Triage on the page. Set priority and an assignee on each thread. Mark the ones that are not going to happen as dismissed so the list only shows real work.
  5. Hand off to a person or an agent. File a thread to Linear, GitHub or Jira from the thread itself, or connect a coding agent to the room's MCP endpoint and let it work the open threads while the team watches each one move to resolved.
  6. Close the loop. The engineer or the agent marks a thread resolved. The designer or PM who raised it marks it approved, and the review ends on the build it was about.

Frequently asked questions

Does anyone on the team need an account?
No. The share link is the access mechanism, and everyone who opens it can comment, reply and mark up the page in their browser. Optional magic-link accounts exist for a dashboard of your own rooms and for view-only links, but they are an extra, not a requirement.
What exactly does a comment carry for the engineer?
The page URL, the comment text and thread, and a target block with the element's CSS selector, its tag name, its content as markdown, its rectangle at capture time and a short text fingerprint used as a fallback when the selector no longer matches. The inspector tool captures the same handle for an element on its own, without a comment. Reading the thread from the API or over MCP returns this block as data.
How does the AI agent hand-off work?
Every room answers MCP over Streamable HTTP at marklayer.app/s/{id}/mcp, so adding it to Claude Code is one command and nothing is installed. For clients that only run local servers, the marklayer-mcp package on npm wraps the same tools over stdio. The agent lists and watches annotations, acknowledges one, makes the change, replies or resolves, and can propose an exact text edit for a selection. People in the room see the agent's name on what it did. Nothing it does is hidden from the thread.
Do the Linear, GitHub and Jira integrations sync both ways?
No. They send out of MarkLayer only. Filing a thread creates one issue, and the Slack, Teams, Discord and webhook destinations receive new comments as they arrive. Closing the issue in the tracker does not change the thread here, and resolving the thread here does not close the issue. The tracker token is supplied when you file and is not stored with the room.
Does it capture console errors, network requests or browser details?
It does not capture network requests or browser and OS metadata. If a bug report needs those, BugHerd or Jam is the better fit for that part of the job. See the [BugHerd comparison](/vs/bugherd) for where each tool sits.
Does it work on a preview build behind SSO?
The web app fetches the page from MarkLayer's server with no cookies, so an SSO wall shows the login page. Use the free Chrome extension in your own signed-in tab, and have each reviewer join the room from theirs. [Staging feedback without an extension](/for/staging-feedback-no-extension) covers both paths.
How long do review threads stay around?
90 days after the room was last opened, and any visit resets that. For a record past that, fetch the room's JSON from marklayer.app/api/{id} or file the threads that matter to your tracker.

Other use cases

Try MarkLayer

Paste any URL at marklayer.app and annotate the live page in your browser. No install, no account, no sign-up. Recipients of your share links don't need to install anything either.

Annotate a page

Or add the free Chrome extension for sites the web app cannot embed, such as pages behind a login.