Skip to content

Landsat 8 & 9 (USGS/NASA)


Provider
USGS / NASA
Website
Access Level
ðŸŸĄ Free Registration (USGS) | ðŸ”ĩ GEE
Resolution
30m (multispectral), 15m (panchromatic)
Archive
1972 (Landsat-1) to present — 50+ year record
Revisit Time
16 days (each satellite)

Why Landsat Is Unique

Landsat's superpower is its long archive. No other free satellite has data going back to 1972. This makes it perfect for:

  • Tracking urban growth from 1980 to 2024
  • Measuring lake and reservoir shrinkage over decades
  • Detecting deforestation going back 30+ years
  • Analysing agricultural change across policy periods

Landsat Bands (Landsat 8/9 OLI)

Band Name Wavelength Key Use
B1 Coastal/Aerosol 443nm Water, haze
B2 Blue 482nm True colour
B3 Green 562nm True colour
B4 Red 655nm True colour, NDVI
B5 Near Infrared (NIR) 865nm NDVI, vegetation
B6 SWIR-1 1610nm Soil moisture, burn
B7 SWIR-2 2200nm Geology
B8 Panchromatic 591nm 15m resolution sharpening
B10 Thermal Infrared 10.9Ξm Land Surface Temperature
B11 Thermal Infrared 12.0Ξm Land Surface Temperature

Access Methods

Method 1: USGS EarthExplorer (Direct Download) ðŸŸĄ

  1. Register at earthexplorer.usgs.gov
  2. Draw your area of interest on the map
  3. Select dates and cloud cover threshold
  4. Under "Data Sets" → Select "Landsat Collection 2 Level 2" (atmospherically corrected)
  5. View results → Click Download → Choose GeoTIFF

Each Landsat scene is ~900 MB for all bands. Download only your area with spatial subsetting.

// GEE: Landsat NDVI Trend Analysis 2000–2023 for a Forest Area
var forest_point = ee.Geometry.Point([76.5, 12.0]); // Western Ghats

// Get annual NDVI values (dry season = March)
var years = ee.List.sequence(2000, 2023);

var annualNDVI = years.map(function(year) {
  var l8 = ee.ImageCollection("LANDSAT/LC08/C02/T1_L2")
    .merge(ee.ImageCollection("LANDSAT/LC09/C02/T1_L2"))
    .filterBounds(forest_point)
    .filter(ee.Filter.calendarRange(year, year, 'year'))
    .filter(ee.Filter.calendarRange(2, 4, 'month'))  // Feb-Apr (dry season)
    .filter(ee.Filter.lt('CLOUD_COVER', 20))
    .median()
    .multiply(0.0000275).add(-0.2);  // Scale factor for Collection 2

  var ndvi = l8.normalizedDifference(['SR_B5', 'SR_B4']);
  var mean = ndvi.reduceRegion({
    reducer: ee.Reducer.mean(),
    geometry: forest_point.buffer(5000),
    scale: 30
  });
  return ee.Feature(null, {'year': year, 'NDVI': mean.get('nd')});
});

var chart = ui.Chart.feature.byFeature(
  ee.FeatureCollection(annualNDVI), 'year', 'NDVI'
).setOptions({
  title: 'Annual NDVI Trend — Western Ghats (2000-2023)',
  hAxis: {title: 'Year'},
  vAxis: {title: 'Mean NDVI', minValue: 0.3, maxValue: 0.8}
});
print(chart);

✏ïļ Practice Exercise

Exercise 5.4 — Track Urban Expansion 2000 to 2024

Goal: See how much your city has grown using Landsat imagery.

// Compare Landsat images of your city — 2000 vs 2024
var city = ee.Geometry.Point([77.5946, 12.9716]); // Bangalore — change to yours

function getLandsat(year) {
  return ee.ImageCollection("LANDSAT/LE07/C02/T1_L2")
    .merge(ee.ImageCollection("LANDSAT/LC08/C02/T1_L2"))
    .filterBounds(city)
    .filter(ee.Filter.calendarRange(year, year, 'year'))
    .filter(ee.Filter.calendarRange(11, 2, 'month'))  // Winter
    .filter(ee.Filter.lt('CLOUD_COVER', 20))
    .median()
    .multiply(0.0000275).add(-0.2);
}

var img2000 = getLandsat(2000);
var img2024 = getLandsat(2024);

var vis = {bands: ['SR_B4', 'SR_B3', 'SR_B2'], min: 0, max: 0.3};
Map.centerObject(city, 11);
Map.addLayer(img2000, vis, '2000 — True Colour');
Map.addLayer(img2024, vis, '2024 — True Colour');

Toggle the 2000 and 2024 layers to compare — where did the city expand?


Next Dataset: MODIS Products →