diff --git a/.gitlab/ci/rails.gitlab-ci.yml b/.gitlab/ci/rails.gitlab-ci.yml
index b4793f91d36923c7ea1daee8f458fd1bb33b9bd8..0095e667449d9f673e958ec076c5e3ef4132f56e 100644
--- a/.gitlab/ci/rails.gitlab-ci.yml
+++ b/.gitlab/ci/rails.gitlab-ci.yml
@@ -38,7 +38,7 @@
   needs: ["setup-test-env", "retrieve-tests-metadata", "compile-test-assets", "detect-tests"]
   script:
     - !reference [.base-script, script]
-    - rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"
+    - rspec_paralellized_job "--tag ~quarantine --tag ~level:migration"
 
 .base-artifacts:
   artifacts:
@@ -61,7 +61,7 @@
     - .rails:rules:ee-and-foss-migration
   script:
     - !reference [.base-script, script]
-    - rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag level:migration"
+    - rspec_paralellized_job "--tag ~quarantine --tag level:migration"
 
 .rspec-base-pg11:
   extends:
@@ -123,33 +123,6 @@
     - .rspec-base
     - .use-pg13-ee
 
-.rspec-ee-base-geo:
-  extends: .rspec-base
-  script:
-    - !reference [.base-script, script]
-    - rspec_paralellized_job "--tag ~quarantine --tag geo"
-
-.rspec-ee-base-geo-pg11:
-  extends:
-    - .rspec-ee-base-geo
-    - .use-pg11-ee
-
-.rspec-ee-base-geo-pg12:
-  extends:
-    - .rspec-ee-base-geo
-    - .use-pg12-ee
-
-.rspec-jh-base-geo-pg12:
-  extends:
-    - .rspec-jh-base-pg12
-  script:
-    - !reference [.rspec-ee-base-geo, script]
-
-.rspec-ee-base-geo-pg13:
-  extends:
-    - .rspec-ee-base-geo
-    - .use-pg13-ee
-
 .db-job-base:
   extends:
     - .rails-job-base
@@ -172,10 +145,7 @@
   parallel: 22
 
 .rspec-ee-unit-parallel:
-  parallel: 14
-
-.rspec-ee-unit-geo-parallel:
-  parallel: 2
+  parallel: 16
 
 .rspec-integration-parallel:
   parallel: 10
@@ -522,9 +492,6 @@ rspec:deprecations:
     - rspec-ee unit pg12
     - rspec-ee integration pg12
     - rspec-ee system pg12
-    - rspec-ee unit pg12 geo
-    - rspec-ee integration pg12 geo
-    - rspec-ee system pg12 geo
   variables:
     SETUP_DB: "false"
   script:
@@ -576,14 +543,6 @@ rspec:coverage:
     - rspec-ee unit pg12 single-db
     - rspec-ee integration pg12 single-db
     - rspec-ee system pg12 single-db
-    # Geo jobs
-    - rspec-ee unit pg12 geo
-    - rspec-ee integration pg12 geo
-    - rspec-ee system pg12 geo
-    # Geo minimal jobs
-    - rspec-ee unit pg12 geo minimal
-    - rspec-ee integration pg12 geo minimal
-    - rspec-ee system pg12 geo minimal
     # Memory jobs
     - memory-on-boot
     # As-if-FOSS jobs
@@ -878,40 +837,6 @@ rspec-ee system pg12 single-db:
     - .single-db-rspec
     - .rails:rules:single-db
 
-rspec-ee unit pg12 geo:
-  extends:
-    - .rspec-ee-base-geo-pg12
-    - .rails:rules:ee-only-unit
-    - .rspec-ee-unit-geo-parallel
-
-rspec-ee unit pg12 geo minimal:
-  extends:
-    - rspec-ee unit pg12 geo
-    - .minimal-rspec-tests
-    - .rails:rules:ee-only-unit:minimal
-
-rspec-ee integration pg12 geo:
-  extends:
-    - .rspec-ee-base-geo-pg12
-    - .rails:rules:ee-only-integration
-
-rspec-ee integration pg12 geo minimal:
-  extends:
-    - rspec-ee integration pg12 geo
-    - .minimal-rspec-tests
-    - .rails:rules:ee-only-integration:minimal
-
-rspec-ee system pg12 geo:
-  extends:
-    - .rspec-ee-base-geo-pg12
-    - .rails:rules:ee-only-system
-
-rspec-ee system pg12 geo minimal:
-  extends:
-    - rspec-ee system pg12 geo
-    - .minimal-rspec-tests
-    - .rails:rules:ee-only-system:minimal
-
 rspec-ee migration pg12-as-if-jh:
   extends:
     - .rspec-jh-base-pg12
@@ -937,22 +862,6 @@ rspec-ee system pg12-as-if-jh:
     - .rails:rules:as-if-jh-rspec
     - .rspec-ee-system-parallel
 
-rspec-ee unit pg12-as-if-jh geo:
-  extends:
-    - .rspec-jh-base-geo-pg12
-    - .rails:rules:as-if-jh-rspec
-    - .rspec-ee-unit-geo-parallel
-
-rspec-ee integration pg12-as-if-jh geo:
-  extends:
-    - .rspec-jh-base-geo-pg12
-    - .rails:rules:as-if-jh-rspec
-
-rspec-ee system pg12-as-if-jh geo:
-  extends:
-    - .rspec-jh-base-geo-pg12
-    - .rails:rules:as-if-jh-rspec
-
 rspec-jh migration pg12-as-if-jh:
   extends:
     - .rspec-jh-base-pg12
