# How to Build a Customer Feedback System in Bubble

- Tool: Bubble
- Difficulty: Beginner
- Time required: 25-30 min
- Compatibility: All Bubble plans
- Last updated: March 2026

## TL;DR

A customer feedback system in Bubble uses a Feedback Data Type with category, rating scale, and comment fields, connected to a submission form and admin review dashboard. This tutorial covers designing the feedback form with NPS or CSAT rating scales, categorizing feedback by type, building an admin dashboard for reviewing and responding to submissions, and creating basic analytics to track satisfaction trends over time.

## Overview: Customer Feedback System in Bubble

This tutorial guides you through building a complete feedback collection and management system. Users can submit rated, categorized feedback, and administrators can review, respond to, and analyze the submissions.

## Before you start

- A Bubble app with user authentication
- Basic understanding of Data Types and Repeating Groups
- Familiarity with Bubble Workflows and conditional formatting
- An admin role or page for reviewing feedback

## Step-by-step guide

### 1. Create the feedback data model

Go to the Data tab and create a 'Feedback' Data Type with fields: user (User), category (text or Option Set — Bug Report, Feature Request, General, Complaint), rating (number 1-10 for NPS or 1-5 for CSAT), comment (text), status (text — new/reviewed/resolved), admin_response (text), and reviewed_by (User). Create an Option Set called 'FeedbackCategory' with your categories. Each option can have an icon attribute for visual display.

**Expected result:** A Feedback Data Type with all fields for collection, categorization, and management.

### 2. Build the feedback submission form

Create a feedback form with a Dropdown for category selection (sourced from the FeedbackCategory Option Set), a row of clickable star or number icons for the rating (use 5 Icon elements with click workflows that set a custom state 'selected_rating'), a Multiline Input for comments, and a Submit button. When Submit is clicked, create a new Feedback record with the form values, the Current User, status = 'new', and the current date. Show a thank-you message and reset the form.

> Pro tip: For NPS, use a horizontal row of numbers 0-10 styled as buttons. For CSAT, use 5 star icons that fill or unfill based on the selected rating custom state.

**Expected result:** Users can select a category, give a rating, write a comment, and submit feedback.

### 3. Build the admin review dashboard

Create an admin page with filter controls: Dropdown for category, Dropdown for status (new/reviewed/resolved), and a Date Range picker. Add a Repeating Group showing Feedback records matching the filters, sorted by Created Date descending. Each row shows the user's name, category badge, star rating, comment preview, status badge, and date. Click a row to open a detail popup showing the full comment and an Input for admin response. The popup has buttons for changing status to reviewed or resolved, and saving an admin response.

**Expected result:** Administrators can filter, review, respond to, and resolve feedback submissions.

### 4. Add feedback analytics

At the top of the admin dashboard, add summary cards: Average Rating (Do a Search for Feedback:each item's rating:sum / count), Total Submissions this month, NPS Score calculation (percentage of 9-10 ratings minus percentage of 0-6 ratings). Add a simple trend display using a chart plugin: plot average monthly ratings over the past 6 months. Add a breakdown by category using a Repeating Group of FeedbackCategory Option Set showing the count and average rating for each category.

**Expected result:** The dashboard displays key satisfaction metrics, trends, and category breakdowns.

### 5. Set up automated follow-up workflows

Create notification workflows: when feedback with rating 1-3 is submitted, send an immediate email alert to your support team so they can address unhappy customers quickly. When an admin adds a response and marks feedback as resolved, send an email to the feedback submitter with the response. Create a weekly scheduled backend workflow that sends a summary email to the team with counts by category and average rating for the week. RapidDev can help set up more sophisticated feedback routing and escalation workflows for complex support needs.

**Expected result:** Low-rating feedback triggers immediate alerts, and resolved feedback generates follow-up emails to users.

## Complete code example

File: `Workflow summary`

```text
CUSTOMER FEEDBACK SYSTEM SUMMARY
=====================================

DATA MODEL:
  Feedback: user, category (Option Set),
    rating (1-10), comment, status, admin_response,
    reviewed_by, Created Date
  FeedbackCategory: Option Set
    Bug Report, Feature Request, General, Complaint

SUBMISSION FORM:
  Category dropdown (Option Set source)
  Rating: star/number icons → custom state
  Comment: Multiline Input
  Submit → Create Feedback → Thank you

ADMIN DASHBOARD:
  Filters: category, status, date range
  RG: Feedback sorted by date desc
  Columns: user, category, rating, comment, status
  Detail popup: full comment + response input
  Actions: Mark reviewed, Mark resolved

ANALYTICS:
  Average rating card
  NPS score: (promoters% - detractors%)
  Monthly submission count
  Category breakdown with avg ratings
  Trend chart: monthly avg ratings

AUTOMATIONS:
  Rating 1-3 → Alert support team
  Resolved → Email user with response
  Weekly → Summary email to team
```

## Common mistakes

- **Not following up on low-rating feedback** — Unhappy customers who feel ignored are likely to churn and leave negative reviews Fix: Set up automatic alerts for low ratings so your team can respond quickly
- **Making the feedback form too complex with many required fields** — Long forms reduce submission rates significantly — users abandon before completing Fix: Keep the form to category, rating, and optional comment. Only require rating and category.
- **Not tracking feedback status through its lifecycle** — Without status tracking, feedback piles up with no visibility into what has been addressed Fix: Use a status field (new/reviewed/resolved) and filter the admin dashboard by status

## Best practices

- Keep the feedback form short — category, rating, and optional comment
- Alert your team immediately when low ratings are submitted
- Track feedback status from new through reviewed to resolved
- Send follow-up emails when feedback is resolved to close the loop
- Analyze trends weekly or monthly to catch satisfaction changes early
- Use NPS or CSAT consistently to benchmark over time
- Make feedback submission accessible from multiple places in your app

## Frequently asked questions

### What is the difference between NPS and CSAT?

NPS (Net Promoter Score) asks 'How likely are you to recommend us?' on a 0-10 scale. CSAT (Customer Satisfaction) asks 'How satisfied are you?' on a 1-5 scale. NPS measures loyalty; CSAT measures immediate satisfaction.

### Should feedback require users to be logged in?

For tracked feedback with follow-up capability, require login. For anonymous feedback that encourages honesty, allow guest submissions but store the browser session for spam prevention.

### How do I prevent feedback spam?

Require authentication, limit one submission per user per day using a search constraint, and optionally add a CAPTCHA for guest submissions.

### Can I embed the feedback form on specific pages?

Yes. Create the form as a reusable element and place it where needed, or use a floating button that opens a feedback popup from any page.

### How do I calculate NPS score?

NPS = (percentage of 9-10 ratings) minus (percentage of 0-6 ratings). Scores range from -100 to +100. Above 0 is good, above 50 is excellent.

### Can RapidDev help build a feedback system?

Yes. RapidDev can build comprehensive feedback systems including multi-channel collection, sentiment analysis, routing to teams, and executive reporting dashboards.

---

Source: https://www.rapidevelopers.com/bubble-tutorial/add-a-customer-feedback-system-in-bubble
© RapidDev — https://www.rapidevelopers.com/bubble-tutorial/add-a-customer-feedback-system-in-bubble
