Feedback system

8 min. read

This project involved designing a holistic feedback system composed of three key initiatives:

  1. A redesigned in-app rating experience.
  2. A new post-transaction feedback channel
  3. A flow-abandonment survey

Product design Banking app Analytics

The problem


Technical constraint: A company-wide back-end freeze. This was the biggest challenge. It meant that any solution had to be designed exclusively for the front-end, relying on a robust event-tagging strategy for data collection instead of building new database capabilities. This forced us to be creative and technically precise.

The process

Our main goal was to identify where could we be making the most impact. Here's a simplified user-flow for the original in-app rating flow.

Rating below 4 stars

Rating above 3 stars

The solution


The challenge was to get crucial insights without disrupting the user experience or violating App Store rating policies. I designed a two-part solution to capture feedback at the most relevant moments.


My approach was to first map out a holistic strategy to address all feedback gaps and then tackle each component individually. This ensured a cohesive user experience across the entire system.

Initiative 1: Redesigning the in-app rating flow


Initial problems:

  • A dead-end for negative feedback: Users leaving a 1-3 star rating were prompted to send an email, but we couldn't track if they did. We were losing the most valuable feedback from frustrated users.
  • Double rating flow: The rating flow was duplicated, first the user rated with a custom widget to filter those ratings below 4 stars. To the ratings above 3 stars, the user was redirected to the store, where it was prompted to rate the app
  • Mandatory business flows: Product team wanted to keep the double rating because they didn't want to affect Support team's feedback reporting process

Key proposals:

  • Add 'rating-reason chips' to the rating flow: this way, we would be able to gather and optimize the clusterization of user feedback.
  • Include analytics tags: with this we will be able to save all the insights, even if the user decides to leave the flow incomplete.

Initiative 2: Capturing post-transaction feedback

To understand the quality of our core flows, I designed a rating system that appears right after a user completes a key transaction.

The final design is a non-intrusive modal that overlays the success screen. For low ratings (1-3 stars), it asks users to select from a clear, unified list of reasons ("Technical issues," "Confusing design," etc.), which gives us structured, analyzable data. For high ratings (4-5 stars), it thanks the user and then gently prompts them to rate the app on the App Store, increasing the likelihood of positive public reviews.

Initiative 3: Understanding user abandonment


To solve the mystery of user churn, I designed a feedback modal that triggers when a user attempts to exit an operation. To avoid fatigue, this modal only appears on the first abandonment attempt and then pauses for the next two.

This flow asks users to indicate why they are leaving, providing direct insight into friction points. The entire process was designed to be quick and low-effort, respecting the user's decision to leave while still capturing invaluable data.

Outcomes & results


  • Unlocked qualitative insights: Thanks to the redesigned general rating and the post-transaction feedback, we started getting structured data about user dissatisfaction.
  • Clear view on user churn: The abandonment survey immediately provided a clear view on our most problematic funnels, highlighting issues that were previously invisible.
  • Enabled a data-driven culture: The combination of these three feedback channels fed into a new analytics dashboard, allowing the product team to monitor user sentiment in real-time and prioritize the roadmap based on evidence.

Key learnings


This project was a powerful lesson in designing under constraints. The back-end freeze, which initially seemed like a blocker, forced a creative, front-end-focused solution that ultimately proved highly effective and quicker to implement. It reinforced the importance of not just collecting data, but designing systems to collect the right data at the right time.