> ## Documentation Index
> Fetch the complete documentation index at: https://help.broadstripes.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom fields

> Create and manage custom fields to capture data specific to your organizing campaign that doesn't fit in built-in fields

## Overview

Data that is permanently relevant about the worker (such as "Shift" and "Issues of Concern") – but can't logically be mapped to one of [Broadstripes' built-in fields](./built-in-data) – is best captured in a **custom field**.

## How is a custom field different from an event?

A custom field differs from an [event](./creating-an-event) in a few ways.

**Events** (which are covered in their own articles – [Using events to track goals](/docs/customize/create-events-to-track-goals) and [Creating an event](./creating-an-event)) are probably the most widely-used custom data tool in Broadstripes. Use them to:

* record data that is being tracked for a **certain period of time** (such as a worker's involvement in rallies and marches)
* record important **one-time information** or **occurrences** (like the signing of a petition or union card).
* record information that can be captured using a **checkbox** (events do not allow any other data types)

**Custom fields** may not be as commonly used as events, but custom fields have two key advantages:

* They can **capture a wide variety of data types** (text, date, checkbox, memo (long text), dropdown box, multi-select dropdown), whereas events can only use checkboxes to capture data.
* They are **more directly and permanently associated with the worker** (or organization) for which they are created than events, which are typically used to capture time-sensitive data.

## Examples of custom fields

Here are some examples of what custom fields often record:

* the date a worker signed a card
* a checkbox to indicate that a union member is in good standing with dues
* a multi-select dropdown box that allows you to indicate which issues are most important to each worker

Broadstripes allows you to create an unlimited number of numeric, date, checkbox, radio button true/false, text, and memo (longer text) custom fields. Custom fields can apply to people, organizations, or both.

Read on to learn more about working with custom fields:

## Create a new custom field

This section describes the process of creating one type of custom field called a "drop-down box." Custom fields can be set up to capture other data, too (dates, checkboxes and so on). If you're still unclear about what custom fields are, or whether you need them to capture your data, please read [Data tools overview](./data-tools-overview).

For this example, we are going to capture the top area of interest (e.g. contracts, scheduling, or grievances) for a potential leader in a new custom field called "**Interests**":

1. Get started by logging in to your project as a user with admin permissions. Go to **Settings > Custom fields** in the upper right-hand corner of the page. That will take you to your project's custom field index, a page listing any custom fields already created in the project.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/be8a67a-CustomCustomFields.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=9b684ae5504d430b0ef4e89e4dbbfe52" alt="Custom fields settings page" width="512" height="686" data-path="images/admin-guides/data-tools/custom-fields/be8a67a-CustomCustomFields.png" />

2. Create a new field by clicking the **+ New Custom Field** button.

<img src="https://mintcdn.com/broadstripes/Wl9UFoz7fGdmnAFP/images/admin-guides/data-tools/custom-fields/CustFieldNewr.png?fit=max&auto=format&n=Wl9UFoz7fGdmnAFP&q=85&s=e0fb5cf69dc0ccd034f9d9f4c918549c" alt="New custom field button" width="889" height="285" data-path="images/admin-guides/data-tools/custom-fields/CustFieldNewr.png" />

### Configure the custom field

Use the form that opens to create your new custom field.

1. **Name** the custom field. Use a clear and concise name, and avoid punctuation if you can help it — it makes searching on the field trickier.
2. Give the field a **Description**. The description will be displayed in a pop-up box as guidance for your users.
3. Check **Enabled**. If a custom field's data ever becomes irrelevant, but you are not ready to delete it, you can uncheck this box to disable the field. You can also use the **Visible to admins only** and **Editable by admins only** options to control who can see or change the field — see [Control who can see and edit a custom field](#control-who-can-see-and-edit-a-custom-field) below.
4. (Optional) Link your field to the correct **External system**. A custom field linked to an external system is updated when you import a new spreadsheet. If no external system is selected, the field will need to be updated manually by users via data entry. For this example, we'll choose **Legacy CRM Database** as the external system since that is where our worker records will be imported from.
5. Next, for **Applies to**, select the **type of contact** the field will be used for (Person, Organization, or All contacts). For our example, we'll choose **Person**, since we are tracking a person's interests.
6. Choose the **Field type** to determine how your data choices will be displayed (e.g. radio buttons, check boxes, multiple-selection chooser, text input, etc). For our example, we'll choose **Drop-down Chooser** because we want users to choose from one of several pre-selected options.
7. Click **Save Custom Field** to advance to the next screen and customize your field type options (in our example, this means adding the choices that show up in the drop-down list we're creating).

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/CustFieldConfig.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=77289745d0a863c11b850bf1f40e525f" alt="Custom field configuration form" width="800" height="808" data-path="images/admin-guides/data-tools/custom-fields/CustFieldConfig.png" />

8. After saving, you'll have the chance to add your drop-down list options on a new screen.

### Add field value options

After clicking **Save**, you'll go to a new panel where you can add the options you want to appear in the drop-down chooser. Scroll to the bottom of the page to find a tabbed interface with two ways to add options:

#### Add a single option

Use the **Add a single option** tab to add options one at a time:

1. Type the **Name** of the option (for instance, "Contracts").
2. Click **Add Option**.
3. Repeat to add additional choices.

<img src="https://mintcdn.com/broadstripes/Wl9UFoz7fGdmnAFP/images/admin-guides/data-tools/custom-fields/CustFieldOptions.png?fit=max&auto=format&n=Wl9UFoz7fGdmnAFP&q=85&s=09b0e8c216fd5f1d7eca40168e8f1785" alt="Adding custom field options" width="514" height="370" data-path="images/admin-guides/data-tools/custom-fields/CustFieldOptions.png" />

#### Add multiple options at once

Use the **Add multiple options** tab to add up to 50 options at once:

1. Click the **Add multiple options** tab.
2. Type or paste your options into the text area, with each option on its own line.
3. Click **Add options**.

Broadstripes will add all valid options and skip any duplicates. You'll see a confirmation message indicating how many options were added and how many duplicates were skipped.

#### Indicating a default option

If you want a certain option to be selected automatically by default when your end users are entering a new contact in Broadstripes, check **Default** before saving that option.

<img src="https://mintcdn.com/broadstripes/Wl9UFoz7fGdmnAFP/images/admin-guides/data-tools/custom-fields/CustFieldOptionsDefaultSm.png?fit=max&auto=format&n=Wl9UFoz7fGdmnAFP&q=85&s=41880ad7d2ff36ed122c0b25b8c516e7" alt="Setting a default option" width="515" height="128" data-path="images/admin-guides/data-tools/custom-fields/CustFieldOptionsDefaultSm.png" />

### Change the order of the drop-down values

1. Once you are done adding all of your options, you can **click and drag** to re-order the way they will appear in the drop-down.
2. Just **click and hold** the row you want to move. When the correct row is selected (it will be highlighted in yellow), **hold and drag** it to the new spot. **Release** to drop it in place.

<img src="https://mintcdn.com/broadstripes/Wl9UFoz7fGdmnAFP/images/admin-guides/data-tools/custom-fields/CustFieldOptionsReorder.png?fit=max&auto=format&n=Wl9UFoz7fGdmnAFP&q=85&s=47ea0aeeea1b81de98d7f67d2ac20d84" alt="Reordering custom field options" width="427" height="184" data-path="images/admin-guides/data-tools/custom-fields/CustFieldOptionsReorder.png" />

3. When you are done adding and rearranging your custom field options, click **Custom Fields** to see the new field you've created on the **Custom Fields overview** page.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/8033d11-CustDone.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=b600d280f5c7d1a920d5095e13cc276d" alt="Completed custom field" width="520" height="94" data-path="images/admin-guides/data-tools/custom-fields/8033d11-CustDone.png" />

## Edit, disable, or delete a custom field

1. Go to **Settings > Custom fields** in the upper right-hand corner of the page.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/0605b74-CustomCustomFields.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=f8d22bfed47e09c50fd96a5d9c575bf7" alt="Custom fields index page" width="512" height="686" data-path="images/admin-guides/data-tools/custom-fields/0605b74-CustomCustomFields.png" />

2. From the **custom fields index page**, you can see all the custom fields that have been created for your project.
3. You can also edit, disable, or delete a custom field from this page by clicking **edit** (to edit or disable) or **delete** at the end of that field's row.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/083fbb8-CustAllEdit.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=29b6c204cfbfa33fcec823d643391ad4" alt="Edit and delete options for custom fields" width="1210" height="460" data-path="images/admin-guides/data-tools/custom-fields/083fbb8-CustAllEdit.png" />

## Edit a custom field

1. Click **edit** on the right-hand side of the row of the field you want to modify.
2. First, you'll be shown the **configuration options page**.
3. Here you can edit the **name**, **description**, whether or not the field is **enabled**, or choose to link the field to an **external system**. If you need more details, all these configuration options are covered in the "Create a custom field" section above.

#### Field type cannot be edited

You will not be able to change the field type of your custom field — field type is chosen when the field is created and cannot be altered later.

4. You can make changes to the configuration options, or leave the configuration as-is and advance to field options, by clicking **Save Custom Field**.
5. You'll be shown a second panel, where you can **add**, **edit**, **delete**, or **rearrange** the **Custom Field Options.** Field options are the actual choices shown in the field's drop-down list, or the labels next to its checkboxes, radio buttons, etc.
6. Any changes you make will be saved as soon as you make them.
7. When your edits are complete, click the **Custom Fields** menu link to return to the custom field index page and see the changes you've made.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/22bbfd4-CustDone.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=e5c462d93de1be64c0cd106e5022add9" alt="Custom field editing completed" width="520" height="94" data-path="images/admin-guides/data-tools/custom-fields/22bbfd4-CustDone.png" />

## Control who can see and edit a custom field

Two settings on the custom field form let you restrict what basic users can do with a field's value.

**Visible to admins only** — The field is hidden entirely from basic users. Only project admins can see or set the field's value. Use this for sensitive internal notes that organizers should not see.

**Editable by admins only** — Basic users can see the field's current value, but cannot change it. When a basic user views a person or organization record, the field is displayed alongside a <Icon icon="lock" iconType="light" color="#545454" /> lock icon to indicate it is read-only. Use this when you want organizers to see a piece of information (for example, a classification imported from payroll) without being able to overwrite it.

These two settings are mutually exclusive: a field cannot be both visible-to-admins-only and editable-by-admins-only at the same time.

### Editable-by-admins-only fields in the Call Center

When a call script includes a custom field marked "Editable by admins only," callers see the field's current value displayed as plain text with a "(read-only)" label. The field is skipped when the script collects responses, so callers cannot inadvertently overwrite the value.

### Editable-by-admins-only fields and public forms

Custom fields marked "Editable by admins only" do not appear in [public forms](/docs/admin-guides/public-forms/public-forms-overview). Public forms are filled out by people who are not project users, so read-only fields have no function there and are excluded automatically.

### Editable-by-admins-only fields and data imports

A basic user with the **Can perform data imports** permission can still set or update admin-editable-only fields through a spreadsheet import. When you grant a basic user that permission, the confirmation dialog notes this capability explicitly so you can make an informed decision.

## Disable a custom field

If a custom field's data is no longer relevant, but you aren't ready to delete it, the field can be disabled. Disabling a field means it is hidden from your users' view; you also won't be able to search or report on it. If you ever want to retrieve the data from a disabled field, just re-enable the field. The data will be viewable again and nothing will be lost.

In this example, we'll be disabling a custom field named "Interests."

1. Start at the project's custom field index page by choosing **Settings > Custom fields** in the upper right-hand corner of any page.
2. Find the custom field you want to disable in the list, and click the **edit** link at the end of that field's row.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/e67788b-CustAllEdit.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=892f6b677145e501d83ec735e7429f9b" alt="Editing a custom field to disable it" width="1210" height="460" data-path="images/admin-guides/data-tools/custom-fields/e67788b-CustAllEdit.png" />

3. This will take you to the custom field's edit page.
4. Locate the **Enabled checkbox** and **uncheck** it.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/e4da610-CustDeselectEnabled.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=83c9cfc3f62333bc7d3ef682eed68deb" alt="Unchecking the enabled checkbox" width="715" height="337" data-path="images/admin-guides/data-tools/custom-fields/e4da610-CustDeselectEnabled.png" />

5. At the bottom of the page, click **Save Custom Field**.
6. You'll be shown a second panel — just leave this as it is.
7. Click the **Custom Fields tab** to return to the custom field index page.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/007f1b7-CustDone.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=48b90fe317f6e66599b5bba8ed9cf878" alt="Returning to custom fields overview" width="520" height="94" data-path="images/admin-guides/data-tools/custom-fields/007f1b7-CustDone.png" />

8. On the index page, you can see that your custom field is no longer enabled.

<img src="https://mintcdn.com/broadstripes/qpWv-CwmzaAYpNkt/images/admin-guides/data-tools/custom-fields/71f85da-CustDisabledDone.png?fit=max&auto=format&n=qpWv-CwmzaAYpNkt&q=85&s=5029d99f8a398ac15a8d62c1e5653b64" alt="Disabled custom field in the list" width="75" height="250" data-path="images/admin-guides/data-tools/custom-fields/71f85da-CustDisabledDone.png" />

### What if I want to see the data again?

The data in a disabled custom field remains in Broadstripes' database. Because it's disabled, it will disappear from data-entry forms, and it won't show up on reports. You also won't be able to search using values from that custom field as your search criteria. If you decide that you need to see the data again (or use it for a search or in a report), you can simply repeat the steps above. When you get to the custom field edit page (step 3), check **Enable** and save your change. The custom field's data will be viewable (and searchable) again.

### What if I have a calculated column based on a disabled custom field?

If you have a calculated column whose search text refers to a disabled custom field, its results will be inaccurate because search criteria involving that custom field will not work as they used to. The column should be changed or deleted.

## Delete a custom field

#### Deleting a custom field is permanent

Deleting a custom field removes the field *and all its associated data* permanently from your project.

If you want to keep a custom field and its associated data in your project, but want it hidden from your users' view, you should **disable** the field rather than delete it. Read more in the "Disable a custom field" section above.

1. Start at the project's custom field index page by choosing **Settings > Custom fields** in the upper right-hand corner of any page.
2. To permanently delete a custom field, click **delete** on the right-hand side of the row of the custom field you want to delete.
3. Broadstripes will warn you that both the custom field and all data records held in the field will be deleted, and that the deletion cannot be undone.
4. Click **Delete** to remove the custom field and all associated data from your project.

<img src="https://mintcdn.com/broadstripes/Wl9UFoz7fGdmnAFP/images/admin-guides/data-tools/custom-fields/b09ee8f-CustDelete.png?fit=max&auto=format&n=Wl9UFoz7fGdmnAFP&q=85&s=c2e5e6e2f08daa36e493b7bde3c3c535" alt="Deleting a custom field confirmation" width="383" height="230" data-path="images/admin-guides/data-tools/custom-fields/b09ee8f-CustDelete.png" />
