
“Feedback SDK” means three different products. Mixing them up is how you buy Instabug when you wanted votes, or Canny when you wanted a native screen.
- Feature voting board — users submit ideas, other users vote, you ship the top of the list.
- Bug / crash reporter — shake the phone, attach logs, file a ticket.
- Web board in a WebView — Canny, Featurebase, Nolt. Fine on a website. A website inside your app.
This comparison is for people shipping iOS, Android, or both, who want users to request and vote inside the app. If you only have a web SaaS, read Canny vs Featurebase vs Productboard instead.
Quick table
| Native iOS | Native Android | RN / Flutter | Voting board | Device context | MCP / agent loop | Starts at | |
|---|---|---|---|---|---|---|---|
| FeedbackJar | Yes (iOS 15+, SwiftUI + UIKit) | Yes (API 21+) | Yes | Yes | OS, model, screen, app version, locale | Yes | $9/mo, 7-day trial |
| WishKit | Yes (Apple platforms) | No | No | Yes | Apple device fields | No | ~$15/mo |
| FeaturePulse | Yes (SwiftUI) | No | No | Yes | MRR-weighted | No | Free / ~$9/mo |
| Canny | WebView | WebView | WebView | Yes | Browser UA | No | ~$50–79/mo, tracked users |
| Featurebase | WebView | WebView | WebView | Yes + suite | Browser UA | No | ~$29–49/seat |
| Nolt / UserJot / Frill | WebView | WebView | WebView | Yes | Browser UA | UserJot: MCP on web | $19–29/mo |
| Instabug / Luciq | Yes | Yes | Yes | Weak (not the job) | Excellent (logs, replay) | No | Sales / DAU |
Native means Views, Compose, or SwiftUI. A WKWebView pointed at your Canny subdomain does not count.
How to use the table
- Apple-only indie app, you want the smallest SwiftUI surface: WishKit or FeaturePulse. You will redo this the week you add Play.
- iOS + Android, one backlog: FeedbackJar. Same widget ID on both stores.
- Web SaaS first, mobile is a companion: Canny or Featurebase. Accept the WebView.
- Crashes, ANRs, shake-to-report: Instabug. Do not use it as your public roadmap.
- You already live in Cursor / Claude Code: you need MCP and metadata, not another status column. That is a different shortlist.
Try FeedbackJar for 7 days if the row you want is “native on both phones + agent can close the loop.” No card.
1. FeedbackJar
Built for the person who ships the binary, not the PM suite.
- Swift package: github.com/feedbackjar/swift-sdk —
FeedbackJar.configure(widgetId:)thenFeedbackJarBoard() - Android:
com.feedbackjar:sdk:1.5.1—FeedbackJar.initthenFeedbackJarActivityor ComposeFeedbackJarBoard - RN and Flutter SDKs share the same board
- Guest votes use a random install id (UserDefaults / SharedPreferences), not a device id
- Submit attaches OS, model, screen, app version, locale. Add
planyourself via properties - MCP server so an agent can list top-voted posts, mark Done, notify voters
Install guides: SwiftUI · Android
Skip it if you need heatmaps, a support inbox, or an enterprise procurement process. That is not the product.
2. WishKit

The cleanest Apple-only board. One package, one configure, FeedbackListView. macOS, visionOS, watchOS, tvOS in the same family. Revenue on a wish if you pass updateUser(payment:).
The limit is the platform list. There is no Android artifact. No RN. No Flutter. Teams that like WishKit and then ship Play either wrap a website or buy a second tool. That split backlog is the actual cost, not the $15.
If that is your situation: WishKit alternative for Android. Money page: WishKit alternative.
Pick WishKit if you will not leave the App Store.
3. FeaturePulse

Another iOS-native voting SDK. Strong on automatic MRR weighting and “who asked.” Same hole as WishKit: Android is not the product.
Pick FeaturePulse if you are iOS-only and care more about revenue-behind-a-vote than an agent loop.
4. Canny, Featurebase, Nolt, UserJot, Frill
These are good for websites. They are not iOS or Android SDKs.
What you get in an app is a WebView of the board. Users can vote if they survive the login wall. Theme will not match Settings. Offline is an empty screen. Metadata is a user agent string.
Canny

Canny is the board people already know. Still a WebView on mobile — see Does Canny have a mobile SDK?. Money page: Canny alternative.
Featurebase

Featurebase adds changelog, surveys, help center — useful if you want one vendor for the marketing site. Same WebView shape in an app. Featurebase alternative.
Nolt, UserJot, Frill

Nolt is not officially supported in apps. UserJot is cheaper and has been adding AI / MCP on the web product. Frill sits in the same WebView bucket. None of them give you FeedbackJarBoard()-style SwiftUI.
Use them when the app is not the product.
Mobile-SDK cut: Does Canny, Featurebase, or Nolt have a mobile SDK?.
Web-tool comparison: Canny vs Featurebase vs Productboard.
5. Instabug (Luciq)

Different category. Shake, screenshot, network log, session replay, crash list. Native on iOS and Android. Teams love it because “I cannot reproduce this” goes away.
It is not a public voting board. Do not force it to be one. If you need both crashes and a roadmap, run Instabug and a voting SDK. They do not replace each other.
More: Instabug alternative.
What to optimize for (not features)
One vote count.
iOS WishKit + Android Canny means you will argue about which number is real.
Context the next person can use.
“Add widgets” with no OS, no app version, no screen is a support ticket. A coding agent cannot ship from that. See MCP.
An entry point humans find.
Settings row labelled “Feature requests.” Not shake-only. Not “Ideas.”
A way to tell voters you shipped.
Boards that stay on Planned train people to leave reviews instead.
Install path if you already picked
- SwiftUI app → How to add a feedback board to a SwiftUI app
- Android app → How to add a feedback board to an Android app
- Coming from WishKit → WishKit alternative for Android
- Web-only SaaS → Canny vs Featurebase vs Productboard
Frequently asked questions
Is a WebView “good enough” for mobile?
For an internal admin app, yes. For consumer App Store / Play apps, expect fewer submits and more abandoned logins.
Does an in-app board hurt review?
A Settings-row board that sends text and votes is normal. Declare the data. Do not collect a device advertising id for guest voting.
Can I keep WishKit on iOS and add something else on Android?
Yes. You will maintain two dashboards. Migrate when the double-count gets painful.
Voting SDK or bug SDK?
Ask what a successful report looks like. A ranked idea → voting board. A stack trace → Instabug.
Bottom line
If the app is Apple-only and you want the smallest SwiftUI drop-in, WishKit is fine.
If you ship both stores — or you want the agent to read the report and close it — shortlist the rows that have a real Android SDK and a real iOS SDK. Everything else is a website wearing an app costume.
Start a 7-day trial. Same widget ID on iOS and Android.