diff --git a/app/graphql/resolvers/namespace_projects_resolver.rb b/app/graphql/resolvers/namespace_projects_resolver.rb
index f0781058beae0e2a453d29ba452b52e52ddf4314..1e8a7365fc0ff90ce908792caf7983e8de947cfb 100644
--- a/app/graphql/resolvers/namespace_projects_resolver.rb
+++ b/app/graphql/resolvers/namespace_projects_resolver.rb
@@ -7,6 +7,11 @@ class NamespaceProjectsResolver < BaseResolver
              default_value: false,
              description: 'Include also subgroup projects.'
 
+    argument :include_archived, GraphQL::Types::Boolean,
+             required: false,
+             default_value: true,
+             description: 'Include also archived projects.'
+
     argument :not_aimed_for_deletion, GraphQL::Types::Boolean,
              required: false,
              default_value: false,
@@ -65,6 +70,7 @@ def namespace
     def finder_params(args)
       {
         include_subgroups: args.dig(:include_subgroups),
+        include_archived: args.dig(:include_archived),
         not_aimed_for_deletion: args.dig(:not_aimed_for_deletion),
         sort: args.dig(:sort),
         search: args.dig(:search),
diff --git a/doc/api/graphql/reference/index.md b/doc/api/graphql/reference/index.md
index b21e82c9b541e93935c8ebfc3408ed5480f69b80..92363f5dad8fa2ea2f1aa07eacc8eb2da7bfa03b 100644
--- a/doc/api/graphql/reference/index.md
+++ b/doc/api/graphql/reference/index.md
@@ -20240,6 +20240,7 @@ four standard [pagination arguments](#connection-pagination-arguments):
 | <a id="groupprojectshascodecoverage"></a>`hasCodeCoverage` | [`Boolean`](#boolean) | Returns only the projects which have code coverage. |
 | <a id="groupprojectshasvulnerabilities"></a>`hasVulnerabilities` | [`Boolean`](#boolean) | Returns only the projects which have vulnerabilities. |
 | <a id="groupprojectsids"></a>`ids` | [`[ID!]`](#id) | Filter projects by IDs. |
+| <a id="groupprojectsincludearchived"></a>`includeArchived` | [`Boolean`](#boolean) | Include also archived projects. |
 | <a id="groupprojectsincludesubgroups"></a>`includeSubgroups` | [`Boolean`](#boolean) | Include also subgroup projects. |
 | <a id="groupprojectsnotaimedfordeletion"></a>`notAimedForDeletion` | [`Boolean`](#boolean) | Include projects that are not aimed for deletion. |
 | <a id="groupprojectssbomcomponentid"></a>`sbomComponentId` | [`ID`](#id) | Return only the projects related to the specified SBOM component. |
@@ -23297,6 +23298,7 @@ four standard [pagination arguments](#connection-pagination-arguments):
 | <a id="namespaceprojectshascodecoverage"></a>`hasCodeCoverage` | [`Boolean`](#boolean) | Returns only the projects which have code coverage. |
 | <a id="namespaceprojectshasvulnerabilities"></a>`hasVulnerabilities` | [`Boolean`](#boolean) | Returns only the projects which have vulnerabilities. |
 | <a id="namespaceprojectsids"></a>`ids` | [`[ID!]`](#id) | Filter projects by IDs. |
+| <a id="namespaceprojectsincludearchived"></a>`includeArchived` | [`Boolean`](#boolean) | Include also archived projects. |
 | <a id="namespaceprojectsincludesubgroups"></a>`includeSubgroups` | [`Boolean`](#boolean) | Include also subgroup projects. |
 | <a id="namespaceprojectsnotaimedfordeletion"></a>`notAimedForDeletion` | [`Boolean`](#boolean) | Include projects that are not aimed for deletion. |
 | <a id="namespaceprojectssbomcomponentid"></a>`sbomComponentId` | [`ID`](#id) | Return only the projects related to the specified SBOM component. |
diff --git a/spec/graphql/resolvers/namespace_projects_resolver_spec.rb b/spec/graphql/resolvers/namespace_projects_resolver_spec.rb
index 3ae19078c30b2b69d2b8f94c3862d9293d5e9eb6..5b93605e1d921fc64e56bef4741063a984d205c5 100644
--- a/spec/graphql/resolvers/namespace_projects_resolver_spec.rb
+++ b/spec/graphql/resolvers/namespace_projects_resolver_spec.rb
@@ -25,7 +25,7 @@
     let(:group) { create(:group) }
     let(:namespace) { group }
     let(:project1) { create(:project, namespace: namespace) }
-    let(:project2) { create(:project, namespace: namespace) }
+    let(:project2) { create(:project, :archived, namespace: namespace) }
     let(:project3) { create(:project, namespace: namespace, marked_for_deletion_at: 1.day.ago, pending_delete: true) }
     let(:nested_group) { create(:group, parent: group) }
     let(:nested_project) { create(:project, group: nested_group) }
@@ -54,6 +54,12 @@
         expect(resolve_projects(arg)).to contain_exactly(project1, project2)
       end
 
+      it 'can filter out archived projects' do
+        arg = { include_archived: false }
+
+        expect(resolve_projects(arg)).to contain_exactly(project1, project3)
+      end
+
       it 'finds all projects not aimed for deletion including the subgroups' do
         args[:not_aimed_for_deletion] = true