Deleting a user account

Users can be deleted from a GitLab instance, either by:

  • The user themselves.
  • An administrator.
note
Deleting a user deletes all projects in that user namespace.

Delete your own account

As a user, to delete your own account:

  1. On the top bar, in the upper-right corner, select your avatar.
  2. Select Edit profile.
  3. On the left sidebar, select Account.
  4. Select Delete account.

Delete users and user contributions

As an administrator, to delete a user account:

  1. On the top bar, select Main menu > Admin.
  2. On the left sidebar, select Overview > Users.
  3. Select a user.
  4. Under the Account tab, select:
    • Delete user to delete only the user but maintain their associated records. You can’t use this option if the selected user is the sole owner of any groups.
    • Delete user and contributions to delete the user and their associated records. This option also removes all groups (and projects within these groups) where the user is the sole direct Owner of a group. Inherited ownership doesn’t apply.
caution
Using the Delete user and contributions option may result in removing more data than intended. See associated records for additional details.

Associated records

When deleting users, you can either:

  • Delete just the user. Not all associated records are deleted with the user. Instead of being deleted, these records are moved to a system-wide user with the username Ghost User. The Ghost User’s purpose is to act as a container for such records. Any commits made by a deleted user still display the username of the original user.
  • Delete the user and their contributions, including:
    • Abuse reports.
    • Award emojis.
    • Epics.
    • Groups of which the user is the only user with the Owner role.
    • Issues.
    • Merge requests.
    • Notes and comments.
    • Personal access tokens.
    • Snippets.

An alternative to deleting is blocking a user.

When a user is deleted from an abuse report or spam log, these associated records are always removed.

The deleting associated records option can be requested in the API as well as the Admin Area.

Troubleshooting

Deleting a user results in a PostgreSQL null value error

There is a known issue that results in users not being deleted, and the following error generated:

ERROR: null value in column "user_id" violates not-null constraint

The error can be found in the PostgreSQL log and in the Retries section of the background jobs view in the Admin Area.

If the user being deleted used the iterations feature, such as adding an issue to an iteration, you must use the workaround documented in the issue to delete the user.