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.
Canny shows voters, companies and MRR on a post, but every tracker integration is on Pro and the docs only describe a link on the issue. Featurebase’s Jira panel shows votes live, and its Copy as prompt includes the author’s email. We built a Demand block for issues and AI pull requests: companies, MRR, must-haves and two voter quotes for Linear, Jira and private repos, counts only for public GitHub repos, no emails ever.
Canny’s “Show votes grouped by company” request has 198 votes and was marked complete in August 2026 by pointing at a new Ideas view. We tested where Canny and Featurebase show the company behind a vote, then built a company count, a Most companies sort and a grouped voter list.
Inside Canny’s vote on behalf: the Add voter link on every post, a three-value priority that is Pro-only, a voter list with monthly spend, a status change email that is on by default, and a 25 tracked-user cap on Free. Plus the version we built onto Usero the same night.
Frill’s most-voted request is an ETA field: 418 votes, filed August 2020, status Future since January 2026. Canny, Featurebase and Sleekplan ship one, so we read how each chose month vs day, per-post vs workspace visibility, and post vs roadmap rendering, then checked their own boards: no live ETA on any of them except one on Sleekplan’s, “APR 2024”, 29 months stale. Nobody records or shows a slip. Plus the target month, three-state chip, overdue nudge and set_board_post_target MCP tool we built on Usero the same night.
Canny cofounder Sarah Hum asked for an unanswered-posts list in August 2016. 140 votes later it is still Under Review, and on Canny’s own board 19 of the 20 newest posts carry one AI-generated reply in her name with no label. What the filters, stale posts and report emails do instead, and the Awaiting reply view, reminder email and MCP tool we built on Usero the same night.
Feedback board moderation on Featurebase and Sleekplan: the sign-up wall, the queue with shortcut numbers on the buttons, Keep private, the moderated-words dial, and the plan gate. Then the approval queue we built, on every plan.
A Field Notes study of Outset’s Digital Twins and Outset Agent, read from their public pages, changelog and blog: how a twin is grounded in one real person, what the confidence score does, and the one tool we built the same night.
Inside Frill’s widget editor: a preview that boots the production widget with the real key, sub-550ms on every control, and no mobile preview.
We submitted three survey responses to our own Hotjar setup, one consenting, one declining, one automatic, then read them back in the admin. The bug report screenshot attached to each is a DOM reconstruction with digits masked and the widget excluded, and the visitor is never told it exists. The consent prompt arrives after the data has been sent, links to hotjarconsent.com, and a decline is invisible to the owner. Plus the recording setting we built for Usero the same night: Always, Ask first, and Never, asked before capture, enforced at the server, with a page snapshot at submit when no recording is running.
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.