diff --git a/app/assets/javascripts/badges/components/badge.vue b/app/assets/javascripts/badges/components/badge.vue
index 1cd5854740e90e435fa6b94ec743e7b6aa729456..54c5b038d0640c6deac09af69bcf7dcd8c3bf285 100644
--- a/app/assets/javascripts/badges/components/badge.vue
+++ b/app/assets/javascripts/badges/components/badge.vue
@@ -95,10 +95,10 @@ export default {
     <gl-loading-icon v-show="isLoading" size="sm" :inline="true" />
 
     <div v-show="hasError" class="btn-group">
-      <div class="btn btn-default btn-sm disabled">
+      <div class="btn btn-default btn-sm disabled quarantined-deprecated-btn">
         <gl-icon :size="16" class="gl-ml-3 gl-mr-3" name="doc-image" />
       </div>
-      <div class="btn btn-default btn-sm disabled">
+      <div class="btn btn-default btn-sm disabled quarantined-deprecated-btn">
         <span class="gl-ml-3 gl-mr-3">{{ s__('Badges|No badge image') }}</span>
       </div>
     </div>
diff --git a/app/assets/javascripts/environments/components/deploy_board.vue b/app/assets/javascripts/environments/components/deploy_board.vue
index 59f567f3b6a8ed532f460d926e0626f8d99e75b7..f4fb8505250e22c0812ec493955b61286fd97586 100644
--- a/app/assets/javascripts/environments/components/deploy_board.vue
+++ b/app/assets/javascripts/environments/components/deploy_board.vue
@@ -199,7 +199,7 @@ export default {
             <gl-link
               v-if="rollbackUrl"
               :href="rollbackUrl"
-              class="btn"
+              class="btn quarantined-deprecated-btn"
               data-method="post"
               rel="nofollow"
               >{{ __('Rollback') }}</gl-link
@@ -207,7 +207,7 @@ export default {
             <gl-link
               v-if="abortUrl"
               :href="abortUrl"
-              class="btn btn-danger btn-inverted"
+              class="btn btn-danger btn-inverted quarantined-deprecated-btn"
               data-method="post"
               rel="nofollow"
               >{{ __('Abort') }}</gl-link
diff --git a/app/assets/javascripts/environments/components/environments_table.vue b/app/assets/javascripts/environments/components/environments_table.vue
index 2f49ed847bf63dfbbecb9b01cf110b10716267e5..3d85d829edfc15a1a527bd171f9bf6f4e7f2282f 100644
--- a/app/assets/javascripts/environments/components/environments_table.vue
+++ b/app/assets/javascripts/environments/components/environments_table.vue
@@ -205,7 +205,7 @@ export default {
 
           <div :key="`sub-div-${i}`">
             <div class="text-center gl-mt-3">
-              <a :href="folderUrl(model)" class="btn btn-default">
+              <a :href="folderUrl(model)" class="btn btn-default quarantined-deprecated-btn">
                 {{ s__('Environments|Show all') }}
               </a>
             </div>
diff --git a/app/assets/javascripts/related_issues/components/issue_token.vue b/app/assets/javascripts/related_issues/components/issue_token.vue
index aaba23589f9c2a5dc6fc44c199a687ac7ace6f72..4a91e429c2d63fd3ae9aa5947500cf16cde6459a 100644
--- a/app/assets/javascripts/related_issues/components/issue_token.vue
+++ b/app/assets/javascripts/related_issues/components/issue_token.vue
@@ -108,7 +108,7 @@ export default {
       :class="{
         'issue-token-remove-button gl-flex gl-items-center gl-rounded-br-small gl-rounded-tr-small gl-border-0 gl-px-3 gl-text-gray-500':
           isCondensed,
-        'btn btn-default': !isCondensed,
+        'btn btn-default quarantined-deprecated-btn': !isCondensed,
       }"
       :title="removeButtonLabel"
       :aria-label="removeButtonLabel"
diff --git a/app/assets/javascripts/set_status_modal/set_status_form.vue b/app/assets/javascripts/set_status_modal/set_status_form.vue
index dc1ecea6472fe819ffa55429a08b2048b286baf0..d74f02267a7f042a149f13b305da4f5bd103f86b 100644
--- a/app/assets/javascripts/set_status_modal/set_status_form.vue
+++ b/app/assets/javascripts/set_status_modal/set_status_form.vue
@@ -184,7 +184,7 @@ export default {
       <template #prepend>
         <emoji-picker
           dropdown-class="gl-h-full"
-          toggle-class="btn emoji-menu-toggle-button !gl-px-4 !gl-rounded-tr-none !gl-rounded-br-none !gl-h-7"
+          toggle-class="btn quarantined-deprecated-btn emoji-menu-toggle-button !gl-px-4 !gl-rounded-tr-none !gl-rounded-br-none !gl-h-7"
           :right="false"
           @click="handleEmojiClick"
         >
diff --git a/app/assets/javascripts/sidebar/components/assignees/assignee_title.vue b/app/assets/javascripts/sidebar/components/assignees/assignee_title.vue
index 20fbe5824f37c57eb7c464844af998a690b9a868..177c9bc22fa4f0d3d5dfc82d48055c05dab90fef 100644
--- a/app/assets/javascripts/sidebar/components/assignees/assignee_title.vue
+++ b/app/assets/javascripts/sidebar/components/assignees/assignee_title.vue
@@ -44,7 +44,7 @@ export default {
     <gl-loading-icon v-if="loading" size="sm" inline class="align-bottom" />
     <a
       v-if="editable"
-      class="js-sidebar-dropdown-toggle edit-link btn hide-collapsed btn-default btn-sm gl-button btn-default-tertiary gl-float-right gl-ml-auto !gl-text-gray-900"
+      class="js-sidebar-dropdown-toggle edit-link btn quarantined-deprecated-btn hide-collapsed btn-default btn-sm gl-button btn-default-tertiary gl-float-right gl-ml-auto !gl-text-gray-900"
       href="#"
       data-test-id="edit-link"
       data-track-action="click_edit_button"
diff --git a/app/assets/javascripts/vue_shared/components/content_viewer/viewers/download_viewer.vue b/app/assets/javascripts/vue_shared/components/content_viewer/viewers/download_viewer.vue
index 44b4af1bb6d8ee69de3c114fd48e3cbfe0978cb2..1c2764eb2d2d2d62d7dd88589a49f0f1473ef2d5 100644
--- a/app/assets/javascripts/vue_shared/components/content_viewer/viewers/download_viewer.vue
+++ b/app/assets/javascripts/vue_shared/components/content_viewer/viewers/download_viewer.vue
@@ -41,7 +41,13 @@ export default {
         {{ fileName }}
         <template v-if="fileSize > 0"> ({{ fileSizeReadable }}) </template>
       </p>
-      <a :href="path" class="btn btn-default" rel="nofollow" :download="fileName" target="_blank">
+      <a
+        :href="path"
+        class="btn btn-default quarantined-deprecated-btn"
+        rel="nofollow"
+        :download="fileName"
+        target="_blank"
+      >
         <gl-icon :size="16" name="download" class="float-left gl-mr-3" />
         {{ __('Download') }}
       </a>
diff --git a/app/assets/javascripts/work_items/components/design_management/design_preview/close_button.vue b/app/assets/javascripts/work_items/components/design_management/design_preview/close_button.vue
index ec4e36db2efdaa67c0b596130a0299c770d46e35..5c924e5fd0efd397393d268273d1d3e2a1af3672 100644
--- a/app/assets/javascripts/work_items/components/design_management/design_preview/close_button.vue
+++ b/app/assets/javascripts/work_items/components/design_management/design_preview/close_button.vue
@@ -18,7 +18,7 @@ export default {
         query: $route.query,
       }"
       :aria-label="s__('DesignManagement|Go back to designs')"
-      class="btn btn-icon gl-mx-3 gl-border-0 gl-px-3"
+      class="btn quarantined-deprecated-btn btn-icon gl-mx-3 gl-border-0 gl-px-3"
     >
       <gl-icon name="close" />
     </router-link>
diff --git a/app/assets/stylesheets/framework/buttons.scss b/app/assets/stylesheets/framework/buttons.scss
index 4e42811926bb3b203823cc8202c97257fabbc1ee..80e9bb2904081c7cd6c29d29e95f947d2b05274a 100644
--- a/app/assets/stylesheets/framework/buttons.scss
+++ b/app/assets/stylesheets/framework/buttons.scss
@@ -92,7 +92,8 @@
   }
 }
 
-.btn {
+//The class below, formally known as "btn" should only ever be used on elements that are not yet using a pajamas compliant button
+.quarantined-deprecated-btn {
   @include btn-default;
   @include btn-white;
 
diff --git a/app/controllers/concerns/wiki_actions.rb b/app/controllers/concerns/wiki_actions.rb
index 576c6215b946361d6c7b8e63fdfb9006f33671c7..2c9870e0097b8104b61a3324315f9af6922ff46a 100644
--- a/app/controllers/concerns/wiki_actions.rb
+++ b/app/controllers/concerns/wiki_actions.rb
@@ -384,7 +384,7 @@ def file_blob
   def view_file_button(commit_sha, *args)
     path = wiki_page_path(wiki, page, version_id: page.version.id)
 
-    helpers.link_to(path, class: 'btn') do
+    helpers.link_to(path, class: 'btn quarantined-deprecated-btn') do
       helpers.raw(_('View page @ ')) + helpers.content_tag(:span, Commit.truncate_sha(commit_sha), class: 'commit-sha')
     end
   end
diff --git a/app/views/admin/application_settings/appearances/_form.html.haml b/app/views/admin/application_settings/appearances/_form.html.haml
index d8f24c3e7b815b3e051f5e7aec3bb8984f15db89..504a43cb3219108ec682630b535aff3318d245ab 100644
--- a/app/views/admin/application_settings/appearances/_form.html.haml
+++ b/app/views/admin/application_settings/appearances/_form.html.haml
@@ -50,7 +50,6 @@
           .form-text.gl-text-secondary
             = _('Maximum file size is 1MB. Pages are optimized for a 24px tall header logo')
 
-
   = render ::Layouts::SettingsSectionComponent.new(_('New project pages')) do |c|
     - c.with_body do
       .form-group
@@ -130,8 +129,8 @@
     .settings-section
       - if @appearance.persisted?
         = s_('AppearanceSettings|Preview last save:')
-        = link_to _('Sign-in page'), preview_sign_in_admin_application_settings_appearances_path, class: 'btn', target: '_blank', rel: 'noopener noreferrer'
-        = link_to _('New project page'), new_project_path, class: 'btn', target: '_blank', rel: 'noopener noreferrer'
+        = link_to _('Sign-in page'), preview_sign_in_admin_application_settings_appearances_path, class: 'btn quarantined-deprecated-btn', target: '_blank', rel: 'noopener noreferrer'
+        = link_to _('New project page'), new_project_path, class: 'btn quarantined-deprecated-btn', target: '_blank', rel: 'noopener noreferrer'
 
       - if @appearance.updated_at
         %span.gl-float-right.gl-text-secondary
diff --git a/app/views/devise/shared/_links.erb b/app/views/devise/shared/_links.erb
index f0215f5ea429644cce999a93c52c496a5589eba7..294a7be6dfa5daf0a1f34a276d7aaa055edd008c 100644
--- a/app/views/devise/shared/_links.erb
+++ b/app/views/devise/shared/_links.erb
@@ -1,5 +1,5 @@
 <%- if controller_name != 'sessions' %>
-  <%= link_to _("Sign in"), new_session_path(:user, redirect_to_referer: 'yes'), class: "btn" %><br />
+  <%= link_to _("Sign in"), new_session_path(:user, redirect_to_referer: 'yes'), class: "btn quarantined-deprecated-btn" %><br />
 <% end -%>
 
 <%- if devise_mapping.registerable? && controller_name != 'registrations' && allow_signup? %>
@@ -7,7 +7,7 @@
 <% end -%>
 
 <%- if devise_mapping.recoverable? && controller_name != 'passwords' %>
-<%= link_to _("Forgot your password?"), new_password_path(:user), class: "btn" %><br />
+<%= link_to _("Forgot your password?"), new_password_path(:user), class: "btn quarantined-deprecated-btn" %><br />
 <% end -%>
 
 <%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
diff --git a/ee/app/assets/javascripts/environments_dashboard/components/dashboard/environment_header.vue b/ee/app/assets/javascripts/environments_dashboard/components/dashboard/environment_header.vue
index 3ea43af5ab3f3b8fc3a45f92eca3d9acbcbd3020..aabb2e46cbc19452a7fde571da07297036c97f02 100644
--- a/ee/app/assets/javascripts/environments_dashboard/components/dashboard/environment_header.vue
+++ b/ee/app/assets/javascripts/environments_dashboard/components/dashboard/environment_header.vue
@@ -74,7 +74,7 @@ export default {
       v-else-if="environment.external_url"
       :link="environment.external_url"
       :display="$options.reviewButtonText"
-      css-class="btn btn-default btn-sm"
+      css-class="btn btn-default btn-sm quarantined-deprecated-btn"
     />
   </div>
 </template>
diff --git a/ee/app/assets/javascripts/sidebar/components/cve_id_request/cve_id_request.vue b/ee/app/assets/javascripts/sidebar/components/cve_id_request/cve_id_request.vue
index 852873eea7670b0f96b48f1cd7beae456056e7fd..745969c8a5d705363c0b88a1a668ab12fcdc8acf 100644
--- a/ee/app/assets/javascripts/sidebar/components/cve_id_request/cve_id_request.vue
+++ b/ee/app/assets/javascripts/sidebar/components/cve_id_request/cve_id_request.vue
@@ -109,7 +109,7 @@ export default {
         <gl-link
           :href="newCveIdRequestUrl"
           target="_blank"
-          class="btn btn-default btn-block js-cve-id-request-button"
+          class="btn btn-default btn-block js-cve-id-request-button quarantined-deprecated-btn"
           data-testid="request-button"
           >{{ $options.i18n.createRequest }}</gl-link
         >
@@ -131,7 +131,7 @@ export default {
               <gl-link
                 :href="helpHref"
                 target="_blank"
-                class="btn btn-default js-cve-id-request-learn-more-link"
+                class="btn btn-default js-cve-id-request-learn-more-link quarantined-deprecated-btn"
                 >{{ $options.i18n.learnMore }}</gl-link
               >
             </div>
diff --git a/ee/spec/frontend/environments_dashboard/components/__snapshots__/environment_header_spec.js.snap b/ee/spec/frontend/environments_dashboard/components/__snapshots__/environment_header_spec.js.snap
index 9ed947018e26ea262e50045278c702a3f9d61337..272f6027687d673cb5019f1a00ee7146794144a3 100644
--- a/ee/spec/frontend/environments_dashboard/components/__snapshots__/environment_header_spec.js.snap
+++ b/ee/spec/frontend/environments_dashboard/components/__snapshots__/environment_header_spec.js.snap
@@ -20,7 +20,7 @@ exports[`Environment Header has a failed pipeline matches the snapshot 1`] = `
     </gl-link-stub>
   </div>
   <review-app-link-stub
-    cssclass="btn btn-default btn-sm"
+    cssclass="btn btn-default btn-sm quarantined-deprecated-btn"
     display="[object Object]"
     link="http://example.com"
     size="medium"
@@ -48,7 +48,7 @@ exports[`Environment Header has errors matches the snapshot 1`] = `
     </gl-link-stub>
   </div>
   <review-app-link-stub
-    cssclass="btn btn-default btn-sm"
+    cssclass="btn btn-default btn-sm quarantined-deprecated-btn"
     display="[object Object]"
     link="http://example.com"
     size="medium"
@@ -76,7 +76,7 @@ exports[`Environment Header renders name and link to app matches the snapshot 1`
     </a>
   </div>
   <a
-    class="btn btn-default btn-md btn-sm gl-button"
+    class="btn btn-default btn-md btn-sm gl-button quarantined-deprecated-btn"
     data-track-action="open_review_app"
     data-track-label="review_app"
     href="http://example.com"