# QA Mode & QA Assistant

## Definitions <a href="#h_01j8evvaw8w0xcj6daf9j5e03r" id="h_01j8evvaw8w0xcj6daf9j5e03r"></a>

**The QA (Quality Assurance) process** enables you to choose the method(s) used to perform the QA of your campaign, which is a mandatory step before the launch.

* **QA mode is a specific phase** which aims to make **your campaign visible** to **you only,** permitting you to visualize the configured changes and perform the QA. Your targeted visitors won’t be able to see the campaign until you take it out of QA mode and formally launch the campaign. It's available in the campaign flow, step "QA & Overview".
* **QA Assistant is a functionality** which helps to QA your campaign during your navigation on your website during the QA, and to identify and understand why some modifications are not visible as planned

To QA your campaign means to check that all changes, targeting, and tracking have been implemented correctly before making the campaign live for your visitors (the audience targeted by your campaign).

## QA mode <a href="#h_01j6ct515zx9py82x31mbhvs0q" id="h_01j6ct515zx9py82x31mbhvs0q"></a>

The QA mode enables you to choose the method(s) used to perform the QA of your campaign.\
**The aim of the QA mode is to make your campaign visible to you only, in order to visualize the configured changes and perform the QA**. Your targeted visitors won’t be able to see the campaign yet.

To access the QA mode, go to the step **QA & Overview** of the campaign flow.

You can target your campaign by URL parameter, by IP and/or by Cookie:

* **Targeting by URL Parameter**
* **Targeting by IP** is the easiest and fastest way to QA your campaign. It enables you to QA your campaign on all devices and browsers at the same time.
* **Targeting by cookie** may be useful if you work in a big company with a shared IP address.

