How to Identify Your Most Valuable Feedback With Qualaroo + Google Analytics


Google Analytics & Qualaroo integration can help you create survey reports based on the revenue generated by the respondents.


Your verified customers can provide the most valuable feedback so you can implement major UX upgrades and optimization operations.



Benefits of identifying your most valuable feedback can help you:

  • Understand which UX changes can impact your revenue the most

  • Improve website performance by making improvements based on the responses


Below is a Google Analytics report using Qualaroo data with responses sorted based on those responders’ revenue:


Preview of a Survey Report 

Let's take a look at the workflow:




Here's How to Pull This Data From Google Analytics:


Let’s suppose we want to improve the shopping cart experience of a sample site because revenue is easy to track with purchases.


Step 1: Create a Qualaroo Survey

Step 2: Create a User view in Google Analytics

Step 3: Use E-commerce Settings to track revenue (optional)

Step 4: Set up a Custom Dimension for Qualaroo Responses

Step 5: Add some necessary Qualaroo API code

Step 6: Create GTM Triggers

Step 7: Create GTM Tags

Step 8: Data Layer Variables

Step 9: Give your developer what they need (only if you aren’t already tracking purchases or user IDs)

Step 10: Create a Custom Report in Google Analytics


 Step 1: Create a new Qualaroo survey

  • Sign in to Qualaroo and create a new survey with the question, “How would your experience have been better today?” 

  • Select the single answer or multiple choice option type with the relevant answers.


Create a New Survey


 Step 2 - Create a User view in Google Analytics


NOTE: Skip this step if you already have a User view in your Google Analytics property.


  • Click Admin on the sidebar of Google Analytics. 

  • Click “Create View” and name it “Users View.”

  • Make sure to turn on the User-ID Reports

  • Accept the terms of service notices and make sure your developer follows them when passing the ID to your analytics.


User-ID View

 Step 3 - Use E-commerce Settings to track revenue (optional)


NOTE: Skip if E-commerce is already turned on for your User view or if you track revenue some other way.


In the admin section of your Google Analytics account, 

  • Click the E-commerce Settings.



Learn more about collecting and analyzing purchase data with Google Analytics.


NOTE: The idea here is not that your site must be an E-commerce site, but rather, by connecting revenue to UX research, your team will be able to demonstrate ROI and make better decisions based on the feedback you collect.


Ecommerce Settings


  • Click to enable the settings and save.

Enable Settings


 Step 4 - Set up a Custom Dimension for Qualaroo Responses


From your Google Analytics admin page, 


  • Go to the property column and click on Custom Definitions > Custom Dimensions.


Custom Dimensions


  • Click New Custom Dimension, call it Feedback Given, and set the Scope to User.


Edit Custom Dimension


 Step 5 - Add some necessary Qualaroo API code


When a response is submitted, sending our response data to Google Analytics will require pushing to the Data Layer via a Qualaroo event handler.


In a separate tag that will fire after your Qualaroo snippet or just after your snippet in the same GTM tag, you can add the following:


_kiq.push(['eventHandler', 'submit', function(answers_array, nudge_id, question_id){
    if (nudge_id != 52 && question_id != 121) return; // Bail if this isn't the question
      'event': 'qualarooResponse',
      'qualResponse': 'Survey #' + nudge_id + ' - ' + answers_array[0].question + ' ' + answers_array[0].answer


For simplicity of this example, this code will go in the same custom HTML tag where the Qualaroo snippet was:


Qualaroo HTML Code


What is the code doing?


When a user submits a response, we’ll check that the survey is the one we want to track. Furthermore, we have also added a check for the question ID. We are doing that because a user scope custom dimension (like we’ve set up in GA) will overwrite the value we’ve saved for the user. 


NOTE: We need to be careful not to overwrite responses saved at the user level in GA, especially if you run multiple surveys simultaneously.


If our survey ID and question ID match, the above code pushes an event with a variable called qualResponse. In the next step, we’ll set up a trigger for this event so that this variable gets picked up for sending to GA.


 Step 6 - Create GTM Triggers


In Google Tag Manager

  • Click Triggers > “New” button. 

  • Fill in the event name.


Create a new Trigger


While we’re here, let’s make another one that we will need (skip this if you’re already tracking purchases or the value of customers). 


  • Click “New” again and add this.


New Trigger


 Step 7 - Create GTM Tags


We will need some new tags for the events above (only one if you’re already handling purchase/value-related events!).


  • Go to the Tags tab and click “New.”

  • Set the type as a Google Analytics tag, and fill in with the following:


Tag Configuration_1

Tag Configuration_2

Tag Configuration_3


  • Don’t forget to add your trigger at the bottom!


  • If you set up the purchase event in the previous step, add another one called Transactions and set the trigger.


New Trigger_ Transactions


 Step 8 - Data Layer Variables


You’ll notice we’re using Data Layer variables in this example. 


  • Let’s set them up by clicking on the “Variables” tab. 

  • In the User-Defined Variables section, click “New.” 

  • We need to create one called Response, and the other called User ID (if you don’t have the user ID variable already).


Variable Configuration_1

Variable Configuration_2


 Step 9 - Give your developer what they need (only if you aren’t already tracking purchases or user IDs)


For the transaction element to work in the way we’ve set up, we need to push purchase events to the Data Layer. 


You can do this with the following snippet code:


Just test that the values being set are what you expect:


   'event': 'purchase',
   'transactionId': '1233455667',
   'transactionAffiliation': 'Acme Clothing',
   'transactionTotal': 44.55,
   'transactionTax': 1.29,
   'transactionShipping': 5,
   'transactionProducts': [{
     'sku': 'A930B32',
     'name': 'Best Shirt',
     'category': 'Apparel',
     'price': 44.55,
     'quantity': 1


NOTE: The above will need to be run once the transaction has already been completed.


For User ID, here’s some code to run IF the User ID is known:


dataLayer.push({'userId': '939291'});


 Step 10 - Create a Custom Report in Google Analytics


Now, in the final step,


  • Go back to Google Analytics, 

  • Navigate to Customization > Custom Reports > New Custom Report in the sidebar. (You’ll probably need special permissions to do this, so if you don’t have edit abilities, get with someone who can help you out).


We called our report “Value of feedback received.” It looks like this:


Custom Reports

And with that nifty report, we can sort my responses by revenue per user and see how many users have answered that way.


From our test, you’ll see that the number of responses definitely does not align with the value of the response given to the store. 


In this case, the store must focus on “Improvement 5.” 


Identify Feedback




It is an elementary example demonstrating how to integrate Google Analytics and Qualaroo to make better decisions from survey insights. It also gets your brain firing for other possibilities for your company or use case.


For example, what if Lifetime Value was a custom metric in your GA account which you could use to track the change of LTV before and after a particular survey was run and changes implemented? In addition to the above, that could bring new ROI capabilities for your UX research efforts to show strong correlations between research and improved company KPIs.


If you have a topic you’d like us to write about, or need anything at all, reach out to us at!

© 2005 - 2024 ProProfs