 Dataset Availability
 20170328T00:00:00Z–20240719T14:28:00Z
 Dataset Provider
 European Union/ESA/Copernicus
 Earth Engine Snippet

ee.ImageCollection("COPERNICUS/S2_SR")
 Tags
Description
See also collection COPERNICUS/S2_SR_HARMONIZED that shifts data with PROCESSING_BASELINE '04.00' or above (after 20220125) to be in the same range as in older scenes.
Sentinel2 is a wideswath, highresolution, multispectral imaging mission supporting Copernicus Land Monitoring studies, including the monitoring of vegetation, soil and water cover, as well as observation of inland waterways and coastal areas.
The Sentinel2 L2 data are downloaded from scihub. They were computed by running sen2cor. WARNING: ESA did not produce L2 data for all L1 assets, and earlier L2 coverage is not global.
The assets contain 12 UINT16 spectral bands representing SR scaled by 10000 (unlike in L1 data, there is no B10). There are also several more L2specific bands (see band list for details). See the Sentinel2 User Handbook for details. In addition, three QA bands are present where one (QA60) is a bitmask band with cloud mask information. For more details, see the full explanation of how cloud masks are computed.
EE asset ids for Sentinel2 L2 assets have the following format: COPERNICUS/S2_SR/20151128T002653_20151128T102149_T56MNN. Here the first numeric part represents the sensing date and time, the second numeric part represents the product generation date and time, and the final 6character string is a unique granule identifier indicating its UTM grid reference (see MGRS).
For datasets to assist with cloud and/or cloud shadow detection, see COPERNICUS/S2_CLOUD_PROBABILITY and GOOGLE/CLOUD_SCORE_PLUS/V1/S2_HARMONIZED.
For more details on Sentinel2 radiometric resolution, see this page.
Bands
Bands
Name  Units  Min  Max  Scale  Pixel Size  Wavelength  Description  

B1 
0.0001  60 meters  443.9nm (S2A) / 442.3nm (S2B)  Aerosols 

B2 
0.0001  10 meters  496.6nm (S2A) / 492.1nm (S2B)  Blue 

B3 
0.0001  10 meters  560nm (S2A) / 559nm (S2B)  Green 

B4 
0.0001  10 meters  664.5nm (S2A) / 665nm (S2B)  Red 

B5 
0.0001  20 meters  703.9nm (S2A) / 703.8nm (S2B)  Red Edge 1 

B6 
0.0001  20 meters  740.2nm (S2A) / 739.1nm (S2B)  Red Edge 2 

B7 
0.0001  20 meters  782.5nm (S2A) / 779.7nm (S2B)  Red Edge 3 

B8 
0.0001  10 meters  835.1nm (S2A) / 833nm (S2B)  NIR 

B8A 
0.0001  20 meters  864.8nm (S2A) / 864nm (S2B)  Red Edge 4 

B9 
0.0001  60 meters  945nm (S2A) / 943.2nm (S2B)  Water vapor 

B11 
0.0001  20 meters  1613.7nm (S2A) / 1610.4nm (S2B)  SWIR 1 

B12 
0.0001  20 meters  2202.4nm (S2A) / 2185.7nm (S2B)  SWIR 2 

AOT 
0.001  10 meters  Aerosol Optical Thickness 

WVP 
cm  0.001  10 meters  Water Vapor Pressure. The height the water would occupy if the vapor were condensed into liquid and spread evenly across the column. 

SCL 
1  11  20 meters  Scene Classification Map (The "No Data" value of 0 is masked out) 

TCI_R 
10 meters  True Color Image, Red channel 

TCI_G 
10 meters  True Color Image, Green channel 

TCI_B 
10 meters  True Color Image, Blue channel 

MSK_CLDPRB 
0  100  20 meters  Cloud Probability Map (missing in some products) 

MSK_SNWPRB 
0  100  10 meters  Snow Probability Map (missing in some products) 

QA10 
10 meters  Always empty 

QA20 
20 meters  Always empty 

QA60 
60 meters  Cloud mask 

SCL Class Table
Value  Color  Description 

1  #ff0004  Saturated or defective 
2  #868686  Dark Area Pixels 
3  #774b0a  Cloud Shadows 
4  #10d22c  Vegetation 
5  #ffff52  Bare Soils 
6  #0000ff  Water 
7  #818181  Clouds Low Probability / Unclassified 
8  #c0c0c0  Clouds Medium Probability 
9  #f1f1f1  Clouds High Probability 
10  #bac5eb  Cirrus 
11  #52fff9  Snow / Ice 
Image Properties
Image Properties
Name  Type  Description 

