How to Create an ODK or KoboToolbox XLS Form: A Step-by-Step Guide

Are you looking to design a survey form for mobile data collection using ODK (Open Data Kit) or KoboToolbox? XLSForm is a simple and powerful way to create forms in Excel that can be easily converted for use in these platforms.
In this guide, we’ll walk you through the process of creating an XLSForm from scratch, complete with examples and helpful resources.
What You’ll Need
Before we begin, make sure you have:
- Microsoft Excel (or Google Sheets, LibreOffice Calc)
- A basic understanding of survey/questionnaire design
- Access to ODK Collect or KoboToolbox for testing
Step 1: Understand the XLSForm Structure
An XLSForm consists of three main sheets:
- survey – Contains your questions and form logic.
- choices – Lists all answer options for multiple-choice questions.
- settings – (Optional) Configures form name, version, and other metadata.
Let’s break them down with examples.
Step 2: Create the ‘survey’ Sheet
This sheet defines your form’s questions. Each row represents a question or instruction.
Key Columns:
- type – The kind of question (e.g.,
text
,integer
,select_one
,note
). - name – A unique identifier (no spaces, underscores allowed).
- label – The question text seen by users.
- required – (
yes
/no
) Whether the question is mandatory.
Example:
type | name | label | required |
---|---|---|---|
start | start_time | Start time | yes |
text | respondent | What is your name? | yes |
integer | age | How old are you? | no |
select_one | gender | What is your gender? | yes |
For multiple-choice questions (select_one
or select_multiple
), you need a choices sheet with:
- list_name – Matches the question’s
select_one
list. - name – The value stored (e.g.,
male
). - label – What users see (e.g.,
Male
).
Example:
list_name | name | label |
---|---|---|
gender | male | Male |
gender | female | Female |
gender | other | Other |
Step 4: (Optional) Configure the ‘settings’ Sheet
This sheet sets form metadata like title and version.
form_title | form_id | version |
---|---|---|
Household Survey | household_001 | 1.0 |
Step 5: Validate and Convert Your Form
Once your Excel file is ready, you can:
- Test it using ODK XLSForm Online Validator (https://opendatakit.org/xlsform/).
- Upload it to KoboToolbox or ODK Central to generate a usable form.
Step 6: Deploy and Collect Data
- For ODK: Load the form into ODK Collect on an Android device.
- For KoboToolbox: Upload the form to your KoboToolbox project and share the link with enumerators.
Bonus Tips for Better Forms
✅ Use skip logic (relevant
column) to show/hide questions based on answers.
✅ Group questions (begin_group
and end_group
) for better organization.
✅ Test thoroughly before full deployment!
Helpful Resources
- Official XLSForm Documentation: https://xlsform.org
- KoboToolbox Form Builder: https://kobo.humanitarianresponse.info
- ODK Forum for Support: https://forum.getodk.org
Final Thoughts
Creating an XLSForm is easy once you understand the structure. With this guide, you’re ready to build efficient surveys for ODK or KoboToolbox and start collecting high-quality data in the field!
🚀 Got questions? Drop them in the comments below!