# Piano Analytics

Piano Analytics is a complete analytics tool that allows companies to collect and store data while being GDPR-compliant.

The Piano Analytics integration allows you to send the AB Tasty campaign data to Piano Analytics.

## Requirements <a href="#h_01jcr5tc4kxy6ec7ytze1q099e" id="h_01jcr5tc4kxy6ec7ytze1q099e"></a>

You must have the Piano analytics SDK installed on your website. Please refer to t[his Piano Analytics documentation](https://developers.atinternet-solutions.com/piano-analytics/data-collection/sdks/javascript).

Once installed, and if you enter “pa” inside your browser console, you must have this:

![](/files/J6JjjN926WzXYn04KEfB)

If it is not the case, please contact the Piano Analytics support.

## How Campaign Data Is Sent <a href="#h_01h95qw1j65gcpe2kzyc2dt2qt" id="h_01h95qw1j65gcpe2kzyc2dt2qt"></a>

AB Tasty campaign data are sent as a standard event with event properties:

* The standard event name is “**mv\_test.display**”
* The standard event property **mv\_test** contains the **Campaign ID** and **Campaign Name** formatted as **\[campaign\_id] campaign\_name**
* The standard event property **mv\_creation** contains the **Variation ID** and **Variation Name** formatted as **\[variation\_id] variation\_name**
* The standard event property **mv\_wave** is inputted when setting up the[ integration](#h_01gpkg5w4xnkgjg6h7bj5sfw5r)

The event is sent using the pa.sendEvent() method and the mv\_test.display parameter. For more information, refer to [this documentation](https://developers.atinternet-solutions.com/piano-analytics/data-collection/how-to-send-events/standard-events#mv-testing).

## How to Set up the Integration <a href="#h_01gpkg5w4xnkgjg6h7bj5sfw5r" id="h_01gpkg5w4xnkgjg6h7bj5sfw5r"></a>

![](/files/cLfDBavNGHmUbMwGq4zj)

1. Access **Integrations > Integration Hub**.
2. Search for and select **Piano Analytics**.
3. Click **Setup connector.**
4. Give a name to your connector so you can easily retrieve it.
5. Input the desired **wave** (value should be a positive integer e.g. 2) to send the data to and click **Connect**.
6. \[Optional] Check the box to automatically add the connector to your future campaigns.
7. Click **Save and create connector.**

If you have checked the box, the connector will be automatically added to the Advanced step of your future campaigns. However, it is not applied retroactively to previously created campaigns.

If you left the box unchecked (default behavior), your connector won't be added automatically. You can still decide to send campaign data to your connector by selecting it from the *Advanced options* step of your campaign. More information on how to link a campaign is can be found in the [Advanced Options Step ](/web-experimentation-and-personalization/campaign-flow-advanced-options.md)article.

You can also modify this behavior from the Integration hub, by editing your connector configuration (check or uncheck box).

## Checking in your Piano Analytics Dashboard <a href="#h_01jcr617pecc99n4wef8158wfb" id="h_01jcr617pecc99n4wef8158wfb"></a>

Once you have set up the Piano Analytics integration and activated it in an AB Tasty campaign, you may want to verify that data is sent correctly to your Piano Analytics property.

### In the browser <a href="#h_01jcr617pebjsnf9bhbbggw2qg" id="h_01jcr617pebjsnf9bhbbggw2qg"></a>

To QA the integration, you must be affected to a campaign where the integration has been configured.

1. Open the console and click the **Network** tab
2. In the search bar, enter your **Piano Analytics collect domain** (the one you used to set up the integration).
3. Open the payload tab in order to check all the data sent into Piano

### In your Piano Analytics dashboard <a href="#h_01jcr6qvresy5xvqavjz82v9bh" id="h_01jcr6qvresy5xvqavjz82v9bh"></a>

In the Piano Analytics dashboard, go to **Content** > **MV Testing**. In Real time, you can see all data sent by AB Tasty.

## Implementing EmotionsAI Audience <a href="#your_anchor_name" id="your_anchor_name"></a>

AB Tasty gives you the possibility to export the EmotionsAI audience of the visitors by the time we push the campaign hit. Thanks to this information, you will be able to segment all visitors exposed to an AB Tasty campaign.

This is currently part of an EA program. Please contact your CSM to benefit from it.

### Requirements <a href="#h_01jcr1x1gmhe81yjens0b7ptt2" id="h_01jcr1x1gmhe81yjens0b7ptt2"></a>

#### In AB tasty <a href="#h_01jcr1t2hpyve8zzgcv7jhjmv1" id="h_01jcr1t2hpyve8zzgcv7jhjmv1"></a>

You must activate EmotionsAI from your AB tasty account [here](https://app2.abtasty.com/settings/emotion-ai).

Without this activation, we are not able to send the EmotionsAI audience to Piano Analytics. For more information on how to activate EmotionsAI, please contact your CSM.

#### In the Piano Analytics dashboard <a href="#h_01jcr1t2hpfanpbsr8mrk160yh" id="h_01jcr1t2hpfanpbsr8mrk160yh"></a>

We want to send the EmotionsAI audience at the same time as the campaign hit, but it’s linked to a user.

That’s why you need to create a custom dimension as a user to retrieve this information.

1. Click **Admin** and choose **Settings** Tab
2. Click **Data management**
3. Create a new property
4. Complete the following information:\
   **Display name**: Enter a unique name for the dimension.\
   You can't use hyphens in the name, but you can use underscores and spaces instead. We recommend entering “Audience Emotion AI”\
   **Description**: Enter a memorable description for the custom dimension.\
   **Property key**: Please enter “audience\_emotion\_ai”\
   **Categories**: Choose User / Events / MV testing
5. Click **Save**.

![](/files/WVTWDlUgWXVOsudG4CJn)

If your custom dimension **is not set correctly,** even if we’re sending the EmotionsAI audience, you won’t be able to retrieve it. **We’re sending this information as a user property.**

### Sending data <a href="#h_01jcr5htyq4kycka0qfmk3105y" id="h_01jcr5htyq4kycka0qfmk3105y"></a>

Sometimes, the EmotionsAI audience is not set before the sending of the AB Tasty campaign hit. That’s why, even if you have activated the EmotionsAI audience, the value will be empty. Indeed, when a new visitor is coming to your website, the campaign hit is sent once AB Tasty is triggered; while 30 seconds are necessary to detect to which EmotionsAI audience the visitor belongs.

Here’s an example of the payload sent into Piano Analytics with the EmotionsAI audience. The value is available inside up.audience\_emotion\_ai.

![](/files/PDpjhCZAPmbPzxuXeWmf)

### Analysis inside Piano Dashboard <a href="#h_01jcr7ek2mgzz1a62khymsqf5h" id="h_01jcr7ek2mgzz1a62khymsqf5h"></a>

In the Piano Analytics dashboard, go to **Content** > **Custom Properties**. In Real time, you can generate different reports based on the custom property you have created before.

<figure><img src="https://support.abtasty.com/hc/article_attachments/16932829934748" alt=""><figcaption></figcaption></figure>

You must update the AB Tasty tag to make your changes live.

Please note that the setup of integration in the account settings is not applied retroactively to previously created campaigns. They only apply to newly created campaigns.

### Troubleshooting area <a href="#h_01hndea817pjn87j1dn0m63w4r" id="h_01hndea817pjn87j1dn0m63w4r"></a>

In case you need support, follow the instructions given in the articles below:

💡 [There are differences in data between AB Tasty and my analytics](/help-center/troubleshooting/troubleshooting-there-are-differences-in-data-between-ab-tasty-and-my-analytics.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.abtasty.com/integrations/push-integrations/piano-analytics.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