AOT_RETRIEVAL_ACCURACY  DOUBLE  Accuracy of Aerosol Optical thickness model 
CLOUDY_PIXEL_PERCENTAGE  DOUBLE  Granulespecific cloudy pixel percentage taken from the original metadata 
CLOUD_COVERAGE_ASSESSMENT  DOUBLE  Cloudy pixel percentage for the whole archive that contains this granule. Taken from the original metadata 
CLOUDY_SHADOW_PERCENTAGE  DOUBLE  Percentage of pixels classified as cloud shadow 
DARK_FEATURES_PERCENTAGE  DOUBLE  Percentage of pixels classified as dark features or shadows 
DATASTRIP_ID  STRING  Unique identifier of the datastrip Product Data Item (PDI) 
DATATAKE_IDENTIFIER  STRING  Uniquely identifies a given Datatake. The ID contains the Sentinel2 satellite, start date and time, absolute orbit number, and processing baseline. 
DATATAKE_TYPE  STRING  MSI operation mode 
DEGRADED_MSI_DATA_PERCENTAGE  DOUBLE  Percentage of degraded MSI and ancillary data 
FORMAT_CORRECTNESS  STRING  Synthesis of the OnLine Quality Control (OLQC) checks performed at granule (Product_Syntax) and datastrip (Product Syntax and DS_Consistency) levels 
GENERAL_QUALITY  STRING  Synthesis of the OLQC checks performed at the datastrip level (Relative_Orbit_Number) 
GENERATION_TIME  DOUBLE  Product generation time 
GEOMETRIC_QUALITY  STRING  Synthesis of the OLQC checks performed at the datastrip level (Attitude_Quality_Indicator) 
GRANULE_ID  STRING  Unique identifier of the granule PDI (PDI_ID) 
HIGH_PROBA_CLOUDS_PERCENTAGE  DOUBLE  Percentage of pixels classified as high probability clouds 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B1  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B1 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B2  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B2 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B3  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B3 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B4  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B4 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B5  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B5 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B6  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B6 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B7  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B7 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B8  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B8 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B8A  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B8a and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B9  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B9 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B10  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B10 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B11  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B11 and for all detectors 
MEAN_INCIDENCE_AZIMUTH_ANGLE_B12  DOUBLE  Mean value containing viewing incidence azimuth angle average for band B12 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B1  DOUBLE  Mean value containing viewing incidence zenith angle average for band B1 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B2  DOUBLE  Mean value containing viewing incidence zenith angle average for band B2 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B3  DOUBLE  Mean value containing viewing incidence zenith angle average for band B3 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B4  DOUBLE  Mean value containing viewing incidence zenith angle average for band B4 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B5  DOUBLE  Mean value containing viewing incidence zenith angle average for band B5 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B6  DOUBLE  Mean value containing viewing incidence zenith angle average for band B6 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B7  DOUBLE  Mean value containing viewing incidence zenith angle average for band B7 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B8  DOUBLE  Mean value containing viewing incidence zenith angle average for band B8 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B8A  DOUBLE  Mean value containing viewing incidence zenith angle average for band B8a and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B9  DOUBLE  Mean value containing viewing incidence zenith angle average for band B9 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B10  DOUBLE  Mean value containing viewing incidence zenith angle average for band B10 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B11  DOUBLE  Mean value containing viewing incidence zenith angle average for band B11 and for all detectors 
MEAN_INCIDENCE_ZENITH_ANGLE_B12  DOUBLE  Mean value containing viewing incidence zenith angle average for band B12 and for all detectors 
MEAN_SOLAR_AZIMUTH_ANGLE  DOUBLE  Mean value containing sun azimuth angle average for all bands and detectors 
MEAN_SOLAR_ZENITH_ANGLE  DOUBLE  Mean value containing sun zenith angle average for all bands and detectors 
MEDIUM_PROBA_CLOUDS_PERCENTAGE  DOUBLE  Percentage of pixels classified as medium probability clouds 
MGRS_TILE  STRING  USMilitary Grid Reference System (MGRS) tile 
NODATA_PIXEL_PERCENTAGE  DOUBLE  Percentage of No Data pixels 
NOT_VEGETATED_PERCENTAGE  DOUBLE  Percentage of pixels classified as nonvegetated 
PROCESSING_BASELINE  STRING  Configuration baseline used at the time of the product generation in terms of processor software version and major Ground Image Processing Parameters (GIPP) version 
PRODUCT_ID  STRING  The full id of the original Sentinel2 product 
RADIATIVE_TRANSFER_ACCURACY  DOUBLE  Accuracy of radiative transfer model 
RADIOMETRIC_QUALITY  STRING  Based on the OLQC reports contained in the Datastrips/QI_DATA with RADIOMETRIC_QUALITY checklist name 
REFLECTANCE_CONVERSION_CORRECTION  DOUBLE  EarthSun distance correction factor 
SATURATED_DEFECTIVE_PIXEL_PERCENTAGE  DOUBLE  Percentage of saturated or defective pixels 
SENSING_ORBIT_DIRECTION  STRING  Imaging orbit direction 
SENSING_ORBIT_NUMBER  DOUBLE  Imaging orbit number 
SENSOR_QUALITY  STRING  Synthesis of the OLQC checks performed at granule (Missing_Lines, Corrupted_ISP, and Sensing_Time) and datastrip (Degraded_SAD and Datation_Model) levels 
SOLAR_IRRADIANCE_B1  DOUBLE  Mean solar exoatmospheric irradiance for band B1 
SOLAR_IRRADIANCE_B2  DOUBLE  Mean solar exoatmospheric irradiance for band B2 
SOLAR_IRRADIANCE_B3  DOUBLE  Mean solar exoatmospheric irradiance for band B3 
SOLAR_IRRADIANCE_B4  DOUBLE  Mean solar exoatmospheric irradiance for band B4 
SOLAR_IRRADIANCE_B5  DOUBLE  Mean solar exoatmospheric irradiance for band B5 
SOLAR_IRRADIANCE_B6  DOUBLE  Mean solar exoatmospheric irradiance for band B6 
SOLAR_IRRADIANCE_B7  DOUBLE  Mean solar exoatmospheric irradiance for band B7 
SOLAR_IRRADIANCE_B8  DOUBLE  Mean solar exoatmospheric irradiance for band B8 
SOLAR_IRRADIANCE_B8A  DOUBLE  Mean solar exoatmospheric irradiance for band B8a 
SOLAR_IRRADIANCE_B9  DOUBLE  Mean solar exoatmospheric irradiance for band B9 
SOLAR_IRRADIANCE_B10  DOUBLE  Mean solar exoatmospheric irradiance for band B10 
SOLAR_IRRADIANCE_B11  DOUBLE  Mean solar exoatmospheric irradiance for band B11 
SOLAR_IRRADIANCE_B12  DOUBLE  Mean solar exoatmospheric irradiance for band B12 
SNOW_ICE_PERCENTAGE  DOUBLE  Percentage of pixels classified as snow or ice 
SPACECRAFT_NAME  STRING  Sentinel2 spacecraft name: Sentinel2A, Sentinel2B 
THIN_CIRRUS_PERCENTAGE  DOUBLE  Percentage of pixels classified as thin cirrus clouds 
UNCLASSIFIED_PERCENTAGE  DOUBLE  Percentage of unclassified pixels 
VEGETATION_PERCENTAGE  DOUBLE  Percentage of pixels classified as vegetation 
WATER_PERCENTAGE  DOUBLE  Percentage of pixels classified as water 
WATER_VAPOUR_RETRIEVAL_ACCURACY  DOUBLE  Declared accuracy of the Water Vapor model 
Terms of Use
Terms of Use
The use of Sentinel data is governed by the Copernicus Sentinel Data Terms and Conditions.
Explore with Earth Engine
Code Editor (JavaScript)
/** * Function to mask clouds using the Sentinel2 QA band * @param {ee.Image} image Sentinel2 image * @return {ee.Image} cloud masked Sentinel2 image */ function maskS2clouds(image) { var qa = image.select('QA60'); // Bits 10 and 11 are clouds and cirrus, respectively. var cloudBitMask = 1 << 10; var cirrusBitMask = 1 << 11; // Both flags should be set to zero, indicating clear conditions. var mask = qa.bitwiseAnd(cloudBitMask).eq(0) .and(qa.bitwiseAnd(cirrusBitMask).eq(0)); return image.updateMask(mask).divide(10000); } var dataset = ee.ImageCollection('COPERNICUS/S2_SR') .filterDate('20200101', '20200130') // Prefilter to get less cloudy granules. .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE',20)) .map(maskS2clouds); var visualization = { min: 0.0, max: 0.3, bands: ['B4', 'B3', 'B2'], }; Map.setCenter(83.277, 17.7009, 12); Map.addLayer(dataset.mean(), visualization, 'RGB');
import ee import geemap.core as geemap
Colab (Python)
def mask_s2_clouds(image): """Masks clouds in a Sentinel2 image using the QA band. Args: image (ee.Image): A Sentinel2 image. Returns: ee.Image: A cloudmasked Sentinel2 image. """ qa = image.select('QA60') # Bits 10 and 11 are clouds and cirrus, respectively. cloud_bit_mask = 1 << 10 cirrus_bit_mask = 1 << 11 # Both flags should be set to zero, indicating clear conditions. mask = ( qa.bitwiseAnd(cloud_bit_mask) .eq(0) .And(qa.bitwiseAnd(cirrus_bit_mask).eq(0)) ) return image.updateMask(mask).divide(10000) dataset = ( ee.ImageCollection('COPERNICUS/S2_SR') .filterDate('20200101', '20200130') # Prefilter to get less cloudy granules. .filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20)) .map(mask_s2_clouds) ) visualization = { 'min': 0.0, 'max': 0.3, 'bands': ['B4', 'B3', 'B2'], } m = geemap.Map() m.set_center(83.277, 17.7009, 12) m.add_layer(dataset.mean(), visualization, 'RGB') m