Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
192 lines (115 sloc) 7.37 KB
.. spelling::


ODK Build

:dfn:`ODK Build` is a form designer with a drag-and-drop user interface. Build is an HTML5 web application and works best for designing simple forms.


For a more powerful form designer from Open Data Kit, try :doc:`XLSForm <xlsform>`.

Using ODK Build

Go to and sign in.

Image showing sign in window.


There is a downloadable version of ODK Build available.


Clicking on :menuselection:`About ODK Build...` option in the :guilabel:`Help` menu provides basic information about ODK Build.

Image showing information about ODK Build.

Creating and Saving forms

Options to create, open and save forms are available in the :guilabel:`File` menu.

Image showing file menu dropdown.


When you start building a form on ODK Build, it is named as Untitled Form. To rename it click on :guilabel:`rename` next to the form name and give a name to your form.

Image showing rename option.

Image showing open form window.


Forms which are saved to your local machine have extension :file:`.odkbuild` and only these forms can be loaded into ODK Build.

Form building

  • Add a new prompt, by dragging the elements from the bottom of the screen onto the blank canvas.
  • You can remove a prompt by clicking on :guilabel:`X` sign on the prompt.

Image showing remove prompt option.

  • For each prompt, modify its properties on the right portion of the screen.

Image showing properties section.

Image showing view menu dropdown.

Image showing collapsed questions.

  • Information about prompts is displayed in the properties section.

Image showing information text.

Image showing help menu dropdown.

Upload forms to Aggregate

You can upload a form to Aggregate server by clicking on :menuselection:`Upload Form to Aggregate...` in the :guilabel:`File` menu. In the window which opens up, enter the url for your Aggregate server. In the username and password box, you need to enter your Aggregate account credentials with Form Manager or greater capabilities. The account type in Aggregate has to be ODK, not Google. You may leave these blank if your Aggregate instance allows anonymous form uploading.

Image showing upload form window.

Export forms

Image showing Download option.

Changing form properties

You can change the form properties by clicking :menuselection:`Form Properties...` in the :guilabel:`Edit` menu.

Image showing edit menu dropdown.

A form properties window will appear, where you can enter the instance name, public key and submission url for your form.

Image showing form properties window.

Instance name specifies names you want to give to submitted data. You can see more info on public key :ref:`here <construct-key>`. Submission url directs your submissions somewhere other than the Aggregate that supplied the form. This is the ODK Aggregate website url with Aggregate.html replaced by submission.


You can give an instance name which uses calculated expressions to name submissions based on submission data. Note that whatever you put in the instance name box should evaluate to a string.

For example, you might use a concatenation of a unique student ID (sid) with the student name (s_name) as the name of the filled-in form. So you can provide a instance name as : concat(${sid},' - ', ${s_name}).

This is implemented in XML as an instanceName field within the meta block. If this value is present and not an empty string (""), it will be used as the name of the filled-in form. Otherwise, the current default naming, based upon the date the form was first saved, will be used.

  <data id="build_example1_1508999324">
Image showing instance name according to submitted data.

Instance name as sid-s_name: 12345-Ankita

Add, remove and display new languages

You can add a new language for your form by clicking on :menuselection:`Manage Translations...` in the :guilabel:`Edit` menu.

Image showing translation window.

When you add a new language, the language box will be displayed in the properties section of the form.

Image showing added language in properties section.

You can also remove any translation by clicking on :guilabel:`remove` option in the Translation box.

Image showing remove translation option.

You can change the display language for your form by checking the language you want to use as display language in the :guilabel:`View` menu.

Image showing display language selection.