---
title: Surveys - Android
description: How to implement Surveys in your Android app
lastUpdated: 09 October 2025
source_url:
  html: https://docs.contentsquare.com/en/csq-sdk-android/experience-analytics/surveys/
  md: https://docs.contentsquare.com/en/csq-sdk-android/experience-analytics/surveys/index.md
---

Note

Surveys are currently in Beta. If you are interested, reach out to your Contentsquare contact.

This page explains how to integrate, configure, and validate surveys using the Contentsquare SDK.

Contentsquare mobile surveys enable collection of user feedback through configurable surveys displayed in mobile applications. These surveys capture the voice of your customers, providing valuable insights into how users perceive your app. By analyzing survey responses, you can make informed decisions for site improvements or identify issues you may not have been aware of.

## Before you begin

In order to enable Surveys in your app and get the most stable version, it is required to [install](../) or upgrade the SDK to its latest version.

If you install the SDK for the first time, these steps are required:

* [Install the SDK](../#install-the-sdk)
* [Start the SDK](../#start-the-sdk)
* [Get user consent](../#get-user-consent)

## Trigger surveys

Triggering surveys allows for a clear separation between survey management and app development:

* Marketing and Product Teams use the Contentsquare platform to create surveys and decide when they should appear by assigning them to a specific trigger (for example, `purchase-complete`).
* Developers place these triggers in the application's code at key moments in the user journey.

This allows your business teams to launch, update, and manage survey campaigns independently, without requiring a new app release.

### Step 1: Define and implement triggers

Your mobile app can trigger a survey by referencing a predefined trigger name tied to a specific event or behavior.

```kotlin
CSQ.triggerSurvey(triggerName: String)
```

Triggers act as flexible placeholders and are not bound to individual surveys—allowing your business team to assign or update surveys later without requiring code changes.

For example, if you want to collect Net Promoter Score (NPS) feedback after a user completes a purchase:

1. Determine the precise moments in the user journey where you want to collect feedback and define the trigger name, for example `purchase-complete`.

2. Implement this trigger right after the purchase completes:

   ```kotlin
   CSQ.triggerSurvey("purchase-complete")
   ```

When this code is executed, it signals that the `purchase-complete` event has occurred, which in turn displays the corresponding survey to the user.

Define triggers early

Implement as many relevant survey triggers as possible during the initial setup. This reduces the need for future app updates if new surveys are added later. Triggers can safely exist in the code even if no survey is currently linked to them—these events will be ignored until a matching survey is configured.

### Step 2: Set up your first test survey

To validate the integration, start by creating a test survey in the test environment of your application.

* Create and activate a test survey on the Surveys platform by following [these steps ↗](https://support.contentsquare.com/hc/en-us/articles/37271718906513-How-to-create-a-survey).
* When creating the survey, assign a test survey trigger — this is the trigger you'll implement in your application.

### Step 3: Validate the integration

Validate the integration on the test environment of your application.

1. Implement the test survey trigger in your application code.
2. Launch the app and navigate as an end user to simulate the behavior or event associated with the trigger.
3. Confirm that the survey UI appears as expected.
4. After successful validation, deactivate the test survey.

## Key considerations

* Surveys can only be triggered and displayed when the device has an active internet connection
* Only one survey can be displayed for a given trigger. If multiple surveys are configured for the same trigger, the SDK will display the one with the most specific matching criteria. If the criteria are identical, the most recently created survey will be shown

## Collected data

The SDK collects the following data related to surveys:

* Survey interaction events (for example, impressions, completion, or close actions)
* Targeting parameters used for displaying surveys, such as the targeting percentage
* Survey responses
