diff --git a/blenderkit/__init__.py b/blenderkit/__init__.py
index 7b22279d1e93bffd0191c4aa60c93c18313ccc50..7bd5fe8da46909432e056bec57862f5ae13619f8 100644
--- a/blenderkit/__init__.py
+++ b/blenderkit/__init__.py
@@ -569,6 +569,9 @@ class BlenderKitCommonSearchProps(object):
 
     unrated_only: BoolProperty(name="Unrated only", description="Show only unrated models",
                                default=False, update=search.search_update)
+    quality_limit: IntProperty(name="Quality limit",
+                               description = 'Only show assets with a higher quality',
+                               default=0, min=0, max=10, update=search.search_update)
 
 
 def name_update(self, context):
diff --git a/blenderkit/ratings_utils.py b/blenderkit/ratings_utils.py
index 37c1c971b0b3fe607f2074a65bb2ac18f27aa59a..67a791394734f143466e32b8489d9cd33a00583c 100644
--- a/blenderkit/ratings_utils.py
+++ b/blenderkit/ratings_utils.py
@@ -70,8 +70,8 @@ def send_rating_to_thread_work_hours(url, ratings, headers):
 
 def store_rating_local_empty(asset_id):
     context = bpy.context
-    context.window_manager['asset ratings'] = context.window_manager.get('asset ratings', {})
-    context.window_manager['asset ratings'][asset_id] = context.window_manager['asset ratings'].get(asset_id, {})
+    ar = context.window_manager['asset ratings']
+    ar[asset_id] = ar.get(asset_id, {})
 
 
 def store_rating_local(asset_id, type='quality', value=0):
diff --git a/blenderkit/search.py b/blenderkit/search.py
index b58dd28db9c13c570820eb529f0e62d35f00b996..59f9f8388bfb4e051c4e3f379b91eb4875275b4c 100644
--- a/blenderkit/search.py
+++ b/blenderkit/search.py
@@ -1081,6 +1081,9 @@ def build_query_common(query, props):
         query_common["files_size_gte"] = props.search_file_size_min * 1024 * 1024
         query_common["files_size_lte"] = props.search_file_size_max * 1024 * 1024
 
+    if props.quality_limit > 0:
+        query["quality_gte"] = props.quality_limit
+        
     query.update(query_common)
 
 
@@ -1106,6 +1109,7 @@ def build_query_model():
     # if props.search_advanced:
     if props.search_condition != 'UNSPECIFIED':
         query["condition"] = props.search_condition
+
     if props.search_design_year:
         query["designYear_gte"] = props.search_design_year_min
         query["designYear_lte"] = props.search_design_year_max
diff --git a/blenderkit/ui_panels.py b/blenderkit/ui_panels.py
index bc20169f452d570eb564ac1285c7b13853382146..f09f0b2ad8bf404e99972cf6abe3631721ec9f00 100644
--- a/blenderkit/ui_panels.py
+++ b/blenderkit/ui_panels.py
@@ -819,6 +819,7 @@ class VIEW3D_PT_blenderkit_advanced_model_search(Panel):
 
         # AGE
         layout.prop(props, "search_condition", text='Condition')  # , text ='condition of object new/old e.t.c.')
+        layout.prop(props, "quality_limit", slider=True)  # , text ='condition of object new/old e.t.c.')
 
         # layout.prop(props, "search_procedural", expand=True)
         # ADULT
@@ -867,7 +868,7 @@ class VIEW3D_PT_blenderkit_advanced_material_search(Panel):
             row = layout.row(align=True)
             row.prop(props, "search_file_size_min", text='Min')
             row.prop(props, "search_file_size_max", text='Max')
-
+        layout.prop(props, "quality_limit", slider=True)
 
 class VIEW3D_PT_blenderkit_categories(Panel):
     bl_category = "BlenderKit"