Is there a way to make quota counts increase by a text entry? | XM Community
Skip to main content

I'm building a conference registration where one survey can register multiple people in a group. I have only been able to increase the quota count by one since it's only one survey being submitted. I have a text entry question to determine the registration group count. Is there a way to increase quota counts with embedded data or other logic?

Based on this response from 2017, it doesn't appear possible to increment a quota by more than 1 per response:
https://community.qualtrics.com/XMcommunity/discussion/122/how-can-i-have-a-quota-increase-by-more-than-one-per-responseIf you don't want to write a web service, you could work around this by using a dummy contact list.

  1. Create a contact list with one member using any dummy identifier for email or external data reference (e.g. email=1@1.com)

  2. Add another data field called something like seatsAvailable and set that to the total number of seats available at your event.

  3. Add an Embedded Data element at the very beginning of your survey flow and define your dummy identifier (userEmail = 1@1.com) and seatsAvailable (value to be set by panel or URL)

  4. Add an Authenticator based on your contact list, and set it to pre-fill your identifier and also pull in seatsAvailable

  5. During your survey, you can compare your text entry field to seatsAvailable to ensure that the requested number of seats are available and then subtract them from seatsAvailable.

  6. In the post-survey options, add a contact list trigger to update your existing contact with the new value of seatsAvailable.


Hi all,
I follow up on this topic because I had the same question.
I tried the solution proposed above by mmoore with no results (it did not update the contact list at the end).
Given that I am not able to implement a web service, I came out with a new possible and limited solution.
In my case the question in which I ask the number of participants has just 10 levels (1 participant - 10 participants maximum per form).
What I did?

  1. I created 10 quotas (I left 100 as maximum number): one per level;

  2. I created an embedded value "AvailableSeats" and declared with the number of participants (in total);

  3. I created an embedded value "RemainingSeats" and I did not assigned a value;

  4. I added a JavaScript in the first question where I put the code at the end of this post;

  5. It loads the available seats; the quotas that count each time a respondent select a level; calculate the number of seat that are already booked; calculate the remaining ones and store the value in the Embedded Data "RemainingSeats";

  6. To be able to select the right amount of seats, I added a Display Logic per each level of the question (e.g., the button "1" will be displayed if "RemainingSeats" will be greater than value "1").

Qualtrics.SurveyEngine.addOnload(function()
{
/*Place your JavaScript here to run when the page loads*/
});

Qualtrics.SurveyEngine.addOnReady(function() {
/*Place your JavaScript here to run when the page is fully displayed*/
var AvailableSeats = "${e://Field/AvailableSeats}";
var PT1 = "${qo://QO_9RiMIk7Ae0TVnmH/QuotaCount}";
    var PT2 = "${qo://QO_cVAMOjfJtIPdhQJ/QuotaCount}";
var PT3 = "${qo://QO_BRt4PPzRIpnnGeL/QuotaCount}";
var PT4 = "${qo://QO_KzAdTu1091C6Asy/QuotaCount}";
var PT5 = "${qo://QO_jIB06LbgMLsFpgc/QuotaCount}";
var PT6 = "${qo://QO_JKrvp4PjOcvKq4O/QuotaCount}";
var PT7 = "${qo://QO_FNFnoE1oDsWefIU/QuotaCount}"
var PT8 = "${qo://QO_IgPV5wG63yRGyKK/QuotaCount}";
var PT9 = "${qo://QO_FLh0ldbNpmORx5d/QuotaCount}";
var PT10 = "${qo://QO_3fd0FBDKvxjJkCp/QuotaCount}";
var OccupSeats = 1*PT1 + 2*PT2 + 3*PT3 + 4*PT4 + 5*PT5 + 6*PT6 + 7*PT7 + 8*PT8 + 9*PT9 + 10*PT10;
var RemainingSeats = AvailableSeats - OccupSeats;
Qualtrics.SurveyEngine.setEmbeddedData("RemainingSeats", RemainingSeats);
});

Qualtrics.SurveyEngine.addOnUnload(function()
{
/*Place your JavaScript here to run when the page is unloaded*/
});


Leave a Reply