In May 2019 we launched a major upgrade to our tools. This overhaul included a completely new form design and data capture experience which we’ve continued to refine, rolling out features like web collectionadvanced media supportembedded formscustom widgetsin-app messaging, and many more. 

Once your legacy forms are migrated, you'll need to update and thoroughly test the forms before publishing to ensure that they work as you intend them to. We've put together a list things to take note of as well as a few useful tips.

Changes to look out for: 

Referencing fields 

  • Legacy tools used the syntax __{Qfield_id} __ to reference a field. New tools use the ‘$’ sign to reference fields(e.g. $Fieldname). Therefore all field references will need to be checked and updated.
  • References are often used in: 
  • Field display text 
  • Validation 
  • Calculations

Branching and skip logic

  • Branching no longer works in the same way, i.e. you cannot branch from one field to another field in the form.
  • Skip logic needs to be applied to fields/pages to either show or hide the field/page based on a previous response.
  • It is critical to test the skip logic of your form before publishing.

Constraints/ validation

  • Validation (constraints) need to be checked before publishing. 
  • Note that the constraint ‘Between’ is no longer used in the same way. Fields that use the 'between' operator should be updated to validate whether a response is greater than ‘x’ and less than ‘y’,

Specify 'Other' fields 

  • Legacy tools required an additional field for specifying the ‘Other’ option, if it was selected from the option list. In the new tools however, you can simply tick the check box for 'Other' when setting up the option list for select fields. Visit our article on choice fields steps on using select fields.
  • As part of the migration, this additional ‘Other’ field will be imported from the legacy tools as it's own field. Confirm and test that any skip logic is correctly applied to these fields.

Time fields

  • Time fields are migrated as text fields. This will need to be deleted and a new Date/Time field added to capture time. 
  • Remember to set the new Date/Time fields to capture time.

Signature fields 

  • Setting up a signature field in the legacy tools required a custom menu action to be added to an image field. The new tools make it easy and straight forward to simply select a signature field type.
  • Signature fields are imported as image fields when forms are migrated to the new tools. This will need to be deleted and a new Signature field added to capture a signature. 

Option list hierarchy fields


  • Functions, expressions and operators are special commands that enable you to perform basic or advanced calculations, determine skip logic, modify display text and format data. Using operators have been greatly simplified in the new tools.
  • The legacy tools indicated the use of an operator wrapped as follow: __{OPERATOR}__ In he new tools, a list of possible operators and functions will be listed when you add an equals sign "=". You can then choose and configure the relevant operator from the list.
  • Look out for operators that may need to be updated once a form has been migrated. For example:

OperatorLegacy toolsNew tools
Date function__{DATENOW}__=today()
Sum__{SUM(value1,value2,...)}__=(value + value ...)
Repeat function__{INDEX}__=repeat-index()

Display text 

  • Updates to the display text may be required after migrating legacy forms. Changes may include removing the instruction to click “Next“. (Legacy tools only allowed 1 field per page and the fieldworker had to tap “Next” after each and every field. With the new tools, multiple fields can be added to a page and the last page has the options to Submit the form and to step Back to edit any responses.)
  • If your form has been translated into multiple languages, the languages will also be migrated with your form. If you make changes to your display text, remember to make the change across all languages.

Additional tips and new features: 

  • Use the Hint text to add additional information to guide the fieldworker/respondent when responding to a field.
  • The Pulldata() function can be very useful for pulling information from a CSV file into your form. The CSV file is downloaded to the handset and it’s therefore recommended to consider the Lockdown add-on if the CSV file contains identifiable/sensitive data.
  • Calculated value fields are hidden by default but can be displayed by referencing the field in your form. View our  help articles for useful examples on using calculated value fields.
  • Cascade fields are very useful to capture hierarchical data.
  • Specify appearance of option lists e.g columns or searchable dropdown for long lists.
  • Populate long option lists from a CSV file.
  • Groups are useful for repeating or skipping multiple fields.
  • Embed resources (media and documents) into your form.
  • Choose to export the media (i.e. all images, audio, video and signature fields) captured in your form.
  • Communicate with your field team by sending message to individual team members or to all fieldworkers assigned to a specific form.
  • Working with languages and translations have been simplified in the new tools. 
  • Enable Web collectionfor your form.
    • Forms can be accessed and submitted using any supported web browser 
    • Restrict access to assigned FWs only
    • Enable Pre-filling of fields allowing respondents to save their responses and re-use them when filling out the same form on the same web browser in future

Tip: Use the Preview to view what the form will look like on the handset and test validation, skip logic, calculations etc. before publishing the form.

Frequently asked questions on phasing out of our legacy tools are covered here

If you need any assistance with migrating your legacy forms, please reach out to our support team at