Add feedback to your SaaS without building a public board
Adding “feature requests” to a SaaS product sounds like a small feature.
It usually starts small too.
You ship a list, a form, and an upvote button. Then real customers invent duplicate titles, argue about status labels, forge vote cookies, spam anonymous submissions, and ask where the public roadmap URL lives.
Now you are maintaining a feedback product inside your actual product.
Bootstrapware Feedback is for the point where an in-app board is useful enough to ship, but annoying enough that you probably should not own the whole subsystem.
It gives your customers a complete embed:
- List posts with status badges and vote counts.
- Submit a title (max 200) and optional body (max 5000), plain text.
- Vote and unvote keyed by your host-asserted
user.id. - Filter by status:
open,planned,in_progress,shipped,declined. - Load published board toggles (submissions, voting, empty state, branding).
Your application still owns authentication and where the widget sits in the product.
There is no public board URL. Put the widget inside your signed-in product.
The simple version is not the expensive part
An AI coding agent can generate a posts table in minutes.
That is not the hard part.
The work starts when customers expect the feature to behave like a production feature:
- Identity must be stable and opaque, Bootstrapware does not authenticate end users.
- One vote per author per post needs a real uniqueness rule.
- Status workflows need a fixed vocabulary teams can agree on.
- Spam and moderation land on you (especially Hosted plain text).
- BYO vs Hosted storage is a product decision, not a code comment.
- Live publishable config needs BYO ($9.99) or Hosted ($19.99); live Hosted writes need Hosted ($19.99).
You can absolutely build all of that yourself.
The question is whether feedback infrastructure is one of the things you want to keep maintaining.
What the integration looks like
A production Hosted integration is intentionally boring:
<Feedback
boardId="brd_..."
publishableKey="bsw_live_pub_..."
user={currentUser}
/>Or keep posts on your backend with a FeedbackAdapter (BYO). Local createLocalAdapter is free forever for demos.
Resolve order: explicit adapter → Hosted (boardId + publishable key) → local.
What you still own
- End-user authentication and the opaque
user.idyou pass in. - Where the embed lives in your information architecture.
- BYO API, database, and vote integrity (if not Hosted).
- Moderation and content policy (especially Hosted).
Build it yourself when that makes sense
Bootstrapware is not the answer to every feedback problem.
Build your own board if feedback is the core product, you need public SEO roadmaps, or you require deep enterprise portals with custom workflows Feedback does not ship.
Use Bootstrapware when the requirement is closer to:
“My signed-in customers need to submit and vote on ideas inside the product, and I need a predictable status model.”
That is the boring part we are trying to make boring again.
Related: Feedback · Quickstart · BYO vs Hosted · Next.js · Build vs buy · Pricing