Using this method is safer because when you QA your campaign by IP, your colleagues may be able to see your campaign on their own devices. The cookie method is local, meaning you have to manually add the cookie in your browser (the [***Cookie Editor***](https://chrome.google.com/webstore/detail/cookie-editor/hlkenndednhfkekhgcdicdfddnkalmdm?hl=en) extension can be useful) or [***in your Chrome console***](https://developers.google.com/web/tools/chrome-devtools/storage/cookies). You will be the only one to see the campaign. However, with this method, you will need to repeat the operation for each browser you want to QA.

When you enable at least one parameter, the QA mode turns On. Once you have configured the QA mode, we recommend performing the QA of your campaign using the [**QA Assistant**](/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant.md).

For more info on configuring the IP and/or Cookie parameters, refer to [**How to use the QA mode**](/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant.md).

In any case, once on QA mode, you can QA your campaign 2 different ways:

* [**With the QA Assistant for desktop**](/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant/how-to-use-the-qa-assistant-on-desktop.md) **or** [**mobile**](/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant/how-to-use-the-qa-assistant-on-mobile.md)
* [**With the browser console**](/web-experimentation-and-personalization/qa-step/how-to-use-the-browser-console-to-qa-a-campaign.md)

## QA Assistant <a href="#h_01g9cs4jsvja2e993nj8zmcxcz" id="h_01g9cs4jsvja2e993nj8zmcxcz"></a>

The QA Assistant is an application (based on an iframe) that allows you to QA your campaign without having to open your browser console. It displays the campaigns that are live on the active page, those that are active on the website (other than the page you are viewing) as well as information related to the events configured in the campaign.

Please refer to the following articles to learn how to use the QA Assistant:

* [**on desktop**](/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant/how-to-use-the-qa-assistant-on-desktop.md)
* [**on mobile**](/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant/how-to-use-the-qa-assistant-on-mobile.md)

{% hint style="info" %}
**Good to know 💡**

* The QA Assistant is compatible with the following browsers: Chrome, Firefox, and Safari
* The QA sessions (when the QA Assistant is opened or when the test is in QA mode) are not counted in the report once the test is launched in production without QA mode
  {% endhint %}

The QA Assistant displays three tabs, allowing you to view and control various information on your website/page:

* [The Campaigns tab](#h_01j8ezz53j77rxxkmem16d89k5)
* [The Events tab](#h_01j8ezzfp3jdf2evpsh4jzq2q1)
* [The Transaction tab](#h_01j8ezzksxevhqcdnap9exdy9y)

### **Campaign tab** <a href="#h_01j8ezz53j77rxxkmem16d89k5" id="h_01j8ezz53j77rxxkmem16d89k5"></a>

The **Campaigns** tab is displayed by default and is divided into two different sections:

<img src="/files/kbh9wNZG6UqICUwnvAzt" alt="" width="375">

* **Live campaigns on this page:** the top section displays **all campaigns that are live on the active page** (the campaigns you are assigned to)

From there, you can visualize the variations of your campaigns from the *Variation/ experience Dropdown:*<br>

<figure><img src="/files/cjic86nIKhlOd3kaF3XO" alt="" width="375"><figcaption></figcaption></figure>

* **Live campaigns on this website:** the bottom section displays **all campaigns that are currently live on your website**, regardless of whether you are assigned to them

Each line, which relates to a specific campaign, displays **the campaign type, the campaign name, the campaign ID, and the** [**targeting configuration acceptance status**](/web-experimentation-and-personalization/targeting-step/how-to-set-up-a-campaign-targeting.md)**:** accepted, rejected, pending, etc.

* **Page URLs (Where):** corresponds to the specific URLs where the campaign is supposed to trigger
* **Trigger (How):** corresponds to the specific triggering conditions to trigger the campaign (number of session viewed pages etc.)
* **Segment (Who):** corresponds to the specific segmentation conditions to trigger the campaign (device, emotionsAI segment etc.)
* **Display frequency:** corresponds to the accepted visit frequency to trigger the campaign
* **QA mode:** whether QA mode is enabled on the campaign or not
* **Status:** general status of the campaign on the session, the global result of the previous criteria

On the right of each line, you can see the overall campaign status:

| **Status**                         | **Explanation**                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Accepted**                       | The user matches all of the targeting criteria.                                                                                                                                                                                                                                                                                                                                                                                                                             |
| **Rejected**                       | <p>If one of the targeting criteria is rejected (page, audience, or trigger), the user will be rejected from the whole campaign.</p><p>You can see the targeting details by clicking on the campaign row from the QA Assistant.</p>                                                                                                                                                                                                                                         |
| **QA rejected**                    | The campaign is currently in QA and the user does not match at least one of the QA conditions.                                                                                                                                                                                                                                                                                                                                                                              |
| **Traffic rejected**               | <p>Less than 100% of the traffic is allocated to the campaign and the user is not exposed to it. This status means that the user is being part of “untracked traffic” (visitors who see the original version of your website but whose actions won’t be collected at all).</p><p>The information is stored in the AB Tasty cookie, so to avoid it, you must either clear your cookies or navigate to a new incognito window (and close all previous incognito windows).</p> |
| **Pending**                        | The campaign is configured in AJAX mode and the tag always checks the targeting.                                                                                                                                                                                                                                                                                                                                                                                            |
| **1-visitor 1-test**               | The one visitor one test option is activated on your account and the user has already been exposed to another campaign.                                                                                                                                                                                                                                                                                                                                                     |
| **Missing data**                   | <p>Some information is missing to validate the targeting. This can happen for geolocation or userAgent data, for example.</p><p>You can see the targeting details by clicking on the campaign row from the QA Assistant.</p>                                                                                                                                                                                                                                                |
| **Exposed to another experience**  | The user is rejected from this experience because they have already been exposed to another experience of the same personalization campaign.                                                                                                                                                                                                                                                                                                                                |
| **Timeout loading variation data** | For deferred campaigns, variation data has taken more than 3 seconds to load so tag stop and don't execute the campaign.[ ***More details are here.***](https://developers.abtasty.com/docs/tag/tag-campaigns-types#campaign-status)                                                                                                                                                                                                                                        |

### **Events tab** <a href="#h_01j8ezzfp3jdf2evpsh4jzq2q1" id="h_01j8ezzfp3jdf2evpsh4jzq2q1"></a>

The Events tab enables you to perform QA in real-time and to verify that **actions and custom trackings have been correctly implemented on your campaign**.\
The following tracking types can be verified with the QA Assistant:

* [Campaign Action tracking (XAT) and Account Action trackings (AAT)](/assets-library/trackers-page/action-trackers/how-to-create-and-manage-action-trackers.md)
* [Custom tracking](/assets-library/trackers-page/how-to-create-a-custom-tracker-via-the-datalayer.md)
* [Transaction tracking](broken://pages/Vcf2nmWwkzOAg642d5hu)
* [Element visible tracking](/web-experimentation-and-personalization/editors-and-widget/list-of-widgets/ab-tasty-prebuilt-widgets/element-visible-tracking-widget.md)
* [Dwell time tracking](/web-experimentation-and-personalization/editors-and-widget/list-of-widgets/ab-tasty-prebuilt-widgets/dwell-time-tracking-widget.md)
* [Scroll rate tracking](/web-experimentation-and-personalization/editors-and-widget/list-of-widgets/ab-tasty-prebuilt-widgets/scroll-rate-tracking-widget.md)
* [Iframe click tracking](/web-experimentation-and-personalization/editors-and-widget/list-of-widgets/ab-tasty-prebuilt-widgets/iframe-widget.md)

**Page tracking is not compatible with the QA Assistant** - your page goals won’t appear in the Events tab but will be displayed in the reporting interface. As soon as the AB Tasty tag is installed on a page, pageviews are automatically collected and stored, even without a Page Tracker. Pageviews data is retroactive. That's why you can't QA a Page Tracker with the QA Assistant.

{% hint style="warning" %}
**Heads up ⚡️**

To perform the QA, you must be on a page included in the targeting of your campaign or on a page where tracking has been configured.
{% endhint %}

To do so, click the element of the page where action tracking has been configured. The action name will automatically appear in the Events section, with the following information:

* Event name
* Event type (action or custom tracking)
* Campaign name and ID where the event will be recorded
* Variation name and ID where the event will be recorded
* Time at which the event was triggered\
  When clicking on the event name, you can see the corresponding element highlighted on the web page.

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

### **Transaction tab** <a href="#h_01j8ezzksxevhqcdnap9exdy9y" id="h_01j8ezzksxevhqcdnap9exdy9y"></a>

The QA Assistant allows you to QA both tracking and transactions. Transaction data can be found in the dedicated tab:

<img src="/files/OcEYC9zrQmsvvYK1MhcT" alt="" width="375">

You can place a fake order on your website and access the confirmation page. If the transaction tag is correctly installed, you should see the transaction data accordingly. If nothing is sent to the QA Assistant, it means that data is not collected and that the transaction tag has not been implemented correctly. If that is the case, refer to [***How to implement the transaction tag?***](broken://pages/Vcf2nmWwkzOAg642d5hu) or to the [***Transaction tag FAQ***.](/help-center/faq/faq-about-the-transaction-tag.md)

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

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

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/U0MOST27mXt1YQj8tKHl" %}
[\[Troubleshooting\] QA Assistant doesn’t load on my website](/help-center/troubleshooting/troubleshooting-qa-assistant-doesnt-load-on-my-website.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/VCyEKMted2wlKxv4osLD" %}
[\[Troubleshooting\] My modifications are not displayed](/help-center/troubleshooting/troubleshooting-my-modifications-are-not-displayed.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/5kj45Xp89MCgZFfbx2ns" %}
[\[Troubleshooting\] How to Force the Display of a Variation?](/help-center/troubleshooting/troubleshooting-how-to-force-the-display-of-a-variation.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/kmCsnqwjenENNx3tGXAL" %}
[\[Troubleshooting\] I see the original version very briefly before I see the variation (flickering)](/help-center/troubleshooting/troubleshooting-i-see-the-original-version-very-briefly-before-i-see-the-variation-flickering.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/9tuCoLTkb2GEBk5ZKYk5" %}
[\[Troubleshooting\] Checking why you are not assigned to a campaign or variation](/help-center/troubleshooting/troubleshooting-checking-why-you-are-not-assigned-to-a-campaign-or-variation.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/qpTyf49qG8bg4OijA889" %}
[\[Troubleshooting\] Checking if a page is assigned to a campaign](/help-center/troubleshooting/troubleshooting-checking-if-a-page-is-assigned-to-a-campaign.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/1mZRn85gum6H26OjmgBJ" %}
[\[Troubleshooting\] I deactivated a variation in the traffic allocation step but still see it online](/help-center/troubleshooting/troubleshooting-i-deactivated-a-variation-in-the-traffic-allocation-step-but-still-see-it-online.md)
{% endcontent-ref %}

{% content-ref url="/spaces/hZIDRsh66I8ikipjy42H/pages/tDRVD2K2MxahDbHaMsol" %}
[\[Troubleshooting\] How to avoid being assigned to a test – the optout method](/help-center/troubleshooting/troubleshooting-how-to-avoid-being-assigned-to-a-test-the-optout-method.md)
{% endcontent-ref %}


---

# 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/web-experimentation-and-personalization/qa-step/qa-mode--qa-assistant.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.
