Back to home
Canny

Feedback, sorted.

Managing feedback at scale with AI.

Autopilot
Role
Product designer
Team
PM + 4 engineers
Timeline
6 months
Outcome
$400K ARR, year one

Premise

I was the only designer at Canny, working with a PM and 4 engineers to shape Autopilot: AI-powered capture for customer feedback, pulled from the places teams already work.

Insights found
100,000+
for teams using Canny
ARR generated in Year 1
$400k
over 10% of Canny's total

I’m really loving the new Autopilot beta. It’s been awesome. It makes me engage with your product on a daily basis rather than every week or two.

VP Product
Credit Repair Cloud

Feedback everywhere

Think of Canny like Reddit for product feedback. Users post requests, others upvote and comment, and teams use that signal to decide what to build next.

That works while the volume is manageable. Past a certain scale the backlog becomes a job in itself. Posts to review, duplicates to merge, customers waiting on answers.

Feature requests from Canny's users

And feedback had stopped living in Canny. High-signal requests were showing up in support conversations, sales threads, CRMs, Slack, and app reviews. Canny was supposed to be the source of truth, but half the signal never made it there.

Duplicates multiplied. Important asks got buried in threads nobody had time to comb through. The less teams could trust what was in Canny, the less useful it became.

Collage source 1
Collage source 2
Collage source 3
Collage source 4
Collage source 5
Collage source 6
Collage source 8
Collage source 9
Collage source 10
Collage source 11
Collage source 12
Collage source 13
Collage source 14
Collage source 15
Collage source 16
Collage source 18

Feedback, everywhere, all at once

The bet

Instead of asking users to bring feedback to Canny, we wanted Canny to be the place feedback naturally ends up. Connect the external tools, extract the feature requests, dedupe them against what's already in Canny, and return them as drafts for review.

It was a big swing for a bootstrapped company, and parts of it would have to reorient around this. So we validated first, in lean rounds across our customer base, looking for enough signal rather than the perfect signal.

Sources
App Store
Capterra
Discord
Gong
Google Forms
Help Scout
Hubspot
Intercom
Jira
Linear
Google Play
Salesforce
Slack
Shopify
Typeform
Zendesk
+ more
2,600
extracted
Autopilot
ExtractDedupeDraftReview
1,768
added to Canny
Canny

Many sources in, fewer posts out

The 90% bar

We began exploring Autopilot in late 2023, when newer AI models made reliable extraction practical. We gave ourselves 6 months to reach public launch: 4 to build an MVP, 2 to run a closed beta.

To keep scope tight, I was embedded with engineering throughout: daily syncs, shared specs, reviewing builds as they shipped.

Canny team in Italy

Technical planning with the engineers

We couldn't overbuild the bet or pull engineering focus from the rest of the product. And the design had a harder job than usual. Most people didn't trust AI in this context yet, so the interface had to do the trust-building on its own.

The foundation was young, too. I'd spent the four or five months before Autopilot building Canny's first product-wide design system, mostly by standardizing patterns the product already had. Autopilot was its first real stress test, a new surface category full of decisions the system didn't have answers for yet.

Teams needed Autopilot to be right about 90% of the time before they'd let it near their operations. So we benchmarked every frontier model against our own backlog. We used Canny internally ourselves, which meant years of already-processed feedback as ground truth. We built the eval in-house, scored each model against the human calls, and reran it until the results held.

EVAL · ONE TICKET THROUGH THE LOOP
"Exports keep failing on big CSVs, pls fix"
Zendesk ticket · sample 412 / 1,600
ROUNDMODEL SAYSTEAM'S AUDITRESULT
1noiseinsightmiss ✗
"a bug report hides a feature ask" · read the ask, not the frame
2new postdupe · 'Bulk export'miss ✗
"same ask, new words" · match intent, not wording
3insight · dupeinsight · dupematch ✓
model now reads it like the team does91%

The model's calls are scored against decisions the team had made. Each pass replays a new ticket.

Benchmarking is token-heavy though, so we stayed deliberate about where compute went.

A SAMPLE RUN · 12 TICKETS
in
filter××××
routegpt-3.5-turbo · 2 calls · 3¢
gpt-4-turbo · 1 call · 6¢
cost9¢ this run84¢ unoptimized·at Typeform volume (7,500/mo): $56 $525

The pipeline that kept benchmarking affordable. Cheap models filter every ticket so the frontier model only reads what survives.

The inbox

