diff --git a/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php b/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php
index 6e6f008d49f7e..ecd1c07dcb963 100644
--- a/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php
+++ b/vendor/magento/module-analytics/Model/Config/Backend/Baseurl/SubscriptionUpdateHandler.php
@@ -24,7 +24,7 @@ class SubscriptionUpdateHandler
     /**
      * Config path for schedule setting of update handler.
      */
-    const UPDATE_CRON_STRING_PATH = "crontab/default/jobs/analytics_update/schedule/cron_expr";
+    public const UPDATE_CRON_STRING_PATH = "crontab/analytics/jobs/analytics_update/schedule/cron_expr";
 
     /**
      * Flag code for the previous Base URL.
diff --git a/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php b/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php
index 20e86db4c20a0..a5ab00b9c6190 100644
--- a/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php
+++ b/vendor/magento/module-analytics/Model/Config/Backend/CollectionTime.php
@@ -23,7 +23,7 @@ class CollectionTime extends Value
     /**
      * The path to config setting of schedule of collection data cron.
      */
-    public const CRON_SCHEDULE_PATH = 'crontab/default/jobs/analytics_collect_data/schedule/cron_expr';
+    public const CRON_SCHEDULE_PATH = 'crontab/analytics/jobs/analytics_collect_data/schedule/cron_expr';
 
     /**
      * @var WriterInterface
diff --git a/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php b/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php
index 4b125949948c6..6c4aef1c354c2 100644
--- a/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php
+++ b/vendor/magento/module-analytics/Model/Config/Backend/Enabled/SubscriptionHandler.php
@@ -24,7 +24,7 @@ class SubscriptionHandler
     /**
      * Config path for schedule setting of subscription handler.
      */
-    const CRON_STRING_PATH = 'crontab/default/jobs/analytics_subscribe/schedule/cron_expr';
+    public const CRON_STRING_PATH = 'crontab/analytics/jobs/analytics_subscribe/schedule/cron_expr';
 
     /**
      * Config value for schedule setting of subscription handler.
diff --git a/vendor/magento/module-analytics/Setup/Patch/Data/MoveCronConfigToAnalyticsGroup.php b/vendor/magento/module-analytics/Setup/Patch/Data/MoveCronConfigToAnalyticsGroup.php
new file mode 100644
index 0000000000000..bb539f07079d6
--- /dev/null
+++ b/vendor/magento/module-analytics/Setup/Patch/Data/MoveCronConfigToAnalyticsGroup.php
@@ -0,0 +1,76 @@
+<?php
+/**
+ * Copyright 2025 Adobe
+ * All Rights Reserved.
+ */
+
+declare(strict_types=1);
+
+namespace Magento\Analytics\Setup\Patch\Data;
+
+use Magento\Framework\App\ResourceConnection;
+use Magento\Framework\Setup\Patch\DataPatchInterface;
+
+/**
+ * Migrate legacy cron config paths for analytics jobs from the "default" group to the "analytics" group.
+ */
+class MoveCronConfigToAnalyticsGroup implements DataPatchInterface
+{
+    /**
+     * @var ResourceConnection
+     */
+    private $resourceConnection;
+
+    /**
+     * @param ResourceConnection $resourceConnection
+     */
+    public function __construct(
+        ResourceConnection $resourceConnection
+    ) {
+        $this->resourceConnection = $resourceConnection;
+    }
+
+    /**
+     * @inheritDoc
+     */
+    public function apply()
+    {
+        $connection = $this->resourceConnection->getConnection();
+        $table = $this->resourceConnection->getTableName('core_config_data');
+
+        // Find all analytics cron rows under the "default" cron group
+        $select = $connection->select()
+            ->from($table, ['config_id', 'scope', 'scope_id', 'path', 'value'])
+            ->where('path LIKE ?', 'crontab/default/jobs/analytics_%');
+        $rows = (array)$connection->fetchAll($select);
+
+        foreach ($rows as $row) {
+            $oldPath = (string)$row['path'];
+            $newPath = (string)preg_replace('#^crontab/default/#', 'crontab/analytics/', $oldPath);
+
+            $connection->update(
+                $table,
+                ['path' => $newPath],
+                ['config_id = ?' => (int)$row['config_id']]
+            );
+        }
+
+        return $this;
+    }
+
+    /**
+     * @inheritDoc
+     */
+    public static function getDependencies()
+    {
+        return [];
+    }
+
+    /**
+     * @inheritDoc
+     */
+    public function getAliases()
+    {
+        return [];
+    }
+}
diff --git a/vendor/magento/module-analytics/etc/cron_groups.xml b/vendor/magento/module-analytics/etc/cron_groups.xml
new file mode 100644
index 0000000000000..897df713dcf01
--- /dev/null
+++ b/vendor/magento/module-analytics/etc/cron_groups.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * Copyright 2025 Adobe
+ * All Rights Reserved.
+ */
+-->
+<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Cron:etc/cron_groups.xsd">
+    <group id="analytics">
+        <schedule_generate_every>15</schedule_generate_every>
+        <schedule_ahead_for>20</schedule_ahead_for>
+        <schedule_lifetime>15</schedule_lifetime>
+        <history_cleanup_every>10</history_cleanup_every>
+        <history_success_lifetime>60</history_success_lifetime>
+        <history_failure_lifetime>4320</history_failure_lifetime>
+        <use_separate_process>1</use_separate_process>
+    </group>
+</config>
diff --git a/vendor/magento/module-analytics/etc/crontab.xml b/vendor/magento/module-analytics/etc/crontab.xml
index a4beef0359540..8556a8f579e35 100644
--- a/vendor/magento/module-analytics/etc/crontab.xml
+++ b/vendor/magento/module-analytics/etc/crontab.xml
@@ -6,7 +6,7 @@
  */
 -->
 <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Cron:etc/crontab.xsd">
-    <group id="default">
+    <group id="analytics">
         <job name="analytics_subscribe" instance="Magento\Analytics\Cron\SignUp" method="execute" />
         <job name="analytics_update" instance="Magento\Analytics\Cron\Update" method="execute" />
         <job name="analytics_collect_data" instance="Magento\Analytics\Cron\CollectData" method="execute" />
diff --git a/vendor/magento/module-analytics/etc/di.xml b/vendor/magento/module-analytics/etc/di.xml
index 3615bd9ca2d32..6ba1d74d2a011 100644
--- a/vendor/magento/module-analytics/etc/di.xml
+++ b/vendor/magento/module-analytics/etc/di.xml
@@ -260,9 +260,9 @@
                 <item name="analytics/general/token" xsi:type="string">1</item>
             </argument>
             <argument name="environment" xsi:type="array">
-                <item name="crontab/default/jobs/analytics_collect_data/schedule/cron_expr" xsi:type="string">1</item>
-                <item name="crontab/default/jobs/analytics_update/schedule/cron_expr" xsi:type="string">1</item>
-                <item name="crontab/default/jobs/analytics_subscribe/schedule/cron_expr" xsi:type="string">1</item>
+                <item name="crontab/analytics/jobs/analytics_collect_data/schedule/cron_expr" xsi:type="string">1</item>
+                <item name="crontab/analytics/jobs/analytics_update/schedule/cron_expr" xsi:type="string">1</item>
+                <item name="crontab/analytics/jobs/analytics_subscribe/schedule/cron_expr" xsi:type="string">1</item>
             </argument>
         </arguments>
     </type>

