Quotas

Control participant distribution by setting minimum targets for screening question answers.

Quotas let you control how many participants you need for specific screening question answers. Without quotas, Terac fills participants on a first-come basis. With quotas, recruitment continues until each target is met.

Quotas reference a screening question by its key.

Quotas require screening questions. The API returns a BAD_REQUEST error if you provide quotas without screening questions.

Fields

FieldTypeDescription
screening_questionstringScreening question key to quota on.
targetsarrayOne or more value/count pairs.
targets[].valuestringThe screening question answer text.
targets[].countintegerMinimum number of participants needed for this value.

The sum of quota counts does not need to equal num_participants. Quotas are minimums -- recruitment stops when both conditions are true: every quota target is met, and num_participants is reached.

Example

You want 60 participants with a minimum split by experience level.

{
  "num_participants": 60,
  "screening_questions": [
    {
      "key": "code_reviews",
      "text": "How many code reviews do you perform per week?",
      "pick": "one",
      "answers": [
        { "text": "5 or more", "qualify_logic": "must_one_of" },
        { "text": "2-4", "qualify_logic": "may" },
        { "text": "0-1", "qualify_logic": "reject" }
      ]
    }
  ],
  "quotas": [
    {
      "screening_question": "code_reviews",
      "targets": [
        { "value": "5 or more", "count": 30 },
        { "value": "2-4", "count": 20 }
      ]
    }
  ]
}

Recruitment continues until you have at least 30 who answered "5 or more", at least 20 who answered "2-4", and 60 total. The remaining 10 can have either qualifying answer.

On this page