Category: Voice of customer
This integration is only available for Web projects
What to expect
This integration will allow you to segment Qualtrics responders in Contentsquare based on their interactions and responses with Qualtrics feedbacks. Furthermore, you can further investigate Qualtrics user responses by exploring their session replay links attached as custom attributes.
What we collect
Dynamic Variables
Key | Value | Data Type |
FB_QT_Feedback Displayed
|
Survey ID : {surveyID}
|
Text
|
FB_QT_Feedback Accepted
|
Survey ID : {surveyID} |
Text
|
FB_QT_Feedback Submitted
|
Survey ID : {surveyID} |
Text
|
FB_QT_Feedback Response ID
|
{responseID} |
Text
|
FB_QT_NPS Rating - {QuestionID} - {SurveyID} - {Question}
|
{rating} |
Number
|
FB_QT_Star Rating - {QuestionID} - {SurveyID} - {SubQuestion}
|
{starRating} |
Number
|
FB_QT_{QuestionID} - {SurveyID}
|
{AnswerID} |
Text
|
FB_QT_Feedback Completed
|
Survey ID :{surveyID} |
Text
|
Artificial Pageviews
In order to have artificial pageviews triggered for these options below, you will need to ask your Contentsquare CSM or Support to enable a feature which will allow these to be sent. Note that these are specifically for usage in the Journey Analysis module of the Contentsquare application.
Trigger | Query String |
Feedback Accepted
|
cs_qualtrics=feedback_accepted_{surveyID}
|
Feedback Submitted
|
cs_qualtrics=feedback_submitted_{surveyID}
|
Feedback Completed |
cs_qualtrics=feedback_completed_{surveyID}
|
What we send
Session replay
To properly make use of the replay feature you need to either have 100% collection ratio or ETR (Event Triggered replay), please talk to your CSM about this.
Limitations
General
Due to WebKit's official policy known as ITP (Intelligent Tracking Prevention) and Firefox's Enhanced Tracking Prevention, certain browsers block 3rd party cookies in iframes by default. If your survey appears in an iframe then by default we cannot support the following browsers or browser modes:
Safari 12+
Chrome 83+ (only in Incognito)
Firefox 67+ (only in private browsing mode)
The solution is to enable iFrames Tracking for Zoning in the Contentsquare project settings, talk to your CSM or Support about this.
Note that if your survey is in a window popup or a new tab then the above does not apply.
Qualtrics
If you are using the new "Simple" layout for your surveys then it will not support sending ratings and other question/answer data to Contentsquare. All other features are supported. If you want to send all of this data to Contentsquare then you will need to revert to using one of the other layout options such as "Flat" or "Modern". This is a Qualtrics limitation.
Also if you switch to the Simple Layout at any point in time then you will need to rename the Embedded Data item in the Survey flow to be: __js_ContentsquareReplayLink
Implementation
Implementation Steps
Step 1
Please go to the section How to request an integration to see the instructions to enable this integration. You can then return here once completed.
Please make sure to request that the qualtrics.com domain be whitelisted on your account by your CSM.
If you have already completed the step above then continue below.
Step 2
Setting Embedded Data
Depending on whether you are using the new Intercept configuration flow or the old, please see the relevant below.
For the old flow:
Setting The Contentsquare Tag
<script> Qualtrics.SurveyEngine.addOnReady(function () { (function () { if (!window.CS_CONF){ window._cs_integration_qualtrics_csid = "${e://Field/CSID}"; var mt = document.createElement("script"); mt.type = "text/javascript"; mt.async = true; mt.src = "https://t.contentsquare.net/uxa/REPLACE_WITH_TAG_ID.js"; document.getElementsByTagName("head")[0].appendChild(mt); } })(); }); </script>
After adding the code, it should look something like this:
Setting The Contentsquare Replay Link
Go to the Survey flow:
Sending Custom Dynamic Variables From The Survey
var csKey
var csValue
window._uxa = window._uxa || []; _uxa.push([ "afterPageView", function (context) { if (typeof window.CustomEvent === "function") { var csKey = ""; var csValue = ""; if (csKey && csValue) { var evt = new window.CustomEvent("Contentsquare_QT_Integration_Dispatcher", { detail: { key: csKey, value: csValue, }, }); window.dispatchEvent(evt); } } }, ]);
You can then open the Javascript section of the relevant questions or questions and paste the code into there:
Please make sure you add it into the Qualtrics.SurveyEngine.addOnReady function.
It should then look something like this but with your own custom Key and Value strings. The Keys and Values can be dynamically generated using code too, as shown in the example of the Value below. We are taking the Survey ID dynamically and setting it as the Value (Page.runtime.ED.SurveyID). Note that we only accept string values in this. The max length of the Key can be 50 chars and the Value can be 255 chars.
If you are using the new "Simple" layout surveys then to get the Survey ID you will need to use this (window.q.appData.setup.survey.id) instead of what is shown above.
Please note that we have a limitation of 50 dynamic variables per page view so if you are already sending close to that then you may not receive additional ones you create. Best to check how many are being sent from your entire survey before adding more to it.
Verifying it works
You can use the chrome extension to check the results are sent to CS