diff --git a/doc/ci/pipelines/downstream_pipelines.md b/doc/ci/pipelines/downstream_pipelines.md
index e4560cd882d409f7df3e261c2894a0c909d3fd98..d49d382d2507d23bc624987726f6608a1ffa085c 100644
--- a/doc/ci/pipelines/downstream_pipelines.md
+++ b/doc/ci/pipelines/downstream_pipelines.md
@@ -281,7 +281,7 @@ Use:
 - The `project` keyword to specify the full path to the downstream project.
   In [GitLab 15.3 and later](https://gitlab.com/gitlab-org/gitlab/-/issues/367660),
   you can use [variable expansion](../variables/where_variables_can_be_used.md#gitlab-ciyml-file).
-- The `branch` keyword to specify the name of a branch or [tag](../../topics/git/tags.md)
+- The `branch` keyword to specify the name of a branch or [tag](../../user/project/repository/tags/index.md)
   in the project specified by `project`. You can use variable expansion.
 
 ## Trigger a multi-project pipeline by using the API
diff --git a/doc/topics/git/index.md b/doc/topics/git/index.md
index 328ea7f8a1cf345a5e1b7e466089030873efb58c..2d2a14568c6c5407a490899d87c4b1642b033759 100644
--- a/doc/topics/git/index.md
+++ b/doc/topics/git/index.md
@@ -43,7 +43,7 @@ The following resources can help you get started with Git:
 - [Git stash](stash.md)
 - [Git file blame](../../user/project/repository/git_blame.md)
 - [Git file history](../../user/project/repository/git_history.md)
-- [Git tags](tags.md)
+- [Git tags](../../user/project/repository/tags/index.md)
 
 ### Concepts
 
diff --git a/doc/topics/git/tags.md b/doc/topics/git/tags.md
index ab196f409f72ae395d89f8c645e0aab789cde363..c66c97717f2c83af8540a78686f707ddc6d4f190 100644
--- a/doc/topics/git/tags.md
+++ b/doc/topics/git/tags.md
@@ -1,41 +1,11 @@
 ---
-stage: Create
-group: Source Code
-info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
+redirect_to: '../../user/project/repository/tags/index.md'
+remove_date: '2023-05-27'
 ---
 
-# Tags **(FREE)**
+This document was moved to [another location](../../user/project/repository/tags/index.md).
 
-Tags help you mark certain deployments and releases for later
-reference. Git supports two types of tags:
-
-- Annotated tags: An unchangeable part of Git history.
-- Lightweight (soft) tags: Tags that can be set and removed as needed.
-
-Many projects combine an annotated release tag with a stable branch. Consider
-setting deployment or release tags automatically.
-
-## Tags sample workflow
-
-1. Create a lightweight tag.
-1. Create an annotated tag.
-1. Push the tags to the remote repository.
-
-```shell
-git checkout master
-
-# Lightweight tag
-git tag my_lightweight_tag
-
-# Annotated tag
-git tag -a v1.0 -m 'Version 1.0'
-
-# Show list of the existing tags
-git tag
-
-git push origin --tags
-```
-
-## Related topics
-
-- [Tagging](https://git-scm.com/book/en/v2/Git-Basics-Tagging) Git reference page
+<!-- This redirect file can be deleted after <2023-05-27>. -->
+<!-- Redirects that point to other docs in the same project expire in three months. -->
+<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. -->
+<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html -->
diff --git a/doc/user/project/protected_tags.md b/doc/user/project/protected_tags.md
index 152a55d24b75db4a965e9f8157ff0cabf9e913c4..aa0852565fd55eb6d8608d4a83ff5a4214c9d8ae 100644
--- a/doc/user/project/protected_tags.md
+++ b/doc/user/project/protected_tags.md
@@ -6,7 +6,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w
 
 # Protected tags **(FREE)**
 
-Protected tags:
+Protected [tags](repository/tags/index.md):
 
 - Allow control over who has permission to create tags.
 - Prevent accidental update or deletion once created.
@@ -106,6 +106,11 @@ Protected tags can only be deleted by using GitLab either from the UI or API.
 These protections prevent you from accidentally deleting a tag through local
 Git commands or third-party Git clients.
 
+## Related topics
+
+- [Protected Tags API](../../api/protected_tags.md)
+- [Tags API](../../api/tags.md)
+
 <!-- ## Troubleshooting
 
 Include any troubleshooting steps that you can foresee. If you know beforehand what issues
diff --git a/doc/user/project/releases/index.md b/doc/user/project/releases/index.md
index dca34af41b4de2ed48926592cc5b5ac0203761d4..7de32dccea5af0077f92c08f64172aba1178fa8a 100644
--- a/doc/user/project/releases/index.md
+++ b/doc/user/project/releases/index.md
@@ -88,7 +88,7 @@ To create a release in the Releases page:
    - [Title](release_fields.md#title).
    - [Milestones](#associate-milestones-with-a-release).
    - [Release notes](release_fields.md#release-notes-description).
-   - Whether or not to include the [Tag message](../../../topics/git/tags.md).
+   - Whether or not to include the [Tag message](../repository/tags/index.md).
    - [Asset links](release_fields.md#links).
 1. Select **Create release**.
 
diff --git a/doc/user/project/repository/tags/index.md b/doc/user/project/repository/tags/index.md
new file mode 100644
index 0000000000000000000000000000000000000000..d12a4e9f2e4173780d7f9bd6ea68f4ae0e05bdc5
--- /dev/null
+++ b/doc/user/project/repository/tags/index.md
@@ -0,0 +1,43 @@
+---
+stage: Create
+group: Source Code
+info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
+---
+
+# Tags **(FREE)**
+
+Tags help you mark certain deployments and releases for later
+reference. Git supports two types of tags:
+
+- Annotated tags: An unchangeable part of Git history.
+- Lightweight (soft) tags: Tags that can be set and removed as needed.
+
+Many projects combine an annotated release tag with a stable branch. Consider
+setting deployment or release tags automatically.
+
+## Tags sample workflow
+
+1. Create a lightweight tag.
+1. Create an annotated tag.
+1. Push the tags to the remote repository.
+
+```shell
+git checkout master
+
+# Lightweight tag
+git tag my_lightweight_tag
+
+# Annotated tag
+git tag -a v1.0 -m 'Version 1.0'
+
+# Show list of the existing tags
+git tag
+
+git push origin --tags
+```
+
+## Related topics
+
+- [Tagging](https://git-scm.com/book/en/v2/Git-Basics-Tagging) Git reference page
+- [Protected tags](../../protected_tags.md)
+- [Tags API](../../../../api/tags.md)
diff --git a/doc/user/project/repository/web_editor.md b/doc/user/project/repository/web_editor.md
index 80b0ada6f7b4a630332858fea46050ec02502567..300c2bba9e144cba501be1822002dab9c3a8ce9c 100644
--- a/doc/user/project/repository/web_editor.md
+++ b/doc/user/project/repository/web_editor.md
@@ -115,7 +115,7 @@ To create a [branch](branches/index.md) in the Web Editor:
 
 ## Create a tag
 
-You can create [tags](../../../topics/git/tags.md) to mark milestones such as
+You can create [tags](tags/index.md) to mark milestones such as
 production releases and release candidates. To create a tag in the Web Editor:
 
 1. On the top bar, select **Main menu > Projects** and find your project.