---
title: Privacy - Flutter (classic)
description: Learn how Contentsquare deals with Personal Data and related APIs
lastUpdated: 07 April 2026
source_url:
  html: https://docs.contentsquare.com/en/flutter/privacy/
  md: https://docs.contentsquare.com/en/flutter/privacy/index.md
---

> Documentation index: https://docs.contentsquare.com/llms.txt
> Use this file to discover all available pages before exploring further.

The latest CSQ SDK is here! Learn how to [upgrade your app](https://docs.contentsquare.com/en/csq-sdk-flutter/experience-analytics/upgrade-from-cs-sdk/).

The Contentsquare Flutter Bridge and SDKs are compliant with the Play Store and App Store Privacy guidelines and with the EU General Data Protection Regulation (GDPR).

Refer to our [Privacy Center ↗](https://contentsquare.com/privacy-center/) and [Privacy Policy ↗](https://contentsquare.com/privacy-center/privacy-policy/) for further information.

## Handling User Consent

While Contentsquare only collects usage data on your app, we will treat every new user as opted-out by default. To start tracking, the Opt-in API must be called.

Note

If, for any reason, you believe that securing user consent may not be necessary for your app, address this concern during the implementation process with your main contact.

## Opt-in

Use the Opt-in API to get user consent. Calling this API will generate a user ID and initiate tracking.

```dart
Contentsquare().optIn();
```

## Opt-Out

Permanently breaking the link and stopping all data collection.

When this API is called, tracking stops immediately, all settings are reset (session number, page number, user ID...) and all files related to Contentsquare tracking are deleted. Contentsquare will never track and collect any data from the user's phone unless the Opt-in API is called again.

```dart
Contentsquare().optOut();
```

## Forget me

Deprecated

This API is deprecated as of plugin version 3.8.0. To achieve the same effect use Opt-out API to delete all files and settings including the user ID, and call Opt-in API on next app launch if tracking needs to resume.

```dart
Contentsquare().forgetMe();
```

## Give me my data

We allow the client to provide to their users their Contentsquare user ID.

This ID is a non binding identifier which can be used to make a data request to Contentsquare. You are able to get an ID only if the user has not Opted-out.

```dart
final userId = await Contentsquare().getUserId();
```

## Stop / Resume Tracking

Although we do not gather any humanly readable text from the user's screens, we understand that there may be some areas that you want to completely exclude from tracking. For this reason, we also support stopping and resuming the complete tracking mechanism.

Tracking will automatically resume if the app is killed and restarted.

```dart
Contentsquare().stopTracking();


Contentsquare().resumeTracking();
```
