---
title: "Reason for closing and re-opening issues"
description: "Make users enter a reason whenever an issue is closed or re-opened, per project type. The reason is kept in the issue history and shown in the issue list."
url: https://www.surveytester.com/academy/en/issues/reason-for-closing-issues/
language: en
type: how-to
audiences: ["SurveyTester Administrators", "Project Managers", "Survey Testers"]
published: 2026-10-16
updated: 2026-10-16
tags: ["issues", "close issue", "reopen", "reason", "audit trail", "issue history", "classification fields", "project types", "compliance"]
---

# Reason for closing and re-opening issues

_Issues · SurveyTester Academy_

When an issue disappears from the open list, the next question is usually "why?". Was it fixed in the
survey, was it not a bug at all, or was it accepted on purpose for this wave? Some teams and clients need
that answer on record for every issue. SurveyTester can require a **reason** whenever an issue is closed,
re-opened, or both. The reason is stored with the change in the issue history and is visible in the issue
list and in the issue itself.

## Why this is hard without SurveyTester

- **The status says _that_ an issue was closed, not _why_.** A closed issue that was fixed looks the same
  as one that was dismissed. Weeks later, at sign-off or in a client review, nobody remembers which was which.
- **Comments are optional.** Asking testers to "please add a comment when you close something" works for a
  week. A rule the tool enforces works for every project.
- **Issues are closed in many places.** In SurveyTester an issue closes through the **Closed** checkbox, the
  switch in the issue dialog, a classification value that closes the issue, or a bulk edit. A reason that
  is only asked for in one of these places leaves gaps.
- **Re-opening matters too.** An issue that comes back after it was closed says something about the fix.
  The reason for re-opening is often more interesting than the reason for closing.

## How it works

The requirement belongs to the **project type** (the classification field set a project uses). Two
independent settings decide whether a reason is needed when an issue is **closed** and when it is
**re-opened**.

Once a setting is on, every change of the issue status in the project asks for the reason first:

- the **Closed** checkbox in the issue list,
- the **Closed** switch in the issue dialog,
- a classification value marked **Close Issue** (for example _Status = Fixed_), in the list and in the
  issue dialog. Choosing a value that re-opens the issue asks for the re-open reason.
- **bulk edit** of several issues,
- adding a new issue that would start out closed.

The dialog cannot be confirmed with an empty text. **Cancel** leaves everything as it was: the issue keeps
its status and the classification value is not saved. Because the check also runs on the server, a status
change without a reason is never stored, even if it comes from an outdated browser tab.

![Placeholder: screenshot of the "Reason for closing" dialog in the issue list - a text box with a typed reason, the buttons "Cancel" and "Close issue"](https://www.surveytester.com/academy/_img/issues/reason-for-closing-issues/en/reason-dialog.png 'w=25rem | The reason is asked before the issue is closed')

## Step by step

### 1. Turn on the requirement for a project type

1. Open **Administration** → **Project Types** and select the project type.
2. Below the project type name, tick **Users must enter a reason when closing an issue**.
3. If re-opening needs a reason as well, also tick **Users must enter a reason when re-opening an issue**.

The setting applies immediately to all projects that use this project type. Existing issues are not changed.
When you duplicate a project type, the settings are copied with it.

![Placeholder: screenshot of Administration > Project Types with the two checkboxes below the project type name](https://www.surveytester.com/academy/_img/issues/reason-for-closing-issues/en/project-type-settings.png 'w=44rem | The two settings of a project type')

### 2. Close an issue

Tick **Closed** in the issue list, switch the issue to closed in the issue dialog, or choose a
classification value that closes the issue. The reason dialog opens. Enter the reason and click
**Close issue**.

### 3. Close several issues at once

Select the issues in the list and use **Bulk Edit**. If the change closes or re-opens issues, SurveyTester
asks **once** and stores the same reason for every issue whose status actually changes. Issues that were
already closed are not touched.

### 4. Read the reasons

- **Issue list:** add the column **Reason for closing** with the column selector. It shows the latest reason,
  marked **Closed** or **Re-opened**, with the user and the date. Hover over a long reason to read all of it.
- **Issue dialog:** the **Reason for closing** section lists every close and re-open of the issue that has
  a reason, newest first.
- **Issue history:** each status change shows its reason below the old and new value.

![Placeholder: screenshot of the issue list with the "Reason for closing" column - one row "Closed: fixed in survey version 3", another "Re-opened: still wrong in French"](https://www.surveytester.com/academy/_img/issues/reason-for-closing-issues/en/reason-column.png 'w=28rem | The latest reason in the issue list')

![Placeholder: screenshot of the issue dialog with the "Reason for closing" section listing two entries (Closed and Re-opened) with user and date](https://www.surveytester.com/academy/_img/issues/reason-for-closing-issues/en/reason-history.png 'w=40rem | All reasons of one issue')

## Good to know

- **Automatic changes need no reason.** When SurveyTester changes an issue status on its own (issues
  created from Auto-Detect findings, imports, or an administrator changing which classification values close
  an issue), no dialog appears. The history shows a note such as _Changed automatically (AutoDetect)_ instead.
- **The status stays in sync with the classification.** If a project type has classification values that
  close an issue, the status is still derived from those values. The reason is stored with exactly that
  change, so status, classification and reason always match.
- **Issues reported from the browser extension** are not blocked. A reason is stored when one is given.
- Only status changes made after the setting was turned on carry a reason. Older closes show no reason.

Related: [Classification Fields](https://www.surveytester.com/academy/en/company-admin-settings/classification-fields)
