Let visitors upvote feature requests from the widget

Updated May 22, 2026

Voting is the core engagement mechanic of your feature board. Visitors browse requests from the widget's Feature Requests tab, see the vote tally, and add their upvote with one click. This article explains how the voting flow works and what you need to have set up.

Prerequisites

  • A Feature Request board with at least one public column.
  • At least one ticket in a public column (so there's something to vote on).
  • The Yaplet widget installed on your site.

When those three conditions are met, the Feature Requests tab appears in the widget automatically β€” no extra configuration needed.

The voting flow

  1. A visitor opens the widget and clicks the Feature Requests tab.
  2. They browse the list of requests, sorted by most votes by default.
  3. They click the upvote button on a request they care about.
  4. First vote only: a modal asks for their email address. This email is used to notify them when the feature ships. It's stored in a browser cookie for 7 days β€” the next time they vote (within that window) they won't be prompted again.
  5. The vote is registered, the count increments, and the button changes to show the visitor has voted.

Why an email is required

The email address serves two purposes: it prevents duplicate votes (one email = one vote per request) and it's used to send a notification when the feature's status changes to "Shipped" or another notifying column. Visitors who don't want to share their email cannot vote β€” this is by design to keep vote counts meaningful.

Vote counts on the roadmap

Vote counts are visible to all visitors on both the widget tab and the hosted public roadmap page. A high vote count is a strong signal to your product team β€” items at the top of the list by votes represent the most requested features from your actual user base.

Removing a vote

Visitors can click the upvote button a second time to remove their vote. The count decrements and they are no longer subscribed to notifications for that request.

Did this article answer your question?