I studied tools built for high-volume processing (Intercom, Zendesk, MailChimp). They all share one pattern. An inbox, a visual queue you work through top to bottom until you reach zero.

Reviewers here were deciding whether to trust each item, so every suggestion had to sit next to the original feedback it came from. Enterprise teams couldn't reorient their operations around signals they couldn't audit.

My first pass was a flat table: every item in one stream, tagged by type, quick actions at the right edge. Testing surfaced the problems fast. Mixing decision types forced constant context-switching, and at real density the type labels stopped registering.

DESIGN EVOLUTION · CONCEPTBEST ON A LARGER SCREENMARKERS
FeedbackRoadmapChangelogUsersAutopilot
All Feedback
Autopilot12
Filters
TypeFeature RequestsDuplicatesSpam
AutopilotReview incoming feedback from all your sources. Learn more
SourceTypeDetailsQuick actions
IntercomDUPLICATE
Slack notification when a post changes statusWe'd love a Slack message in our product channel whenever a post moves to Planned or Shipped, so the whole team sees it without opening Canny.Created 2 days ago byPriya Nair · Brightpath
Notify us in Slack on status changePush an update to a Slack channel when the status of a request changes.Created Feb. 14, 2023 byGreg Manfield · Tallgrass Media
ZendeskFEATURE REQUEST
Bulk-merge a whole cluster of duplicates at onceWhen Autopilot flags a cluster of duplicates, let me merge all of them into one post in a single action instead of one at a time.Created yesterday byDaniel Reyes · Meridian Logistics
XSPAM
Boost your domain rating overnightPremium backlink network, 500+ DR70 domains, limited offer this week only. Reply now to claim your slot before it fills up.Created today bygrowth_hacks_io
IntercomSPAM
SOS Drainage & PlumbingSOS Drainage & Plumbing Services is one of the leading drainage & plumbing companies in Dorset. Locally owned and operated, we have a team of industry-expert plumbers ready to help with any issue you may be experiencing.Created yesterday bySOS Drainage
GongDUPLICATE
Two-way Jira sync for linked postsWhen I link a post to a Jira issue, status changes in Jira should flow back to Canny automatically so engineers only update one place.Created 3 days ago bySofia Marsh · Clearline
Keep Jira and Canny in syncRight now the link is one-directional; we need updates to sync both ways.Created Sep. 8, 2022 byRavi Shah · Fieldstone

Every decision type in one stream

  1. 1One flat streamEvery extraction lands in a single table.
  2. 2Type badgesPills tag each row merge, new post, or spam.
  3. 3Quick actionsApprove or dismiss without leaving the row.
  4. 4Spam beside signalJunk sat in the same stream as real requests.

Each iteration went after whatever was costing reviewers the most. V1 split the stream into queues by decision type so similar calls could be batched. In V2, provenance moved to the front, so every suggestion could be traced to the conversation it came from. V3 pulled the density back to one clear decision per row, and that became the surface the closed beta used daily.

The beta taught us the next move. Users were accepting 91% of Autopilot's suggestions, just doing it manually. So I placed an automation prompt at the top of the queue, letting teams hand over decisions they were already agreeing with. Then the first customer let it run their whole queue, and the surface we'd built for checking every suggestion became an audit log.

The beta also showed the ceiling. However clean the rows got, row-by-row scanning wore people down as backlogs grew. So I designed and spec'd V4 in full, a browsable list beside a focused detail canvas. But V3 was performing too well to justify rebuilding the core surface, and V4 stayed on the shelf for a later release.

