Embedding Voxpopme in Sawtooth

Voxpopme Help Team UK -

This article gives a simple 5 step guide on how to embed Voxpopme into the Sawtooth platform.

Step 1: Voxpopme Project creation

All new projects require a project to be created through the Voxpopme Portal. Please see our document How to set up your Embed project in the Portal if you would like to complete this step first or keep reading if you have been sent the Javascript already by your Voxpopme Project Manager.

Step 2: Insert Voxpopme embed code into your survey

Now armed with your Voxpopme Project ID and Sawtooth survey you are ready to incorporate the Voxpopme embed code. The embed code has been designed for easy integration and requires only slight modification once embedded.

First, create your video question and add the following html to the body of the question (note this is a mixture of html and JavaScript so should not be added as custom JavaScript) -

<div class="vpm-capture-widget"></div>

Next, you will need to add in the Javascript embed code. Copy the embed code below -

<input name="M1_NewVar" id="M1_NewVar" type="hidden">

<div><input type="checkbox" id="NewVar" onclick="check(this)"/></div>

var vpm_widget_config = {
project_id: "[Project_ID]",
additional_data: {
'Username':'[% transid %]',
'Age': '[% S1 %]',
"Gender": "[% S2 %]",
"Dog_Owner": "[% DogQuota %]",
"Cat_Owner": "[% CatQuota %]"
settings: {
locale: "[Language]"
disable_next_button: function() {
enable_next_button: function() {
!function(a,b,c,d){function e(){var a=b.createElement(c);a.type="text/javascript",a.async=!0,a.src=d;var e=b.getElementsByTagName(c)[0];e.parentNode.insertBefore(a,e)}a.attachEvent?a.attachEvent("onload",e):a.addEventListener("load",e,!1)}(window,document,"script","https://capture.voxpopme.net/main.js");

document.addEventListener("DOMContentLoaded", function(event) {


function check(cb) {
if(cb.checked) {$('#next_button').show(); document.getElementById('M1_NewVar').value = 1;}
else {$('#next_button').hide(); document.getElementById('M1_NewVar').value = 0;}

Thank you for your patience, as the video recorder may take some time to load. If you are having technical difficulties or decide you no longer wish to record a video, check the box above and continue the survey.

Step 3: Customize the embed code

The Embed Javascript requires modifications to meet your project specifications. The fields requiring changes are highlighted above. When replacing a field, remember to remove the brackets. Details on the variables that require customization are explained below.

  • [Project ID] - the “Project ID” allows the capture widget to sync videos captured with the appropriate project in the your Voxpopme portal. To set your project id, replace the [Project ID] with the unique Project ID for your Voxpopme video project, eg. var _projectId = "2cdaf2b8f505682a10c602d56abe5b5a". See "Step 1" (above) if you don't have your "Project ID".
  • [Language] - setting the country code will assure we have the right language for each video captured. This is important for transcriptions and translations. Voxpopme supports over 40 languages. The languages we support and their codes can be found here.

To set your language, insert the appropriate country code between the "" where [Language] is found. See below for an example.


Step 4: Appending Data

  • Ensure you are passing through additional data to the Voxpopme portal. At minimum we recommend passing through a unique identifier so the survey results can be tied to the videos captured. The embed code above includes appended data capture titled ‘additional_data’. The name of the variable is shown on the left-hand side, the appropriate piped text for passing through additional data within the survey is on the right in quotation marks. 
  • Additional Survey Variables: Pass through as much additional data as you would like to the Voxpopme platform. To add a new piece of additional data you will need to add a comma at the end of last additional data line. If you’re passing through a survey response as additional data, use the same merge code you would use to pipe that response into another survey question. 

Step 5: Publish & Test

The last step is to save the changes made and test. While testing the video capture and additional data passthrough for your survey, be sure to say “testing” in your video or cover your camera. This will let our QA team know to decline the video. Below are instructions on how to view the additional data in the portal, and how to see declined test videos to confirm data has passed through correctly.

View additional data in portal: To view the additional data in the project, click into your project and click the additional data button (see screenshot below). The additional data will show up beneath each response’s transcript.



View Declined Videos: If your test video is awaiting approval, you can skip this step and use the instructions above to view the additional data. If you don’t see your test video, it was likely declined by our QA team, which prevents the video from being sent for transcription. You can see these videos by using the Filter and setting Declined to True. See screenshot below:



Additional Information

Technical Difficulties

Because the embed code will disable the 'Next' button within the survey until the respondent has successfully uploaded a video response, we recommend adding a technical difficulties option in case a respondent is unable to record a video or decides they no longer wish to record. This is included in the sample javascript and if checked it will enable the next button allowing the user to progress through the survey.

Checking the Project Quota

If you would like to prevent the respondent from seeing the video question once the video quota has been met, follow the instructions in the following link: Checking the quota

Changing the Recording Time

By default, the widget allows respondents to record responses between 15 and 60 seconds. To change the minimum and maximum recording time capture widget please check with your contact at Voxpopme.

Practical tips for higher conversion rates

Read our document for tips on how to gain higher conversion rates.


Q: What if I have multiple languages in my study?

A: When expecting responses in multiple languages users will need to embed multiple instances of the capture widget (one for each language). Branching in the survey can be used to serve up the right respondents with the corresponding language. The same Project ID can be used, this will ensure all responses fall under the respective project in the Voxpopme portal.

Q: Can I append data that is captured after the video question?

A: Yes, to see instructions on passing through variables that have been captured after the video embed please see here.

Q: Is there a limit to the number of additional variables I pass through?

A: No. You can pass through as many variables as needed. We recommend passing through a unique ID, along with any data that will be useful for filtering/sorting videos, captioning your showreels, or generally assisting with your analysis.



Have more questions? Submit a request


Please sign in to leave a comment.