Setting Up Feedback Widgets

Feedback Widgets let you collect first-hand input from your users through three widget types: Surveys, NPS (Net Promoter Score®), and Ratings. You create and configure these widgets on your Countly Server, where you also define the conditions that decide which users are eligible to see them. When and where a widget actually appears is your call: you display it from your application by calling a single SDK method at the moment that suits your user experience.

The Feedback Widgets feature is available in Countly Enterprise and as an add-on in Flex.

For an overview of the Feedback features and guidance on choosing the right widget for each situation, have a look at the Feedback Overview:

Creating Feedback Widgets

Before an SDK can display anything, the widget must exist on your Countly Server. Create the widget that fits your goal:

  1. Create a Survey: In the Sidebar, go to Feedback > Surveys > New Survey. Surveys run on behavioral or user property segmentation and let you customize up to five questions. For detailed instructions, refer to the Surveys documentation.
  2. Create an NPS widget: In the Sidebar, go to Feedback > NPS > New NPS. NPS widgets collect customer loyalty sentiment with a standardized score that is suitable for industry comparison. For detailed instructions, refer to the NPS documentation.
  3. Create a Rating widget: In the Sidebar, go to Feedback > Ratings > New Rating. Ratings can be added to any page and incorporate a scale to answer a straightforward customer satisfaction question. For detailed instructions, refer to the Ratings documentation.

Each widget can carry its own availability conditions, such as targeting a specific platform or user segment. The Server applies these conditions to decide which widgets are returned to a given user, so a widget is presented only when its conditions are met.

Integrating Feedback Widgets in SDKs

Displaying a widget with the SDKs is straightforward and requires just a single method call on most platforms. Please note that all functions must be called after initializing the SDK; otherwise, the call will not be executed successfully.

For the per-platform code that fetches and presents a widget, including Web, Android, iOS, Flutter, React Native, Java, and direct API calls, follow the Feedback Widgets section of the Interacting with Users quick access guide:

Showing Surveys Through Journeys

If you would rather control widget timing from the Server without adding presentation code, you can let a Journey display a widget for you. Journeys engagement blocks can show feedback widgets, currently with Survey support only, triggered by the conditions and events you define.

In this no-code approach, you do not call the present methods above. Instead, your SDK enters the content zone, and the Server delivers the survey as part of the Journey when its triggers are met. You can create the survey directly while building the Journey, or reuse one you created in the Feedback section.

Current Limitations

A widget may not become available the instant its conditions are met. The Server can only mark a widget as eligible after it has received the data those conditions depend on, such as the platform or user properties. Because SDKs send most requests through a queue at regular intervals, there can be a short delay between a condition being satisfied and the matching widget being returned to the SDK.

Avoid requesting widgets in a tight loop. Frequent manual fetching increases server load and can lead to performance issues.

Manual Control and Communication

The present and show methods above combine three steps for you: requesting the available widgets, selecting one, and displaying it. For custom client-side logic, most SDKs also expose these steps as separate methods, such as getAvailableFeedbackWidgets to fetch the list and reportFeedbackWidgetManually to submit a result with your own UI. For the exact method names and signatures on your platform, refer to the Feedback Widgets section of your respective SDK documentation.

To understand the SDK-Server communication behind feedback widgets, including why a delay can occur, you can check this article:

Was this page helpful?
Reach out to us for any other questions.
Helpful?

Looking for more Help?