Three months ago I shipped a Chrome side-panel extension that screenshots anything on a page, lets you mark it up, and pushes it into an AI prompt. Eight weeks in, I have ~40 weekly active users and a retention curve I did not expect.
Here is the one thing I wish someone had told me before I started building.
The toolbar is not the moat. The question moment is.
I kept reading posts claiming the Chrome toolbar is the underrated distribution channel. It is, but the toolbar is only the shelf. The moat is the micro-moment that pulls someone back to it. For my tool, that moment is exactly one second before someone would otherwise alt-tab to a chat app. The user is mid-reading, has a question, opens the side panel, asks, closes it. Repeat 4-6 times a day.
If the extension loads in the wrong moment (e.g., when the user is about to share something, or read a long doc), it feels like interruption. Same UI, same permissions, totally different retention curve. I lost two months assuming the product was the differentiator. It was the trigger.
Three signals I now track every week
- Time-to-first-action after page load. Median for retained users is under 4 seconds. Median for users who churn in week 1 is over 90 seconds.
- Side-panel open count per day per retained user. The number is not 1, it is 3-7. The retained behavior is habitual quick-checking, not one deep session.
- What the user was doing right before the panel opened. I tagged 200 opens manually. The dominant categories: "reading a doc and had a question" (38%), "writing an email and needed a sanity check" (24%), "researching and wanted a comparison" (21%). Everything else was noise.
The stack (if anyone is considering chrome.sidePanel)
- MV3 + chrome.sidePanel API, set to a specific site pattern, not open-by-default
- Konva.js for the screenshot+annotation overlay, with a hard cap on canvas size to keep first-paint under 300ms
- Tab capture via chrome.tabs.captureVisibleTab, rate-limited to roughly 2 captures/sec — going faster triggers Chrome to silently drop frames, and nobody will tell you why your screenshots look stale
- No analytics SDK. I rolled a tiny local-only event counter. The privacy posture matters for IH-trustworthy founders evaluating the tool
What I would do differently
- Skip the launch hype. The IH launch post got me 6 sign-ups in week one. The 30 users I have now came from someone in a Discord seeing a teammate's panel open during a screen share.
- Build the share moment into the product, not as a feature, as a side-effect. Right now the most common "aha" is when a user screenshots something, asks the AI about it, and forwards the answer to a coworker. I did not design for that. The users did.
If you are building browser tooling: stop optimizing the toolbar. Optimize the 4 seconds before the user alt-tabs.
Curious how others here measure the trigger moment, especially for extensions that aren't screenshot-adjacent.