Skip to main content
Issues are the core unit of work in Redmine. Every bug report, feature request, or task lives as an issue attached to a project. Issues have a structured set of fields, support attachments and comments, and maintain a full history of every change.

Create issues

Open new issues with tracker, priority, and assignee.

Track progress

Monitor status, done ratio, and estimated vs. spent hours.

Relate issues

Link duplicates, blockers, predecessors, and subtasks.

Creating an issue

1

Open the new issue form

Navigate to a project and click New issue in the sidebar, or use the + icon in the top navigation bar.
2

Select a tracker

Choose the Tracker (for example, Bug, Feature, or Support). Trackers control which fields are required and which workflow applies.
3

Fill in the required fields

At minimum, provide a Subject. Fill in any other fields relevant to your workflow.
4

Set optional fields

Choose the Assignee, Due date, Estimated hours, Category, and Target version as needed.
5

Submit

Click Create to save the issue. Watchers and assignees receive an email notification.

Issue fields

A short summary of the issue (maximum 255 characters). This is the only required text field.
A detailed explanation of the issue. Supports Redmine’s text formatting — CommonMark (Markdown) by default, or Textile if configured by your administrator.
Classifies the issue type — for example, Bug, Feature, or Task. Administrators configure available trackers and their default statuses.
The current state of the issue. Available statuses and allowed transitions depend on the tracker’s workflow. A status marked is_closed closes the issue and sets closed_on.
Indicates urgency. Default priorities are Low, Normal, High, Urgent, and Immediate. Administrators can add or rename priorities.
The project member or group responsible for resolving the issue. If no assignee is set, the project’s default assignee is used.
An optional label for grouping issues within a project (for example, UI, API, or Backend). Administrators define categories per project.
The version in which the issue is planned to be fixed. Used to organise roadmap and changelog views.
Optional scheduling dates. The Gantt chart and calendar use these dates to render the issue timeline.
Expected effort in hours. Must be a non-negative number. Compared against logged time to show progress.
Percentage of work completed (0–100). Can be set manually or derived automatically from the issue status.
When checked, the issue is visible only to its author, assignee, and users with a role that can view private issues.

Issue statuses and workflows

Each issue has a Status that reflects its current state in the development lifecycle. The transitions between statuses are controlled by workflows configured by administrators per tracker and role.
Whether a status is considered “closed” is determined by its is_closed flag. Closed issues have a closed_on timestamp set automatically.
Statuses can also carry a Default done ratio so that moving an issue to a given status automatically sets the completion percentage.

Issue relations

Use the Relations section on an issue to express dependencies and links between issues.
Relation typeMeaning
Relates toGeneral association between two issues
DuplicatesThis issue is a duplicate of another
Duplicated byAnother issue duplicates this one
BlocksThis issue must be resolved before another can proceed
Blocked byThis issue cannot proceed until another is resolved
PrecedesThis issue must finish before another starts (with optional delay in days)
FollowsThis issue starts after another finishes
Copied toThis issue was copied to another
Copied fromThis issue was copied from another
Cross-project relations require the Allow cross-project issue relations setting to be enabled by an administrator.
When a Precedes relation is saved, Redmine can automatically reschedule the successor issue’s start date based on the predecessor’s due date plus an optional delay.

Subtasks

Any issue can have child issues (subtasks). To add a subtask, open the issue and click Add in the Subtasks section, or set the Parent task field when creating a new issue.
  • Parent issues aggregate the estimated and spent hours of all descendants.
  • The done ratio of a parent can be derived from the average done ratio of its children.
  • Subtasks belong to the same nested set as their parent, which prevents circular dependencies.
You cannot link an issue to one of its own ancestors or descendants using an issue relation — this would create a circular dependency.

Attachments

Files can be attached to an issue at creation time or when adding a note. Common uses include screenshots, log files, and design documents. Attachments are associated with the issue’s journal entry when added as part of an update.

Custom fields

Administrators can define custom fields that appear on the issue form. Custom fields can be text, integers, dates, lists, booleans, or user references. They are scoped per tracker and project.

Filtering and listing issues

From the Issues list, use the filter bar at the top to narrow results:
  1. Click Add filter to choose a field (status, assignee, tracker, priority, etc.).
  2. Set the operator and value for each filter.
  3. Click Apply to refresh the list.
Common preset filters include Open issues, My issues, and Reported by me.

Issue history and journal

Every change to an issue is recorded in its History section. The journal shows:
  • Field changes (old value → new value) for attributes like status, assignee, and priority
  • Notes added by users
  • Attachments added or removed
  • Time entries logged
  • Related changesets from version control
Notes can be marked Private, making them visible only to members with the appropriate role.
You can watch an issue to receive email notifications for all future changes without being the assignee. Click Watch on the issue detail page.