At the end of the day, you want to build features with the highest ROI. The best way to determine ROI is to quantify the value of the RETURN (impact) and INVESTMENT (effort) needed. That means scoring.
You should attempt to define all of the variables that enter into the cost/benefit equation which can be assigned a numerical value. Fuzzier items you can still quantify with a scale. You can make this as simple or complex as you want.
I've tested and used many tools to manage this, including:
I've found they all vary considerably and none have hit exactly what I needed, such as:
-Complexity for me, developers and business users
-Self-serve stakeholder scoring and weighting (if you want customer or internal feedback)
-Customization for my unique needs
So I built my own which:
Captures ideas, challenges, bugs, any request
Allows users to submit and see their own in a UI
Places an impact score based on what was provided (strategic fit to company goals, subjective user importance, completeness of request, beneficiary is a customer vs internal, etc)
I receive the request and vet it - classify, categorizer, clarify, close it, add it the FAQ with an answer, send it back to the requester for more details or pass it along for developer estimation, etc
I work with engineering to give a point estimate which results in a priority score and estimated dev work hours
I can then build a scored and dated roadmap based on similarity, priority, effort, etc
I can create Kanban cards and push them to a board via Zapier
When things are completed, I close my initial request and the associated feature is added to our feature list
It's not perfect or pretty (not many visuals) but it keeps everything in one place to manage as the fluidity changes daily and I can easily manage and share with anyone in a consistent fashion - since what gets built is ultimately a negotiation where the priority is a subjective value to start from.