---
title: "Custom fields"
description: "Define reusable incident fields, choose where their options come from, and attach them to lifecycle forms."
canonical: https://firefight.app/docs/customization/custom-fields/
---

# Custom fields

Custom fields let you capture the data your team cares about on every incident, things like affected services, impacted environment, or customer segment. You define a field once in **Settings → Custom Fields**, then attach it to one or more of the [incident forms](https://firefight.app/docs/customization/incident-forms.md) so responders fill it in at the right moment.

## Field types

Click **Add field** to create a field. Give it a name, an optional description that responders see as help text, and pick a type:

| Type | Best for |
| --- | --- |
| Text | Short or long-form text input |
| Number | Numeric input for counts or estimates |
| Link | An external reference URL |
| Single-select | One choice from a curated set |
| Multi-select | Multiple choices from a curated set |
| Catalog reference | Selecting one catalog entry |
| Catalog multi-reference | Selecting multiple catalog entries |

Each field gets a stable key derived from its name. The key is shown next to the field in the list and does not change afterward, so integrations and reports can rely on it even if you rename the field.

## Option sources

Select and reference fields need a source for their options:

| Option source | How it works |
| --- | --- |
| Fixed list | You type the options yourself, one per line |
| From catalogue | Options come from a catalog type you pick, such as Services or Teams |

Text, number, and link fields take free input and have no options. Single-select and multi-select fields can use either a fixed list or a catalog type. Catalog reference and catalog multi-reference fields always draw from a catalog type.

:::tip
Prefer catalog-backed options over fixed lists when the values represent real things like services or teams. The options stay in sync with your catalog automatically, and the answers stay structured, which makes them far easier to report on later.
:::

## Where values get filled in

A custom field only appears to responders once you attach it to a form. Attach it to the Declare form and it shows up in the dialog that opens with `/ff new`. Attach it to the Update or Resolve forms and it appears when responders post updates or resolve the incident. See [Incident forms](https://firefight.app/docs/customization/incident-forms.md) for how attaching, ordering, and required settings work.

Values captured this way appear on the incident page in the web dashboard in a Custom Fields panel, and they are included in the incident record that [AI postmortem generation](https://firefight.app/docs/postmortems/generating-with-ai.md) draws from.

## Managing fields

The list in **Settings → Custom Fields** shows every field with its type, its catalog type if it has one, and how many forms it is attached to. Click a field to edit its name, description, or options.
