Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
38530af
Intro to XLSForm article
salomegarnier Oct 26, 2025
7bea71f
Create placeholder
salomegarnier Oct 26, 2025
2888542
Add placeholder file in edit_forms_excel directory
salomegarnier Oct 26, 2025
c133713
Add files via upload
salomegarnier Oct 26, 2025
52e9416
Minor edits
salomegarnier Oct 26, 2025
2640dd3
Add files via upload
salomegarnier Oct 26, 2025
6eb350f
Add files via upload
salomegarnier Oct 26, 2025
0e39fac
Minor edits
salomegarnier Oct 27, 2025
dcf6ae1
Delete source/images/edit_forms_excel/placeholder
salomegarnier Oct 27, 2025
7aa7c21
Delete source/images/placeholder
salomegarnier Oct 27, 2025
0548bda
Add video embed
salomegarnier Oct 27, 2025
440c09d
Update index.rst
AmandaJ-W Oct 27, 2025
fded4e0
Update index.rst
AmandaJ-W Oct 27, 2025
41bbb11
Create xlsform_with_kobotoolbox.md
AmandaJ-W Oct 28, 2025
3ba34ba
Create placeholder_file
AmandaJ-W Oct 28, 2025
83e9a4e
Add images via upload
AmandaJ-W Oct 28, 2025
b0ed297
Update xlsform_with_kobotoolbox.md
AmandaJ-W Oct 28, 2025
7f325b0
Correct xlsform_with_kobotoolbox
AmandaJ-W Oct 28, 2025
6a61143
Minor edits
salomegarnier Oct 28, 2025
329ec51
Update xlsform_with_kobotoolbox.md
AmandaJ-W Oct 28, 2025
4d418a1
Update xlsform_with_kobotoolbox.md
AmandaJ-W Oct 28, 2025
a5619a9
Minor edits
salomegarnier Oct 28, 2025
6258659
Create question_types_xls.md
AmandaJ-W Oct 30, 2025
e428b9f
Minor edits
salomegarnier Oct 30, 2025
bbda5a1
Create option_choices_xls.md
AmandaJ-W Oct 31, 2025
40735cb
Update XLSForm option choices documentation
salomegarnier Oct 31, 2025
c973d6b
Create grouping_questions_xls.md
AmandaJ-W Nov 3, 2025
94d34ce
Minor edits
AmandaJ-W Nov 3, 2025
9709108
Minor edits
salomegarnier Nov 3, 2025
e6abf7b
Create repeat_groups_xls.md
AmandaJ-W Nov 6, 2025
7667658
Update index.rst
AmandaJ-W Nov 6, 2025
f5443f9
Create question_options_xls.md
AmandaJ-W Nov 6, 2025
bf00d71
Minor edits
salomegarnier Nov 6, 2025
b747cb0
Create appearances_xls.md
AmandaJ-W Nov 7, 2025
ae656d9
Update language_xls.md
AmandaJ-W Nov 7, 2025
9129ffb
Update media.md
AmandaJ-W Nov 7, 2025
bc0ca9f
Add images via upload
AmandaJ-W Nov 7, 2025
849b353
Update question_types_xls.md
salomegarnier Nov 7, 2025
fa80190
Update question_types_xls.md
salomegarnier Nov 7, 2025
921f4e3
Update appearances_xls.md
salomegarnier Nov 7, 2025
a673bab
Update question_options_xls.md
salomegarnier Nov 7, 2025
e3bdf53
Update media.md
salomegarnier Nov 7, 2025
b31e74e
Update language_xls.md
salomegarnier Nov 7, 2025
2d2146c
Update question_options_xls.md
AmandaJ-W Nov 8, 2025
388b5e0
Create form_logic_xls.md
AmandaJ-W Nov 8, 2025
d216afe
Update form_logic_xls.md
AmandaJ-W Nov 8, 2025
c99e491
Create functions_xls.md
AmandaJ-W Nov 8, 2025
3e3826b
Update functions_xls.md
AmandaJ-W Nov 9, 2025
a0ade43
Create skip_logic_xls.md
AmandaJ-W Nov 9, 2025
6cfa5b0
Create constraints_xls.md
AmandaJ-W Nov 9, 2025
3c13547
Create required_logic_xls.md
AmandaJ-W Nov 10, 2025
c315db3
Create choice_filters_xls.md
AmandaJ-W Nov 10, 2025
7e20403
Create placeholder
AmandaJ-W Nov 10, 2025
d54209b
Add images via upload
AmandaJ-W Nov 10, 2025
6ab5c98
Create calculations_xls.md
AmandaJ-W Nov 10, 2025
eb6cf52
Create form_settings_xls.md
AmandaJ-W Nov 10, 2025
2da6549
Create form_style_xls.md
AmandaJ-W Nov 10, 2025
bb141d4
Create placeholder.md
AmandaJ-W Nov 10, 2025
7dbab77
Add images via upload
AmandaJ-W Nov 10, 2025
6c85fb9
Update form_style_xls.md
AmandaJ-W Nov 10, 2025
5180dc8
Update form_style_xls.md
AmandaJ-W Nov 10, 2025
6896998
Update form_style_xls.md
AmandaJ-W Nov 10, 2025
a0ebf7f
Create metadata_xls.md
AmandaJ-W Nov 11, 2025
9683479
Update pull_data_kobotoolbox.md
AmandaJ-W Nov 11, 2025
52b0b54
Add image via upload
AmandaJ-W Nov 11, 2025
73addde
Create select_from_file_xls.md
AmandaJ-W Nov 11, 2025
9a0df65
Create Placeholder
AmandaJ-W Nov 11, 2025
1288563
Add image via upload
AmandaJ-W Nov 11, 2025
a10d29d
Create Placeholder.md
AmandaJ-W Nov 11, 2025
a4a5722
Add files via upload
AmandaJ-W Nov 11, 2025
9b0353e
Create select_from_map_xls.md
AmandaJ-W Nov 11, 2025
fd34334
Update library_locking.md
AmandaJ-W Nov 11, 2025
64615f4
Add images via upload
AmandaJ-W Nov 11, 2025
c475af3
Update library_locking.md
AmandaJ-W Nov 11, 2025
2406883
Update library_locking.md
AmandaJ-W Nov 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
1 change: 1 addition & 0 deletions source/_static/files/select_from_map_xls/Placeholder.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Placeholder
Binary file not shown.
6 changes: 6 additions & 0 deletions source/_static/files/select_from_map_xls/cities1.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name,label,geometry,info,marker-color,marker-symbol
1,Warsaw,52.2297 21.0122 0 0,Capital city of Poland,#FF0000,W
2,Berlin,52.5200 13.4050 0 0,Capital city of Germany,,
3,Paris,48.8566 2.3522 0 0,Capital city of France,#FFFFFF,P
4,Kyiv,50.4501 30.5234 0 0,Capital city of Ukraine,#7d3f00,🙂
5,Prague,50.0755 14.4378 0 0,Capital city of the Czech Republic,#00ff00,
87 changes: 87 additions & 0 deletions source/_static/files/select_from_map_xls/cities2.geojson
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"title": "Warsaw",
"info": "Capital city of Poland",
"id": "1",
"marker-color": "#FF0000",
"marker-symbol": "W"
},
"geometry": {
"type": "Point",
"coordinates": [
21.0122,
52.2297
]
}
},
{
"type": "Feature",
"properties": {
"title": "Berlin",
"info": "Capital city of Germany",
"id": "2"
},
"geometry": {
"type": "Point",
"coordinates": [
13.4050,
52.5200
]
}
},
{
"type": "Feature",
"properties": {
"title": "Paris",
"info": "Capital city of France",
"id": "3",
"marker-color": "#FFFFFF",
"marker-symbol": "P"
},
"geometry": {
"type": "Point",
"coordinates": [
2.3522,
48.8566
]
}
},
{
"type": "Feature",
"properties": {
"title": "Kyiv",
"info": "Capital city of Ukraine",
"id": "4",
"marker-color": "#7d3f00",
"marker-symbol": "🙂"
},
"geometry": {
"type": "Point",
"coordinates": [
30.5234,
50.4501
]
}
},
{
"type": "Feature",
"properties": {
"title": "Prague",
"info": "Capital city of the Czech Republic",
"id": "5",
"marker-color": "#00ff00"
},
"geometry": {
"type": "Point",
"coordinates": [
14.4378,
50.0755
]
}
}
]
}
39 changes: 39 additions & 0 deletions source/_static/files/select_from_map_xls/cities3.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<root>
<item>
<name>1</name>
<label>Warsaw</label>
<geometry>52.2297 21.0122 0 0</geometry>
<info>Capital city of Poland</info>
<marker-color>#FF0000</marker-color>
<marker-symbol>W</marker-symbol>
</item>
<item>
<name>2</name>
<label>Berlin</label>
<geometry>52.5200 13.4050 0 0</geometry>
<info>Capital city of Germany</info>
</item>
<item>
<name>3</name>
<label>Paris</label>
<geometry>48.8566 2.3522 0 0</geometry>
<info>Capital city of France</info>
<marker-color>#FFFFFF</marker-color>
<marker-symbol>P</marker-symbol>
</item>
<item>
<name>4</name>
<label>Kyiv</label>
<geometry>50.4501 30.5234 0 0</geometry>
<info>Capital city of Ukraine</info>
<marker-color>#7d3f00</marker-color>
<marker-symbol>🙂</marker-symbol>
</item>
<item>
<name>5</name>
<label>Prague</label>
<geometry>50.0755 14.4378 0 0</geometry>
<info>Capital city of the Czech Republic</info>
<marker-color>#00ff00</marker-color>
</item>
</root>
134 changes: 134 additions & 0 deletions source/appearances_xls.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
# Question appearances in XLSForm
**Last updated:** <a href="https://github.com/kobotoolbox/docs/blob/2afa3a0c670fe98b296a79b798f33abf248d0273/source/appearances_xls.md" class="reference">Oct 31, 2025</a>

