diff --git a/src/QUI/Bricks/Events.php b/src/QUI/Bricks/Events.php
index 5ee59e603419f86aa12b9ccfa1e7efa12f9331ed..bdf35e628546291dd7e5501e1c025de859eaebb5 100644
--- a/src/QUI/Bricks/Events.php
+++ b/src/QUI/Bricks/Events.php
@@ -44,8 +44,9 @@ public static function onSiteSave($Site)
 
         QUI\Permissions\Permission::checkPermission('quiqqer.bricks.assign');
 
-        $areas = $Site->getAttribute('quiqqer.bricks.areas');
-        $areas = json_decode($areas, true);
+        $areas         = $Site->getAttribute('quiqqer.bricks.areas');
+        $oldAreaString = $areas;
+        $areas         = json_decode($areas, true);
 
         if (empty($areas)) {
             return;
@@ -166,8 +167,10 @@ public static function onSiteSave($Site)
         self::$saved[$Site->getId()] = true;
 
         // save bricks with unique ids
-        $Site->setAttribute('quiqqer.bricks.areas', json_encode($areas));
-        $Site->save();
+        if ($oldAreaString !== json_encode($areas)) {
+            $Site->setAttribute('quiqqer.bricks.areas', json_encode($areas));
+            $Site->save();
+        }
     }
 
     /**