@@ -974,21 +883,6 @@ rspec-jh system pg12-as-if-jh:
     - .rspec-jh-base-pg12
     - .rails:rules:as-if-jh-rspec
 
-rspec-jh unit pg12-as-if-jh geo:
-  extends:
-    - .rspec-jh-base-geo-pg12
-    - .rails:rules:as-if-jh-rspec
-
-rspec-jh integration pg12-as-if-jh geo:
-  extends:
-    - .rspec-jh-base-geo-pg12
-    - .rails:rules:as-if-jh-rspec
-
-rspec-jh system pg12-as-if-jh geo:
-  extends:
-    - .rspec-jh-base-geo-pg12
-    - .rails:rules:as-if-jh-rspec
-
 db:rollback geo:
   extends:
     - db:rollback
@@ -1086,22 +980,6 @@ rspec-ee system pg11:
     - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
     - .rspec-ee-system-parallel
 
-rspec-ee unit pg11 geo:
-  extends:
-    - .rspec-ee-base-geo-pg11
-    - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
-    - .rspec-ee-unit-geo-parallel
-
-rspec-ee integration pg11 geo:
-  extends:
-    - .rspec-ee-base-geo-pg11
-    - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
-
-rspec-ee system pg11 geo:
-  extends:
-    - .rspec-ee-base-geo-pg11
-    - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
-
 # PG13
 rspec-ee migration pg13:
   extends:
@@ -1127,22 +1005,6 @@ rspec-ee system pg13:
     - .rspec-ee-base-pg13
     - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
     - .rspec-ee-system-parallel
-
-rspec-ee unit pg13 geo:
-  extends:
-    - .rspec-ee-base-geo-pg13
-    - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
-    - .rspec-ee-unit-geo-parallel
-
-rspec-ee integration pg13 geo:
-  extends:
-    - .rspec-ee-base-geo-pg13
-    - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
-
-rspec-ee system pg13 geo:
-  extends:
-    - .rspec-ee-base-geo-pg13
-    - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only
 # EE: default branch nightly scheduled jobs #
 #####################################
 
diff --git a/.gitlab/ci/test-metadata.gitlab-ci.yml b/.gitlab/ci/test-metadata.gitlab-ci.yml
index 20cbd759ac6d2c4f26736bc56a54be359fc557b6..79fea15690cef566eac668ebe94b3bce00189a43 100644
--- a/.gitlab/ci/test-metadata.gitlab-ci.yml
+++ b/.gitlab/ci/test-metadata.gitlab-ci.yml
@@ -38,9 +38,6 @@ update-tests-metadata:
     - rspec-ee unit pg12
     - rspec-ee integration pg12
     - rspec-ee system pg12
-    - rspec-ee unit pg12 geo
-    - rspec-ee integration pg12 geo
-    - rspec-ee system pg12 geo
   script:
     - run_timed_command "retry gem install fog-aws mime-types activesupport rspec_profiling postgres-copy --no-document"
     - source ./scripts/rspec_helpers.sh
diff --git a/spec/tooling/quality/test_level_spec.rb b/spec/tooling/quality/test_level_spec.rb
index c72e90dc7136975395a46531f8cb2fc472f2c83a..98034eb4b0adb1bd3300bf95dbf35abad31c1089 100644
--- a/spec/tooling/quality/test_level_spec.rb
+++ b/spec/tooling/quality/test_level_spec.rb
@@ -11,13 +11,6 @@
       end
     end
 
-    context 'when level is geo' do
-      it 'returns a pattern' do
-        expect(subject.pattern(:geo))
-        .to eq("spec/**{,/**/}*_spec.rb")
-      end
-    end
-
     context 'when level is frontend_fixture' do
       it 'returns a pattern' do
         expect(subject.pattern(:frontend_fixture))
@@ -93,13 +86,6 @@
       end
     end
 
-    context 'when level is geo' do
-      it 'returns a regexp' do
-        expect(subject.regexp(:geo))
-        .to eq(%r{spec/})
-      end
-    end
-
     context 'when level is frontend_fixture' do
       it 'returns a regexp' do
         expect(subject.regexp(:frontend_fixture))
diff --git a/tooling/quality/test_level.rb b/tooling/quality/test_level.rb
index fd86708bb7db58c0b42785ba0e4a2ec04ca98304..6e58241bccb4a99bde9d8a9a54da5e5f0821a9bb 100644
--- a/tooling/quality/test_level.rb
+++ b/tooling/quality/test_level.rb
@@ -139,8 +139,7 @@ def folders_pattern(level)
       case level
       when :migration
         "{#{migration_and_background_migration_folders.join(',')}}"
-      # Geo specs aren't in a specific folder, but they all have the :geo tag, so we must search for them globally
-      when :all, :geo
+      when :all
         '**'
       else
         "{#{TEST_LEVEL_FOLDERS.fetch(level).join(',')}}"
@@ -151,8 +150,7 @@ def folders_regex(level)
       case level
       when :migration
         "(#{migration_and_background_migration_folders.join('|')})"
-      # Geo specs aren't in a specific folder, but they all have the :geo tag, so we must search for them globally
-      when :all, :geo
+      when :all
         ''
       else
         "(#{TEST_LEVEL_FOLDERS.fetch(level).join('|')})"