User testing on Mechanical Turk [how-to]

This is a pretty high-level summary (e.g., not that detailed) of how I create and run a new survey on Mechanical Turk. Since people have lots of different ways of using Mechanical Turk, this how-to may or may not be for you. I’ve also noticed that nearly every survey or questionnaire I put on Mechanical Turk requires different hacks ;-)

Creating A Mechanical Turk Task

Step 1: Select. You’ll start in the design tab, and either copy a template that exists (there are some default templates in there), or edit one of your saved drafts.

Step 2: Properties. Then you set the properties of your HIT. There are some more details like pay rate and automatic approval time at the bottom of this page.

Step 3: Layout. Next, you’re still under the global tab for Designing the hit, but you switch to a sub-tab for Designing the Layout. The other thing to note here is that you can adjust the “frame height” of your hit (which will determine how long the page’s scroll bar is and what users see “above the fold”).

There are a few things to note for when you do dive into the HTML editor:

  1. Mechanical Turk is a full-on HTML enabled. Anything you can do with HTML/CSS, you can do to style your survey here.
  2. (See the sample HTML code below for: an embedded survey and an HTML/CSS-created survey)

  3. This includes embedding objects (like images or iframes if you are linking to a Google Form or Survey Monkey survey that’s hosted elsewhere).
  4. You cannot embed Javascript directly, but you can use Javascript with your HIT. I did this by creating a Javascript snippet and saving it on an external site, but then linking to the external site from Mechanical Turk. There may be other ways to accomplish this as well that I don’t know of.
  5. Last I checked, you have to have some variable and associated variable list (the “Input File”) linked to your HIT. This is typically used if you want to test, say, 100 images, but where each user only tests 10. So you have to cycle through the first 10 for the first user, the second ten for the second user, etc. Even if your HIT doesn’t use this method AT ALL, you have to include some fake variable and link a fake variable list (see Step 6).

Here’s my dummy variable line which I always leave at the end of the HTML script:

<p id="${dummy}">&nbsp;</p>

Step 4: Preview. Finally, you’ll preview what your HIT will look like to Turkers. If things look funny, go back to Design Layout to tweak them.

Step 5: Begin Publishing. When you’re done there, you’re taken to the Publish page. Your latest HIT will be highlighted in yellow.

Step 6: Choose Input File. After you Select your HIT, you have to list your variables file (“Input File”). Recall that I mentioned this before? It’s wacky when you’re not using variables (like placeholder images), and this file has to exactly match what your put in the HTML of your HIT. If you’re just doing simple surveys, feel free to use my dummy variable line in your HTML and attach this file (exactly as is, since the Windows formatting was also required) — you’ll be fine!

Step 7: Final Preview. You’ll have one last chance to preview your HIT:

Step 8: Pay and Confirm. And then confirm all the settings, including your final estimated cost. It’ll tell you if you don’t have enough money, and if you click there to add more funds, it’ll pop you back into your workflow here when you’re done.

Here’s some sample HTML code which I used for two surveys recently:

Embedding a survey
<p>Please complete the embedded survey (within the black box). Be sure to his SUBMIT at the bottom of that form, and then SUBMIT for the Mechanical Turk form!</p>

<p><iframe width="65%" height="700" frameborder="5em" src="http://spreadsheets.google.com/embeddedform?key=t_0TXHPdeGfTvyKrg7n4a0A" marginheight="0" marginwidth="0" style="border: 3px solid rgb(0, 0, 0);">Loading...</iframe></p>
<div style="font-family: helvetica,arial,'lucida grande',verdana;">
<h3>When you complete the form above, you will see a CONFIRMATION CODE at the top of the page (you may have to scroll up).</h3>

<p>Enter that <u>CONFIRMATION CODE</u> here to receive payment! Thank you!</p>
<p><textarea rows="1" cols="30" name="Name"></textarea></p>
<h4>If you have any comments or feedback, please leave them below!</h4>
<p><textarea rows="3" cols="80" name="comment"></textarea></p>
<p id="${dummy}">&nbsp;</p>
</div>

Styling the survey with HTML/CSS within Mechanical Turk
See the code snippet on Pastie.

If you want additional samples (like with using Javascript), please email me separately.

8 Comments

  1. Nate said:
    # | 11 Feb 2010

    Brynn, Thanks so much for this. This is a great tutorial.

  2. Katie said:
    # | 11 Feb 2010

    Brynn, excellent tutorial. thanks a lot.

    Btw, am not able to download the
    “dummyvariable line” file. could you upload it again? thanks.

  3. Amrita said:
    # | 11 Feb 2010

    How do you generate a confirmation code after the user finishes filling out the google form ? I looked all over the place and haven’t been able to figure that out yet.

  4. brynn said:
    # | 11 Feb 2010

    Not a very timely reply to your post (Katie), but I did mistakenly delete that file. It should be back up there now!

  5. brynn said:
    # | 11 Feb 2010

    Amrita — you manually create it! In almost all online survey tools, you have an option to edit your confirmation or “thank you” page. In Google Forms, go to More Actions -> Edit confirmation. Then enter whatever confirmation code you choose!

  6. Amrita said:
    # | 11 Feb 2010

    Ah, thank you ! I wonder if there is a way to randomly generate a different confirmation code each time, to be able to cross reference the mTurk entries with those in the google spreadsheet.

  7. Srishti said:
    # | 11 Feb 2010

    I downloaded your input/variable file and saved it as an .xls but when I upload it to the Publish section it gives me the following error:

    Could not create batch. Invalid input data on line 1. Click here to learn more about acceptable file formats.

    And the ‘Click here’ part is unclickable.

    What should I do or am I doing wrong?

    Thanks! This is a great guide and it’s been a lifesaver!

  8. Patrick said:
    # | 11 Feb 2010

    I’m a first year graduate student starting up a study – this page was extremely helpful – thanks for posting it!

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*