diff --git a/vendor/magento/module-sales-rule/Model/Coupon/Usage/Processor.php b/vendor/magento/module-sales-rule/Model/Coupon/Usage/Processor.php
index 90a456d5ff8..fbb21bc69d1 100644
--- a/vendor/magento/module-sales-rule/Model/Coupon/Usage/Processor.php
+++ b/vendor/magento/module-sales-rule/Model/Coupon/Usage/Processor.php
@@ -23,7 +23,7 @@ class Processor
     private $ruleFactory;
 
     /**
-     * @var RuleFactory
+     * @var CustomerFactory
      */
     private $ruleCustomerFactory;
 
@@ -132,6 +132,7 @@ class Processor
      * @param bool $isIncrement
      * @param int $ruleId
      * @param int $customerId
+     * @throws \Exception
      */
     private function updateCustomerRuleUsages(bool $isIncrement, int $ruleId, int $customerId): void
     {
@@ -144,6 +145,9 @@ class Processor
         } elseif ($isIncrement) {
             $ruleCustomer->setCustomerId($customerId)->setRuleId($ruleId)->setTimesUsed(1);
         }
-        $ruleCustomer->save();
+
+        if ($ruleCustomer->hasData()) {
+            $ruleCustomer->save();
+        }
     }
 }
