Skip to main content
Enumerations are ordered lists of named values used as options in various Redmine fields. They are managed globally from Administration → Enumerations and can optionally be overridden at the project level.

Enumeration types

Redmine includes three built-in enumeration types:

Issue priorities

Values available in the Priority field on issues. Examples: Low, Normal, High, Urgent, Immediate.

Time entry activities

Values available in the Activity field when logging time. Examples: Design, Development, Testing, Documentation.

Document categories

Values available in the Category field when uploading a document to a project.
Plugins can add additional enumeration types by subclassing Enumeration.

Enumeration fields

FieldDescription
NameDisplay name. Unique within the same type and project scope. Maximum 30 characters.
DefaultWhen checked, this value is pre-selected in the corresponding field. Only one value per type can be the default. Setting a new default clears the previous one automatically.
ActiveWhen unchecked, the value is hidden from selection menus but existing records that reference it are not affected.
PositionDisplay order. Drag to reorder values.

Issue priorities in detail

Issue priorities have additional computed behavior based on their position relative to the default priority:
Position nameMeaning
lowestThe priority at the lowest position.
low2, low3, …Priorities below the default, numbered from lowest upward.
defaultThe priority marked as default (or the middle value if none is marked).
high2, high3, …Priorities above the default.
highestThe priority at the highest position.
These position_name values are used by CSS classes (priority-highest, priority-low2, etc.) to apply visual styling to issues in lists and boards. IssuePriority automatically recomputes position names whenever a priority’s position, active status, or default flag changes.

Creating an enumeration value

1

Open Enumerations

Go to Administration → Enumerations and find the section for the type you want to add a value to (Issue priorities, Time entry activities, or Document categories).
2

Click New value

Click the New value link in the appropriate section.
3

Enter a name

Enter the display name. For issue priorities, choose names that clearly convey urgency (for example, “Low”, “Normal”, “High”).
4

Set as default (optional)

Check Default if this value should be pre-selected. Only one value per type can be the default.
5

Save

Click Create. The value is added to the end of the list.

Setting a default value

Only one value per enumeration type can be the default. When you check Default on a value and save, Redmine automatically clears the default flag on any other value of the same type:
# From enumeration.rb check_default callback
if is_default? && is_default_changed?
  Enumeration.where({:type => type}).update_all({:is_default => false})
end

Deactivating vs deleting a value

Uncheck Active on the value. It disappears from selection menus but existing records (issues, time entries, documents) that reference it are unaffected. You can reactivate it later.

Project-level overrides

Projects can override global enumeration values with project-specific variants. A project override (parent_id is set to the global value’s id) inherits the same position as the parent but can have a different active state or custom field values. This allows, for example, a project to hide the “Immediate” priority or define a custom activity that is only available in that project.
Project-level overrides are created from Project settings → Activities (for time entry activities) or similar per-project enumeration management pages, not from the global Administration panel.

Custom fields on enumerations

Enumerations support custom fields. You can add custom fields to Issue priorities, Time entry activities, and Document categories under Administration → Custom fields by selecting the corresponding entity type. For example, you could add a “Color code” custom field to issue priorities to drive custom CSS styling in a plugin.