Project 2. Find a similar item in an online store

In this project, performers will search in an online store for shoes that are similar to the ones shown. Use the results from project 1 as source images.

  1. Create a project
  2. Create a pool
  3. Prepare and upload a TSV file with tasks

Create a project

To create a project:

  1. Click + Create project.

  2. In the window that opens, select the Product photo search template. To do this, hover over the template and click Select.

  3. In the window that opens, fill in the project parameters.

    1. In the Project title field, enter Find the same or similar shoes in an online store.

    2. In the Description field, enter Go to an online store and provide a link and an image of the same or similar pair of shoes.

    3. In the Instructions field, enter the instructions.

      Instruction text:

      Look at what the person is wearing in the picture. 
      Then go to the ASOS online store and search for the same pair of shoes. 
      It should be similar in category, style, color, and length.
  4. Edit the input and output data in the Specifications block.

    1. Click to switch graphic mode to JSON format.

    2. In the Input data field, enter:

        "image": { 
            "type": "url",
            "hidden": false, 
            "required": true 
    3. In the Output data field, enter:


      If you want to choose a different online store, change "pattern": "*" to "pattern": "your_store.*".

        "button": {
          "type": "boolean",
          "hidden": false,
          "required": true,
          "allowed_values": [
        "found_link": {
          "type": "string",
          "hidden": false,
          "pattern": "*",
          "required": true
        "found_image": {
          "type": "file",
          "hidden": false,
          "required": true

    Learn more about the Specification parameters in Input and output data.

  5. Prepare the Task interface.

    1. Delete the template code from the html block.

    2. Insert the following code in the html block:

      {{img src=image width="50%" height="400px"}}
      <div class='answers'>
          <p>Find similar shoes <b>shoes</b> in the ASOS online store</p>
      {{field type="button-clicked" name="button" label="ASOS" href="" action=true}}
      <p>Shoes must be similar in color, material, length, and style.</p>
      <p>Paste the link here</p>
      {{field width="100%" type="input" name="found_link"}}
      <p>Upload the image here</p>    <div>
      {{field width="100%" type="file-img" name="found_image" preview=true}}
    3. Edit the code in the JS block to check if the link and image submitted by the performer are valid. On the 5th line, replace the following code:

      if (!solution.output_values.image && !solution.output_values.no_image) {


      if (!solution.output_values.found_image) {


      Be careful when changing the code. If you have issues with the preview, contact the support service or compare your code with that given in the Appendix.

    4. Delete the template code from the css block.

    5. In the css block, insert the following code that is responsible for setting the proportional image size:
      .task {
        display: block;
        height: 500px;
        width: 800px;
      .img {
        float: left; 
        width: 50%;
      .answers {
        float: left; 
        width: 40%;
        margin: 5%;
  6. Click the Preview button.

  7. In the window that opens, check if the task options work correctly.

    1. Answer the question.

    2. In the lower right corner, click Submit.

  8. Exit the preview mode.

    1. In the lower left corner, click Exit.

    2. In the window that opens, click Exit.

  9. In the window that opens, click Finish editing.

Learn more about working with the project in Project.

Create a pool

To create a pool:

  1. Open the page of the project titled Find the same or similar shoes in an online store.

  2. Click the Add pool button.

  3. Specify the pool name.

  4. (optional) Enter the Private description.

    1. Turn on the Add a private description option.

    2. In the Private description field, enter the pool description. This information is available only to you.

  5. In the Price per task page section, go to the Price in US dollars field and specify 0.01. You can see more examples of pricing here.

  6. In the Performers section, filter performers by language:

    1. Click Add filter.

    2. Find the Performer profile block in the list and choose the Languages skill.

    3. In the ? field specify =.

    4. In the Value field, specify Russian.

  7. In the Performers section, add a new skill:

    1. Click Create skill.

    2. In the Title field of the window that opens, enter Found_shoes.

    3. Click the Add button.

  8. In the Quality control section, specify quality control settings for the pool:

    1. Turn on the Non-automatic acceptance option.

    2. Set the Deadline field to 7.

    3. Click Add quality control rule.

    4. Find the Rules block in the list and choose Recompletion of rejected assignments.

    5. Set a rule for rejected tasks: if a task is rejected, increase overlap by 1. In addition, turn on the Open pool if closed option:

    6. Add another quality control rule. Click Add quality control rule.

    7. Find the Rules block in the list and choose Submitted responses.

    8. Set a rule for completed assignments: if the number of submitted assignments is greater than or equal to 1, set the value of the Found_shoes skill to 1.


      If the Found_shoes skill is missing from the list, save the pool and reopen it to edit it.

    Control tasks and majority vote aren't used in this type of project, because links submitted by performers must match, which is practically impossible. Learn more in Quality control.

  9. In the Overlap section, go to the Overlap field and enter 3.

  10. (optional) In the Speed/quality section, specify the percentage of top-rated users who will get access to the pool. Read more about this in Speed/quality balance.

  11. Tap the Save button.

Prepare and upload a TSV file with tasks

Check out the example in a demo TSV file. You can find it on the pool page. At the top-left of the page, there are links to TSV files with regular, control, and training tasks.

  1. In the text or spreadsheet editor, open the TSV file that you received after aggregating the results in project 1.

  2. Select images that are appropriate for the current project (OK or your value if you changed it for the result field).

  3. Copy the column with the selected links to a new sheet or document.

  4. Name it INPUT:image. If you want to set a different name, rename the column in the source file with the results, too.

  5. Save the file in TSV format.

  6. Upload the resulting TSV file.

    1. Click Upload. In the window that opens, configure the file upload settings.

    2. Choose Set manually.

    3. In the Tasks per page field, specify1.

    4. Click Upload.

    5. In the window that opens, choose the TSV file with tasks to upload and click Open.

    6. In the window that opens, check the number of tasks and click Add.

  7. Click to start the pool.


    The tasks will be completed by real performers in Yandex.Toloka. Recheck your project setup before you start the pool.

What's next

  • Create Project 3 to compare the original image with the results from Project 2.