diff --git a/app/assets/javascripts/main.js b/app/assets/javascripts/main.js
index e221a54d9c6d6e2149615262930dd3dae1efce5b..376134afef0026736d0f6f8c34e3928889fa6a2b 100644
--- a/app/assets/javascripts/main.js
+++ b/app/assets/javascripts/main.js
@@ -101,6 +101,21 @@ function deferredInitialisation() {
   initFeatureHighlight();
   initCopyCodeButton();
 
+  const helpToggle = document.querySelector('.header-help-dropdown-toggle');
+  if (helpToggle) {
+    helpToggle.addEventListener(
+      'click',
+      () => {
+        import(/* webpackChunkName: 'versionCheck' */ './gitlab_version_check')
+          .then(({ default: initGitlabVersionCheck }) => {
+            initGitlabVersionCheck();
+          })
+          .catch(() => {});
+      },
+      { once: true },
+    );
+  }
+
   const search = document.querySelector('#search');
   if (search) {
     search.addEventListener(
diff --git a/app/assets/stylesheets/framework/header.scss b/app/assets/stylesheets/framework/header.scss
index 44b099fc873d0677e9ecac3a0200e858a270af31..68535badd78ed02769f2d5498c4325c0dad1dd6e 100644
--- a/app/assets/stylesheets/framework/header.scss
+++ b/app/assets/stylesheets/framework/header.scss
@@ -150,7 +150,7 @@ $top-nav-hover-bg: var(--indigo-900-alpha-008, $indigo-900-alpha-008) !important
       }
 
       li {
-        .badge.badge-pill:not(.merge-request-badge) {
+        .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
           box-shadow: none;
           font-weight: $gl-font-weight-bold;
         }
@@ -417,7 +417,7 @@ $top-nav-hover-bg: var(--indigo-900-alpha-008, $indigo-900-alpha-008) !important
 
 .title-container,
 .navbar-nav {
-  .badge.badge-pill:not(.merge-request-badge) {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
     position: inherit;
     font-weight: $gl-font-weight-normal;
     margin-left: -6px;
diff --git a/app/assets/stylesheets/startup/startup-dark.scss b/app/assets/stylesheets/startup/startup-dark.scss
index fb96c23517ceab339d316189d8fd39b40f50b695..96dee4a3da17e1a5d2039a3e7703f7a16570586d 100644
--- a/app/assets/stylesheets/startup/startup-dark.scss
+++ b/app/assets/stylesheets/startup/startup-dark.scss
@@ -837,7 +837,7 @@ input {
   .container-fluid
   .navbar-nav
   li
-  .badge.badge-pill:not(.merge-request-badge) {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   box-shadow: none;
   font-weight: 600;
 }
@@ -920,8 +920,10 @@ input {
   line-height: 18px;
   margin: 4px 0 4px 2px;
 }
-.title-container .badge.badge-pill:not(.merge-request-badge),
-.navbar-nav .badge.badge-pill:not(.merge-request-badge) {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge),
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   position: inherit;
   font-weight: 400;
   margin-left: -6px;
@@ -932,17 +934,22 @@ input {
   border-radius: 7px;
   box-shadow: 0 1px 0 rgba(76, 78, 84, 0.2);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).green-badge,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).green-badge {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge {
   background-color: var(--green-400, #108548);
 }
 .title-container
-  .badge.badge-pill:not(.merge-request-badge).merge-requests-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).merge-requests-count {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count {
   background-color: var(--orange-400, #ab6100);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).todos-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).todos-count {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count {
   background-color: var(--blue-400, #1f75cb);
 }
 .title-container .canary-badge .badge,
diff --git a/app/assets/stylesheets/startup/startup-general.scss b/app/assets/stylesheets/startup/startup-general.scss
index 8d3c0fbb485cb1103e4e8e7419e3ef6968e1cabc..2f79c86cdc6255c45be69b82c7a1cbf56424ce57 100644
--- a/app/assets/stylesheets/startup/startup-general.scss
+++ b/app/assets/stylesheets/startup/startup-general.scss
@@ -818,7 +818,7 @@ input {
   .container-fluid
   .navbar-nav
   li
-  .badge.badge-pill:not(.merge-request-badge) {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   box-shadow: none;
   font-weight: 600;
 }
@@ -901,8 +901,10 @@ input {
   line-height: 18px;
   margin: 4px 0 4px 2px;
 }
-.title-container .badge.badge-pill:not(.merge-request-badge),
-.navbar-nav .badge.badge-pill:not(.merge-request-badge) {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge),
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   position: inherit;
   font-weight: 400;
   margin-left: -6px;
@@ -913,17 +915,22 @@ input {
   border-radius: 7px;
   box-shadow: 0 1px 0 rgba(76, 78, 84, 0.2);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).green-badge,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).green-badge {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge {
   background-color: var(--green-400, #2da160);
 }
 .title-container
-  .badge.badge-pill:not(.merge-request-badge).merge-requests-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).merge-requests-count {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count {
   background-color: var(--orange-400, #c17d10);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).todos-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).todos-count {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count {
   background-color: var(--blue-400, #428fdc);
 }
 .title-container .canary-badge .badge,
diff --git a/app/views/layouts/header/_gitlab_version.html.haml b/app/views/layouts/header/_gitlab_version.html.haml
new file mode 100644
index 0000000000000000000000000000000000000000..125fbaa084c350445df571f240c06a6ae38d5634
--- /dev/null
+++ b/app/views/layouts/header/_gitlab_version.html.haml
@@ -0,0 +1,11 @@
+- return unless show_version_check?
+
+.gl-display-flex.gl-flex-direction-column.gl-px-4.gl-py-3
+  %span
+    = s_("VersionCheck|Your GitLab Version")
+    = emoji_icon('rocket')
+  %span
+    %span.gl-font-sm.gl-text-gray-500
+      #{Gitlab.version_info.major}.#{Gitlab.version_info.minor}
+    %span.gl-ml-2
+      .js-gitlab-version-check{ data: { "size": "sm" } }
diff --git a/app/views/layouts/header/_help_dropdown.html.haml b/app/views/layouts/header/_help_dropdown.html.haml
index e2c7781da54779cc3eae0682a10d311bbab9267a..738bca2f2ccc1d3064f1ad11f2ae6dd2d25e1186 100644
--- a/app/views/layouts/header/_help_dropdown.html.haml
+++ b/app/views/layouts/header/_help_dropdown.html.haml
@@ -1,5 +1,6 @@
 %ul
   - if current_user_menu?(:help)
+    = render 'layouts/header/gitlab_version'
     = render 'layouts/header/whats_new_dropdown_item'
     %li
       = link_to _("Help"), help_path
diff --git a/ee/app/assets/stylesheets/startup/startup-dark.scss b/ee/app/assets/stylesheets/startup/startup-dark.scss
index fb96c23517ceab339d316189d8fd39b40f50b695..96dee4a3da17e1a5d2039a3e7703f7a16570586d 100644
--- a/ee/app/assets/stylesheets/startup/startup-dark.scss
+++ b/ee/app/assets/stylesheets/startup/startup-dark.scss
@@ -837,7 +837,7 @@ input {
   .container-fluid
   .navbar-nav
   li
-  .badge.badge-pill:not(.merge-request-badge) {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   box-shadow: none;
   font-weight: 600;
 }
@@ -920,8 +920,10 @@ input {
   line-height: 18px;
   margin: 4px 0 4px 2px;
 }
-.title-container .badge.badge-pill:not(.merge-request-badge),
-.navbar-nav .badge.badge-pill:not(.merge-request-badge) {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge),
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   position: inherit;
   font-weight: 400;
   margin-left: -6px;
@@ -932,17 +934,22 @@ input {
   border-radius: 7px;
   box-shadow: 0 1px 0 rgba(76, 78, 84, 0.2);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).green-badge,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).green-badge {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge {
   background-color: var(--green-400, #108548);
 }
 .title-container
-  .badge.badge-pill:not(.merge-request-badge).merge-requests-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).merge-requests-count {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count {
   background-color: var(--orange-400, #ab6100);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).todos-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).todos-count {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count {
   background-color: var(--blue-400, #1f75cb);
 }
 .title-container .canary-badge .badge,
diff --git a/ee/app/assets/stylesheets/startup/startup-general.scss b/ee/app/assets/stylesheets/startup/startup-general.scss
index 8d3c0fbb485cb1103e4e8e7419e3ef6968e1cabc..2f79c86cdc6255c45be69b82c7a1cbf56424ce57 100644
--- a/ee/app/assets/stylesheets/startup/startup-general.scss
+++ b/ee/app/assets/stylesheets/startup/startup-general.scss
@@ -818,7 +818,7 @@ input {
   .container-fluid
   .navbar-nav
   li
-  .badge.badge-pill:not(.merge-request-badge) {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   box-shadow: none;
   font-weight: 600;
 }
@@ -901,8 +901,10 @@ input {
   line-height: 18px;
   margin: 4px 0 4px 2px;
 }
-.title-container .badge.badge-pill:not(.merge-request-badge),
-.navbar-nav .badge.badge-pill:not(.merge-request-badge) {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge),
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge) {
   position: inherit;
   font-weight: 400;
   margin-left: -6px;
@@ -913,17 +915,22 @@ input {
   border-radius: 7px;
   box-shadow: 0 1px 0 rgba(76, 78, 84, 0.2);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).green-badge,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).green-badge {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).green-badge {
   background-color: var(--green-400, #2da160);
 }
 .title-container
-  .badge.badge-pill:not(.merge-request-badge).merge-requests-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).merge-requests-count {
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).merge-requests-count {
   background-color: var(--orange-400, #c17d10);
 }
-.title-container .badge.badge-pill:not(.merge-request-badge).todos-count,
-.navbar-nav .badge.badge-pill:not(.merge-request-badge).todos-count {
+.title-container
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count,
+.navbar-nav
+  .badge.badge-pill:not(.merge-request-badge):not(.version-check-badge).todos-count {
   background-color: var(--blue-400, #428fdc);
 }
 .title-container .canary-badge .badge,
diff --git a/locale/gitlab.pot b/locale/gitlab.pot
index 827ff8642528d87566cd4ed752eb7c9acc322e8f..38e9c348d1c283abea512aab935e3fb4e10733be 100644
--- a/locale/gitlab.pot
+++ b/locale/gitlab.pot
@@ -39167,6 +39167,9 @@ msgstr ""
 msgid "VersionCheck|Update available"
 msgstr ""
 
+msgid "VersionCheck|Your GitLab Version"
+msgstr ""
+
 msgid "View Documentation"
 msgstr ""
 
diff --git a/spec/features/help_dropdown_spec.rb b/spec/features/help_dropdown_spec.rb
new file mode 100644
index 0000000000000000000000000000000000000000..db98f58240da74e4170f7049198aa3da08773c9d
--- /dev/null
+++ b/spec/features/help_dropdown_spec.rb
@@ -0,0 +1,67 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+
+RSpec.describe "Help Dropdown", :js do
+  let_it_be(:user) { create(:user) }
+  let_it_be(:admin) { create(:admin) }
+
+  before do
+    stub_application_setting(version_check_enabled: true)
+  end
+
+  context 'when logged in as non-admin' do
+    before do
+      sign_in(user)
+      visit root_path
+    end
+
+    it 'does not render version data' do
+      page.within '.header-help' do
+        find('.header-help-dropdown-toggle').click
+
+        expect(page).not_to have_text('Your GitLab Version')
+        expect(page).not_to have_text("#{Gitlab.version_info.major}.#{Gitlab.version_info.minor}")
+        expect(page).not_to have_selector('.version-check-badge')
+        expect(page).not_to have_text('Up to date')
+      end
+    end
+  end
+
+  context 'when logged in as admin' do
+    before do
+      sign_in(admin)
+      gitlab_enable_admin_mode_sign_in(admin)
+    end
+
+    describe 'does render version data' do
+      where(:response, :ui_text) do
+        [
+          [{ "severity" => "success" }, 'Up to date'],
+          [{ "severity" => "warning" }, 'Update available'],
+          [{ "severity" => "danger" }, 'Update ASAP']
+        ]
+      end
+
+      with_them do
+        before do
+          allow_next_instance_of(VersionCheck) do |instance|
+            allow(instance).to receive(:response).and_return(response)
+          end
+          visit root_path
+        end
+
+        it 'renders correct version badge variant' do
+          page.within '.header-help' do
+            find('.header-help-dropdown-toggle').click
+
+            expect(page).to have_text('Your GitLab Version')
+            expect(page).to have_text("#{Gitlab.version_info.major}.#{Gitlab.version_info.minor}")
+            expect(page).to have_selector('.version-check-badge')
+            expect(page).to have_text(ui_text)
+          end
+        end
+      end
+    end
+  end
+end
diff --git a/spec/views/layouts/header/_gitlab_version.html.haml_spec.rb b/spec/views/layouts/header/_gitlab_version.html.haml_spec.rb
new file mode 100644
index 0000000000000000000000000000000000000000..0e24810f8350212c5d72e10963459acd6927a99a
--- /dev/null
+++ b/spec/views/layouts/header/_gitlab_version.html.haml_spec.rb
@@ -0,0 +1,16 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+
+RSpec.describe 'layouts/header/_gitlab_version' do
+  describe 'when show_version_check? is true' do
+    before do
+      allow(view).to receive(:show_version_check?).and_return(true)
+      render
+    end
+
+    it 'renders the version check badge' do
+      expect(rendered).to have_selector('.js-gitlab-version-check')
+    end
+  end
+end