diff --git a/sen2chain/tiles.py b/sen2chain/tiles.py
index eee87c2662e3a801264ace2ff2fd8ae0650d909c..b497f4b28677b21884b526f703c7dc926e92befd 100644
--- a/sen2chain/tiles.py
+++ b/sen2chain/tiles.py
@@ -170,6 +170,7 @@ class ProductsList:
         self, 
         cover_min: int = 0, 
         cover_max: int = 100,
+        select_none: bool = True,
     ) -> "ProductsList":
         """Filters products list with a cloud coverage range.
 
@@ -180,13 +181,13 @@ class ProductsList:
         """
         filtered = ProductsList()
         for k, v in self._dict.items():
-            if v["cloud_cover"] >= 0:
+            if not v["cloud_cover"] is None:
                 if cover_min <= v["cloud_cover"] <= cover_max:
                     filtered[k] = {
                         "date": v["date"],
                         "cloud_cover": v["cloud_cover"],
                     }
-            else:
+            elif select_none:
                 filtered[k] = {
                     "date": v["date"],
                     "cloud_cover": v["cloud_cover"],
@@ -2293,6 +2294,7 @@ class Tile:
         remove: bool = False,
         cloudcover_above: int = 0,
         cloudcover_below: int = 100,
+        select_none: bool = False,
         dates_after: str = "2015-01-01", 
         dates_before: str = "9999-12-31",
     ):
@@ -2333,6 +2335,7 @@ class Tile:
             prod_list_filtered = prod_list.filter_clouds(
                 cover_min = cloudcover_above, 
                 cover_max = cloudcover_below,
+                select_none = select_none,
             ).filter_dates(
                 date_min = dates_after,
                 date_max = dates_before,
@@ -2377,6 +2380,7 @@ class Tile:
         remove: bool = False,
         cloudcover_above: int = 0,
         cloudcover_below: int = 100,
+        select_none:bool = False,
         dates_after: str = "2015-01-01", 
         dates_before: str = "9999-12-31",
     ):
@@ -2419,6 +2423,7 @@ class Tile:
             prod_list_filtered = prod_list.filter_clouds(
                 cover_min = cloudcover_above, 
                 cover_max = cloudcover_below,
+                select_none = select_none,
             ).filter_dates(
                 date_min = dates_after,
                 date_max = dates_before,
@@ -2480,6 +2485,7 @@ class Tile:
         remove: bool = False,
         cloudcover_above: int = 0,
         cloudcover_below: int = 100,
+        select_none:bool = False,
         dates_after: str = "2015-01-01", 
         dates_before: str = "9999-12-31",
         cm_strings: list = [],
@@ -2491,6 +2497,8 @@ class Tile:
             ).filter_clouds(
                 cover_min = cloudcover_above, 
                 cover_max = cloudcover_below,
+                select_none = select_none,
+                
             ).filter_dates(
                 date_min = dates_after,
                 date_max = dates_before,
@@ -2536,6 +2544,7 @@ class Tile:
         indice_list: list = [],
         cloudcover_above: int = 0,
         cloudcover_below: int = 100,
+        select_none: bool = False,
         dates_after: str = "2015-01-01", 
         dates_before: str = "9999-12-31",
         cm_strings: list = [],
@@ -2552,6 +2561,7 @@ class Tile:
                 ).filter_clouds(
                     cover_min = cloudcover_above, 
                     cover_max = cloudcover_below,
+                    select_none = select_none,
                 ).filter_dates(
                     date_min = dates_after,
                     date_max = dates_before,