---
title: Choice lists and reference numbers
url: https://tideswell.xyz/docs/objects/choice-lists-and-reference-numbers
description: Give a field a fixed set of answers your team picks from, and give every record its own running number with a prefix.
---

> Documentation index: fetch https://tideswell.xyz/llms.txt to discover every page before exploring further.

# Choice lists and reference numbers



A **field** is one box of information on a record, and every field belongs to an **Object**:
a kind of record your team defines, built by an admin in **Settings › Objects**. Start at
<Ref to="objects" /> if that is new to you. This page covers the field types that ask you
for more than a label: **Options list** and **Multi-select**, which hold the choices your
team picks from, and **Reference number**, which numbers every record for you.

All three are set up in the same **Add field** dialog as every other field, described in
<Ref to="objects/add-a-field" />. They get a page of their own because they are the ones
that most change how an Object reads a year in.

A good options list turns a pile of records into a report. A reference number turns "the
Kaimen repair, the one from March" into RPR-1042.

## Before you start [#before-you-start]

You need to be an admin, because **Settings › Objects** does not appear for anyone else. The
Object itself also has to exist, so if you have not built it yet, follow
<Ref to="objects/create-an-object" /> first.

Have your choices written down before you open the dialog. The list is fixed once the field
is saved, so five minutes with a pen is the cheapest part of this page.

## Set up an Options list [#set-up-an-options-list]

An Options list holds one answer from a set you write. Pick the type, then type the choices
into the **Options** box, separated by commas. The field needs at least one option before
it will save.

1. Press **Add field** and give the field a Label, for example "Reason".
2. Choose **Options list** from the Type menu, under **Choices & links**.
3. In the **Options** box, type the choices separated by commas: `Warranty, Paid, Goodwill`.
4. Tick **Required** if a record cannot exist without an answer.
5. Press **Save field**.

Spaces around the commas are fine. What you type is what people see on the record, so write
them the way your team says them out loud, in the order you want them to appear in the
menu.

Write the whole list before you save, because the choices are fixed once the field exists.
The same rule applies to a field's label and type, and
<Ref to="objects/plan-your-fields-first" /> sets out what changing your mind costs.

## When should you use Multi-select instead? [#when-should-you-use-multi-select-instead]

Use **Multi-select** when a record can honestly have more than one answer at once, and
**Options list** when it can only have one. You write the choices exactly the same way, as
a comma separated list in the **Options** box.

Take Fairgreen Golf Co. A repair has one **Reason**: it is warranty, or paid, or goodwill,
never two of them. So Reason is an Options list.

The same repair might have several **Faults**: a broken zip and a failed seam on the same
jacket. So Faults is a Multi-select.

The practical difference on the record is the box people fill in. An Options list gives
one menu and one answer. A Multi-select lets someone tick several and shows them together.

The other difference matters later: an Options list can be filtered on a record list,
which is how you answer "how many warranty repairs are open right now". Saving that as a
view for the team is covered in <Ref to="records/filter-and-save-a-view" />.

## How do I write a good set of choices? [#how-do-i-write-a-good-set-of-choices]

Short, distinct, and as few as you can live with. Six choices that everyone reads the same
way beat fifteen that people argue about, and a long list is really a sign that two
questions have been squeezed into one field.

* **Make them mutually exclusive.** If a person could reasonably pick two, either the list
  is wrong or the field should be a Multi-select.
* **Do not encode two things at once.** "Warranty, Warranty (rush), Paid, Paid (rush)" is
  two fields: a reason and a rush tick. Split it, and both halves stay filterable.
* **Avoid a catch-all.** "Other" is where the information you actually wanted goes to die.
  If you need it, put a Long text field next to it so the detail lands somewhere.
* **Do not build a list of things you already keep as records.** Suppliers, products and
  customers belong in a Linked record field, not typed into an Options list that has to be
  maintained by hand. That is covered in <Ref to="objects/link-objects" />.
* **Do not use it for stages.** "Received, In progress, Done" is the life of the record,
  not a property of it, and it belongs in <Ref to="objects/stages" /> where it can control
  what happens next.

## Add a reference number [#add-a-reference-number]

**Reference number** gives every record its own number, counting up, shown with a short
prefix drawn from the Object's name. A repair at Fairgreen Golf Co.

becomes RPR-1042. Add the field once and you never touch it again.

1. Press **Add field** and give it a Label, for example "Repair no.".
2. Choose **Reference number** from the Type menu, under **Files & IDs**.
3. Press **Save field**.

There is nothing else to configure, and nothing for anyone to type. The number is assigned
when the record is saved, and it stays with that record for good.

Tideswell fills it in, so there is nothing to mark **Required**. <Ref to="concepts/numbers-and-dates" /> covers how a reference number reads alongside your
other figures.

Add one Reference number field per Object. A second one counts up from the same running
sequence rather than starting a fresh one of its own, so one is what you want.

## Where do choices and reference numbers show up? [#where-do-choices-and-reference-numbers-show-up]

On the record itself, on the record list, and anywhere a record is mentioned. That is the
payoff for the five minutes: a value chosen from a list can be filtered and grouped, and a
reference number gives your team something short to say to each other.

* **On the record list.** A reference number and a reason are both strong candidates for
  the first six fields, which are the ones the list shows. Reordering them, and choosing which
  field titles every record, are both covered in
  <Ref to="objects/rename-reorder-retire" />.
* **In a filter.** Options list fields can be narrowed on the record list, alongside Text,
  Money, Date and Linked record fields.
* **In search.** A reference number is the fastest way to land on one specific record, which
  is why teams start quoting them in chat within a week. Finding records is covered in
  <Ref to="records/find-your-records" />.
* **As the record's title.** Each record is titled by its display field. A reference number
  on its own makes a thin title, so most teams keep a descriptive Name field in that role
  and let the number sit beside it.
