A Usero Journal series
We’re the kind of team that signs up for other people’s products just to see how they think. This series is what we bring back: one feature at a time, explored on a real account with our own screenshots. Written with respect for the teams who built them, and with honesty about what we’d want as users. The best ideas end up in Usero, pull request included.
We enabled the AnnounceKit email digest, set it to send Saturday, and came back on Saturday. No draft, no digest, and nothing in the product showing whether it ran: no draft view, no send history, and a config that froze into upgrade modals mid-trial while staying armed. Plus the weekly digest we built for Usero the same night: a cadence choice instead of a second channel, a draft-preview email with a one-click skip, and an admin page that always shows the next digest and what happened to the last one. Free.
A second night inside a live AnnounceKit trial, this time on boosters and the email digest. The modal booster collects reactions and feedback right where the announcement lands, then fires again on reload at someone who already answered. The digest emails you a draft 12 hours before it sends. And every path a reader could take to become an email subscriber failed in our workspace, so the email side had nobody to send to. Plus what we built the same night: changelog email subscriptions on Usero, with a confirmation link before anyone is subscribed and requesters deduped out of the broadcast. Free on every plan.
We built a PostHog Replay vision scanner, fed it a session scripted to fail (17 failed save clicks, two rage bursts, an abandon), and audited every claim against their own event data. The score was right at 8/10. The reasoning also reported a button click that never happened, and the daily digest repeated it as a product finding at 100% confidence. Plus the pricing surface worth copying, the calibration diff, the Self-driving beta that drafts PRs at $15 each, and the replay scanner we built onto Usero the same night, where every claim must anchor to a real event or it gets dropped.
A hands-on teardown of PostHog’s replay-survey cross-linking from inside a free project we fed with real data: the event spine that stamps every survey answer with its session id, the wizard that reads its own defaults back in sentences, the honest data-loss banners, and the View recording button that silently no-oped on three surfaces while the recording provably existed. Plus the person profile page we built onto Usero the same night: a requester’s feedback, replays, and the merged PRs that shipped because they asked.
The machine behind the Field Notes series: a launchd job fires a headless Claude session at 06:27, it studies one competitor feature inside a real logged-in Chrome, a verdict gate decides build or teardown-only, and builds land overnight as pull requests with screenshots and a smoke transcript attached. 28 nights in: 19 digests, 9 failed mornings, 15 merged PRs, 12 published articles, and the full failure log from exit 127 to four dark nights of a mismatched grep.
A hands-on teardown of Maze’s unmoderated user tests from inside a live workspace: the three-pane builder with its live participant preview, the think-aloud education we wrote down to steal, the AI follow-up that was sharp for exactly one turn, the permission wall that turns every webcam refusal into a lost participant, and the per-session AI output of one summary paragraph plus a one-word sentiment label, every row of it Enterprise-only with no published price. Plus the findings we made first-class in Usero the same night: severity-tagged friction from voiceover user tests, auto-filed into the feedback inbox, each opening the replay at the second it happened, clustering with organic feedback and eligible for an AI-drafted pull request.
A hands-on teardown of Hotjar’s replay-linked feedback from inside a free account with real history: the one consent dropdown that is the whole feature, the wizard that saves your button inactive, the response modal with its honest disabled Play recording tooltip, and the submission that returned 200 on every POST and never surfaced. Plus the mirror moment: our own SDK was stamping the exact submit offset on every feedback and our dashboard threw it away, so we built the moment link the same night.
Notion is the most requested integration on the feedback boards of Canny (249 votes, Under Review since August 2019), Featurebase (196 votes, Planned for three years with a slipped Q2 ETA), and Sleekplan, and none of the four tools we studied ship it. A read through six years of public request threads, why the gap survived, and the one-way Notion database push we built in a night on the 2025-09-03 API.
A hands-on teardown of Featurebase issue tracker forwarding: the upvote-threshold request their own team filed three years ago (200 upvoters, still Planned), the push-all toggle and manual flow behind the $29 per seat gate, the GitHub app that can only file issues, and the demand-threshold auto PR we built the same night.
We ran AI user testing against our own preview deploy: an agent driving a browser with a plain-English task. The first attempt found nothing useful and filed one confidently wrong finding. Three rounds of fixing the observation layer later it found a stale CI variable that 404s the Connect GitHub button and a sticky header eating a dialog close button, neither of which any static check can see. Costs, limits, and why this is closer to flow regression testing than usability research.
A hands-on teardown of Frill’s announcements widget from inside a live trial workspace: the widget editor that renders the real widget beside the config rail, the Idea block, the Boost toggle that only counts at publish time, cookie-based read state, and the one-checkbox notify step. Plus the What’s new view we built into our own widget the same night, with a pinned Shipped for you card that quotes the user’s own request next to the PR that fixed it.
A hands-on teardown of Sleekplan’s NPS and CSAT module from inside a live workspace: an analytics page that opens on a trend chart, a nine-preset range picker, a plain-English sentence under every chart, the qualitative band word next to the score, and the timing controls that are the best-engineered part of it. Plus the survey score over time we built the same night, with merged AI-authored pull requests drawn on the line.
A hands-on teardown of Canny’s changelog from inside a live free-plan workspace: the three-pane editor with a live preview, the linked-posts typeahead that carries vote counts, the publish confirm with no notify option, the Pro-gated subscriber list, and the passive banner the requester has to go looking for. Plus the requester notifications, recipient preview, markdown fix and RSS feed we built the same night.
A hands-on teardown of Featurebase in-app surveys from inside a live workspace: two survey systems in one product, a template gallery where every card is a live render, benchmark lines on the templates, the Featurebase Posts poll type, and what the Free plan stops you doing. Plus how we built Usero surveys on Forms so answers land in the feedback inbox and can become a pull request.
We spent an evening inside a live Savio trial studying how it pipes support conversations into a feedback inbox: the OAuth handoff, the single feedback tag, the Zendesk subdomain wrinkle, the note-as-feedback trick, and the pricing tier that charges Zendesk shops double. The best decision in the feature looks like a limitation, and it exposed something broken on our side.
A hands-on study of Productboard’s insights inbox: highlighting snippets, the feature-tree link popup, the unlabeled importance chips, and the Customer Importance Score. What the manual loop costs, the undo bug that deletes evidence, and how we built AI-extracted verbatim quotes on Usero clusters the same night.
A hands-on study of how Savio attaches MRR to feature requests: the company attribute system, per-company chips, filters that re-aggregate the dollars, and revenue-weighted reports. Plus how we built our own version, where the revenue arrives from one line of identify() instead of a CRM integration.
We spent an evening inside a live Canny workspace tearing down Autopilot: Feedback Discovery, Post Deduplication, Smart Replies, Knowledge Hub, the credit meter, and the Pro paywall. An honest look at what the dedup toggle does, where it stops, and how automatic cross-source clustering handles the same job differently.