INTERACTIVE PROTOTYPE · V4 TRIAGECLICK IN TO TRY ITBEST ON A LARGER SCREEN
FeedbackRoadmapChangelogUsersAutopilot
Autopilot
tl;dv
Post moderation before going liveLast week a customer posted internal pricing details on our public board and we didn't catch it for two days. We need an approval queue, or at least a default visibility setting so new submissions start as private until someone reviews them.
2h
Hundreds of requests come in every monthHundreds of requests come in every month and the only way to spot patterns is to read through them manually. We've been exporting to a spreadsheet and tagging things ourselves but that takes hours and still misses overlaps between sources.
4h
Intercom
Two-way Jira sync for linked postsWhen we link a post to a Jira issue, status changes in Jira should flow back to Canny automatically so engineers stop updating the same thing in two places.
1d
Gong
Sentiment tags on imported callsAutopilot should flag whether a mentioned request came up as a complaint or as a casual nice-to-have. Our PMs currently listen to each call snippet just to figure out urgency.
1d
Boost your domain rating overnightPremium backlink network, 500+ DR70 domains, limited offer this week only. Reply now to claim your slot before it fills up.
1d
Zendesk
Custom fields on feedback postsAdd priority, ARR and segment fields so we can slice incoming feedback by account tier when planning.
2d
Intercom
SOS Drainage & PlumbingSOS Drainage & Plumbing Services is one of the leading drainage & plumbing companies in Dorset. Our team of industry-expert plumbers is ready to help with any issue.
2d
Gong
Customer asked about SSO enforcementThey want to require SAML for all seats before rolling Canny out to the wider org next quarter.
2d
Slack
Slack notification when a post changes statusPost to our product channel whenever an item moves to Planned or Shipped so the team sees progress without checking the board.
3d
Intercom
Roadmap timeline (Gantt) viewCommunicate to our go-to-market team when features will land relative to each other, a timeline reads better than columns.
4d
Instant SEO results: 24h ranking boostWe guarantee first-page rankings in 24 hours. DM for pricing packages and start ranking today.
4d
Slack
Post approval queue and visibility controlsA queue where admins approve incoming posts and control who can see them before they go live.
6d
tl;dv
Credit usage visibility for adminsIt's hard to tell how many Autopilot credits are left mid-cycle without opening settings every time.
1w
Triagenavigate⌥Uundo
Post moderation before going liveLast week a customer posted internal pricing details on our public board and we didn't catch it for two days. We need an approval queue, or at least a default visibility setting so new submissions start as private until someone reviews them.
tl;dvtl;dv
Julia BennettMeridian Logistics2h
Merge into
We had pricing data sitting on the public board for two days before anyone noticed. If there were an approval queue we'd catch that before it ever went live.From a tl;dv recording · Julia Bennett · Meridian Logistics
Feature RequestsPost approval and visibility controlsAllow admins to define default visibility for new posts and change it after the fact. An approval queue where admins can triage posts before they become visible would cover most of the moderation use cases we've been hearing about.
241
May 5

Pick from the queue, check what it matched on, then merge, publish or mark as spam. Every decision is undoable.

Extraction quality depended on how much the model knew about each team's product. So teams got the Knowledge Hub, where they upload reference material and extractions stay grounded.

Knowledge Hub: product context for grounded extractions

The design system got paid back too. Nearly all of Autopilot's UI fed the roughly 40-component library I'd been building: the cards, the banners, the side navs, the pills, the metadata rows. The next AI surface wouldn't have to start from zero.

ROW · INBOX V4REDLINES1 / 3
Post moderation before going liveHundreds of requests come in every month and the only way to spot…Merge
Rowh:72px · r:radius/lg · gap:space/4
1SourceBadgew:32px · r:radius/full
2SuggestionBadgew:20px · r:radius/full
3Titlef:font/md · w:500
4MetadataRowf:font/md · truncate
5Buttonh:36px · r:radius/md · f:font/md · b:1px
PRIMITIVES

A few sample molecules: cycle components, swap variants, toggle atoms, click text or a primitive to edit

Typeform's test

Typeform had the clearest proof point of the closed beta. They handle about 7,500 tickets a month from Zendesk across support, sales, onboarding, and CS. At that volume, manual tagging was never going to scale.

In a side-by-side review of 1,600 tickets, Autopilot processed the set in 53 minutes, surfaced 109 feature requests, and hit 93% accuracy, about 30 points higher than manual review. Deduplication held up too, with a 98.3% acceptance rate.

At that pace, Autopilot clears a full 7,500-ticket month in about 4 hours.

Processing speedup
30x
1,600 tickets in 53 minutes
Accuracy
93%
+30 pts over manual review
Requests surfaced
109
from one side-by-side review
Dedupe acceptance
98.3%
of merge suggestions kept

We’ve been able to 10x the feedback coming into Canny and remove many duplicate posts, with only a few minutes of work a week.

Lead Onboarding Consultant
Typeform

What it became

Autopilot changed how teams used Canny. The queue became somewhere they started their day.

  • We logged 80% more feature requests after launch.
  • Autopilot launched as a paid, usage-based add-on and cleared $400K in ARR in its first year.

Autopilot kept growing after launch, too. It became the umbrella for Canny's AI suite (Feedback Discovery, Smart Replies, Comment Summaries), and by mid-2025 it was folded into every plan.

Canny now sells itself as an AI-powered customer feedback platform. What we scoped as a six-month experiment is the first thing on the homepage.

Canny team celebrating

Celebrating Autopilot's launch in Perugia