Question appearances allow you to customize how questions are displayed in the form and the type of responses they collect. This article explains how to add question appearances in XLSForm and lists common appearances by question type.

It is important to note that some appearances only work in [Enketo web forms](https://support.kobotoolbox.org/enketo.html), while others are supported only in [KoboCollect](https://support.kobotoolbox.org/kobocollect_on_android_latest.html). Consider your data collection method when selecting appearances.

<p class="note">
<b>Note:</b> This article focuses on setting question appearances in <a href="https://support.kobotoolbox.org/getting_started_xlsform.html">XLSForm</a>. To learn about setting appearances in the KoboToolbox Formbuilder, see <a href="https://support.kobotoolbox.org/using-formbuilder.html">Using the Formbuilder</a> documentation.
<br><br>
For hands-on practice with question appearances in XLSForm, see KoboToolbox Academy's <a href="https://academy.kobotoolbox.org/courses/xlsform-fundamentals">XLSForm Fundamentals Course</a>.
</p>

## Adding question appearances

To add question appearances in XLSForm:
1. In the `survey` worksheet, add an **appearance** column.
2. Enter the name of the appearance in the `appearance` column. Ensure you use the exact spelling and punctuation of the appearance name.
3. Some appearances can be combined and applied to the same question. Combine appearances by entering them in the same cell and separating them with a space.

**survey worksheet**

| type | name | label | appearance |
| :--- | :--- | :--- | :--- |
| text | description | Describe the project. | multiline |
| select_one country_list | country | Which country is this project taking place in? | autocomplete minimal |
| survey |


## Available question appearances in XLSForm
The tables below list common question appearances by question type and shows which are supported in Enketo web forms and KoboCollect.

### Select question types
Select questions allow respondents to [choose from predefined options](https://support.kobotoolbox.org/question_types_xls.html#select-question-types).

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `minimal` | Displays choices in a drop-down menu. | Enketo and KoboCollect |
| `compact` | Displays choices side-by-side with minimal padding and without choice boxes. | Enketo and KoboCollect |
| `label` | Displays choice labels without the choice boxes. | Enketo and KoboCollect |
| `list-nolabel` | Displays the answer choice boxes without the labels. | Enketo and KoboCollect |
| `autocomplete` | Adds a search bar at the top of the option list. | Enketo and KoboCollect (combine with minimal appearance) |
| `horizontal` | Displays the answer choices horizontally in columns. | Enketo only |
| `horizontal-compact` | Displays the answer choices horizontally, with minimal padding and without choice boxes. | Enketo only |
| `likert` | Displays answer choices as a Likert scale (`select_one` only). | Enketo and KoboCollect |
| `quick` | Auto-advances the form to the next question after an answer is selected (`select_one` only). | KoboCollect only |
| `quickcompact` | Displays choices side-by-side with minimal padding and without choice boxes, and auto-advances to the next question after an answer is selected (`select_one` only). | KoboCollect only |
| `columns` | Displays available choices in 2, 3, 4 or 5 columns depending on screen size. | Enketo and KoboCollect |
| `columns-pack` | Displays available choices with as many as possible on one line. | Enketo and KoboCollect |
| `columns-n` | Displays available choices in the specified number (n) of columns. | Enketo and KoboCollect |
| `map` | Displays a map to select options from. Requires <a href="https://support.kobotoolbox.org/select_from_map_xls.html">defining GPS coordinates</a> in the `choices` sheet (`select_one` only). | KoboCollect only |
| `quick map` | Displays a map to select options from, automatically recording the first selected location without displaying additional information. Requires <a href="https://support.kobotoolbox.org/select_from_map_xls.html">defining GPS coordinates</a> in the `choices` sheet (`select_one` only). | KoboCollect only |

<p class="note">
<b>Note:</b> Appearances for <code>select_one</code> and <code>select_multiple</code> questions can also be used for <a href="https://support.kobotoolbox.org/select_from_file_xls.html">select from file</a> questions.
</p>

### Integer and decimal question types
Numeric questions are used to [collect whole numbers or decimal numbers](https://support.kobotoolbox.org/question_types_xls.html#numeric-question-types).

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `thousands-sep` | Formats large numbers using a comma separator for thousands. | Enketo and KoboCollect |
| `bearing` | Records a compass reading in degrees (`decimal` only). | KoboCollect only |
| `counter` | Displays buttons for increasing and decreasing digits (`integer` only). | KoboCollect only |


### Range question type
Range questions are used to [select values within a specified range](https://support.kobotoolbox.org/question_types_xls.html#numeric-question-types).

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `vertical` | Changes the orientation of the number line to a vertical line. | Enketo and KoboCollect |
| `picker` | In KoboCollect, displays a pop-up spinner for selecting values. In Enketo, displays a drop-down menu. | Enketo and KoboCollect |
| `rating` | Displays stars instead of a number line. | Enketo and KoboCollect |
| `distress` | Displays a thermometer instead of a number line. | Enketo and KoboCollect |


### Text question type
Text questions allow users to [collect open-ended responses](https://support.kobotoolbox.org/question_types_xls.html#text-and-note-question-types).

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `numbers` | Displays a numeric keyboard instead of a text keyboard (e.g., to collect phone numbers). | KoboCollect only |
| `multiline` | Displays a multiline text box for longer text responses. | Enketo and KoboCollect |
| `url` | Displays a clickable URL under the question text and makes the question read-only. Requires entering a URL in the question's `default` column. Also works with `note` questions. | Enketo and KoboCollect |
| `masked` | Masks text entered by the respondent (e.g., a password or confidential information). | KoboCollect only |


### Date question type
Date questions are used to [capture specific calendar dates](https://support.kobotoolbox.org/question_types_xls.html#date-and-time-question-types).

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `month-year` | Captures a month and a year. | Enketo and KoboCollect |
| `year` | Captures only a year. | Enketo and KoboCollect |
| `no-calendar` | Displays a spinner to select the day, month, and year, instead of the default calendar-style picker. | KoboCollect only |
| `coptic` | Displays the Coptic calendar. | KoboCollect only |
| `ethiopian` | Displays the Ethiopian calendar. | KoboCollect only |
| `islamic` | Displays the Islamic calendar. | KoboCollect only |
| `bikram-sambat` | Displays the Bikram Sambat calendar. | KoboCollect only |
| `myanmar` | Displays the Myanmar calendar. | KoboCollect only |
| `persian` | Displays the Persian calendar. | KoboCollect only |
| `buddhist` | Displays the Buddhist calendar. | KoboCollect only |


### GPS question types
GPS questions are used to [capture the geographic coordinates](https://support.kobotoolbox.org/question_types_xls.html#gps-question-types) of a location, path, or area directly within your forms.

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `maps` | Displays a map for users to visualize the location that is being automatically recorded (`geopoint` only). | KoboCollect only (included in default Enketo appearance) |
| `placement-map` | Allows for manual selection of a location on a map (`geopoint` only). | KoboCollect only (included in default Enketo appearance) |
| `hide-input` | Shows a larger map and hides other input fields (latitude, longitude, altitude, accuracy). | Enketo only |


### Image questions
Image questions allow users to [upload or record images](https://support.kobotoolbox.org/question_types_xls.html#media-question-types) directly into their forms.

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `signature` | Allows users to draw their signature. | Enketo and KoboCollect |
| `draw` | Allows users to sketch or create drawings. | Enketo and KoboCollect |
| `annotate` | Allows users to annotate an image by drawing or writing on it. | Enketo and KoboCollect |
| `new` | Prompts users to take a new picture using the device camera (no file upload). | KoboCollect only |
| `new-front` | Prompts users to take a new picture using the device's front-facing camera. | KoboCollect only |


### Barcode questions
Barcode questions allow users to [scan a QR code](https://support.kobotoolbox.org/question_types_xls.html#media-question-types) using the device's camera in KoboCollect.

| Appearance | Description | Compatibility |
| :--- | :--- | :--- |
| `hidden-answer` | Hides the scanned barcode value. | KoboCollect only |
Loading