q28·intermediate

Are the coral reefs near me heading for a bleaching summer?

oceanclimatebiospherepublic-health Datasets: 4 30–60 min
Find the data for your area

Draw a rectangle to pick your area of interest, then see what NASA data covers it (live, here in your browser) or download a ready-to-run notebook with your AOI pre-filled. The notebook runs in any Python environment — it needs a free Earthdata Login to fetch the data.

Current AOI: -81.8, 24.4 → -80.2, 25.2 (Florida Keys reef tract, USA)

Corals bleach when the water around them stays too warm for too long — not from a single hot day, but from weeks of heat piling up. NASA's **MUR** product gives a daily, gap-free 1 km map of [sea surface temperature](/glossary/sea-surface-temperature/) everywhere on Earth, so you can watch a reef's water heat up through a summer and compare it to past years — even with no buoy nearby. **Verified locally.** For the Florida Keys reef tract (24.4–25.2 °N), the MUR `analysed_sst` field read **30.9 °C** on 10 Aug 2024 — already in the range where prolonged exposure stresses corals. The honest version of "is bleaching coming" is the **Degree Heating Weeks (DHW)** metric: NASA SST shows the temperature; NOAA's free **Coral Reef Watch** turns it into the official heat-stress score and bleaching alert levels.

Are the coral reefs near me heading for a bleaching summer?

Corals bleach when the water around them stays too warm for too long — not from a single hot day, but from weeks of heat piling up. NASA’s MUR product gives a daily, gap-free 1 km map of sea surface temperature everywhere on Earth, so you can watch a reef’s water heat up through a summer and compare it to past years — even with no buoy nearby.

Verified locally. For the Florida Keys reef tract (24.4–25.2 °N), the MUR analysed_sst field read 30.9 °C on 10 Aug 2024 — already in the range where prolonged exposure stresses corals. The honest version of “is bleaching coming” is the Degree Heating Weeks (DHW) metric: NASA SST shows the temperature; NOAA’s free Coral Reef Watch turns it into the official heat-stress score and bleaching alert levels.

What you can answer

  • How warm the water over a reef is right now, and every day back to 2002 — MUR analysed_sst (stored in kelvin; subtract 273.15 for °C)
  • Whether this summer is hotter than normal — build a per-day climatology from past years and plot this year’s anomaly (the warm departure that drives bleaching)
  • How many days the reef sat above its bleaching threshold — count days over the local “maximum monthly mean + 1 °C”, the standard bleaching trigger
  • The official heat-stress level — overlay NOAA Coral Reef Watch Degree Heating Weeks & bleaching alert area (free, no login) for the validated metric
  • Water-clarity / productivity context — MODIS chlorophyll-a alongside, since murky or nutrient-loaded water interacts with heat stress

What you can NOT answer with these datasets alone

  • Whether corals actually bleached — SST is the driver; confirmed bleaching needs in-water surveys or high-resolution imagery. Heat stress raises risk, it doesn’t prove an outcome.
  • Reef-floor temperature exactly — MUR is a blended surface analysis at 1 km; a shallow back-reef lagoon can run warmer than the 1 km pixel average
  • Species-level vulnerability — thresholds vary by species and by a reef’s past exposure
  • Sub-kilometre detail — for a specific patch reef, 1 km is coarse; pair with finer L2 SST or in-situ loggers

Code template (Python, cloud-direct)

Verified locally. MUR-JPL-L4-GLOB-v4.1, variable analysed_sst, is a global daily NetCDF; open it lazily and slice your reef’s bounding box before reading so you never download the whole globe. Values are in kelvin.

import os, re, earthaccess, xarray as xr, numpy as np

# load Earthdata creds from .env without `source` (passwords can break the shell)
for line in open(".env"):
    m = re.match(r'\s*(?:export\s+)?([A-Z0-9_]+)\s*=\s*(.*)\s*$', line)
    if m: os.environ.setdefault(m.group(1), m.group(2).strip().strip('"').strip("'"))
earthaccess.login(strategy="environment")   # free Earthdata Login

W, S, E, N = -81.8, 24.4, -80.2, 25.2       # your reef (Florida Keys)
g = earthaccess.search_data(short_name="MUR-JPL-L4-GLOB-v4.1",
                            temporal=("2024-08-10", "2024-08-11"))
ds  = xr.open_dataset(earthaccess.open(g[:1])[0], engine="h5netcdf")
sst = ds["analysed_sst"].sel(lat=slice(S, N), lon=slice(W, E)) - 273.15   # K -> °C
print("mean reef SST:", round(float(sst.mean()), 2), "°C")

# bleaching pressure: days above the local threshold (here a simple 30 °C; for the
# real metric use NOAA Coral Reef Watch "MMM + 1 °C" and Degree Heating Weeks)
days = earthaccess.search_data(short_name="MUR-JPL-L4-GLOB-v4.1",
                               temporal=("2024-06-01", "2024-09-30"))
# ... loop days, slice bbox, count days where mean SST > threshold, accumulate DHW
How a scientist answers this
Parameters
Daily 1 km sea-surface temperature from MUR (MUR-JPL-L4-GLOB-v4.1) `analysed_sst` (kelvin; subtract 273.15 for °C) over a reef bounding box, plus NOAA Coral Reef Watch Degree Heating Weeks (DHW) and bleaching-alert area as the official heat-stress metric; MODIS-Aqua chlorophyll-a (MODISA_L3m_CHL `chlor_a`) for water-clarity context. The standard bleaching threshold is the local Maximum Monthly Mean (MMM) climatological SST + 1 °C, and DHW accumulates °C-weeks above that threshold over a rolling 12-week window.
Method
Area-average MUR `analysed_sst` over the reef daily, build a per-day-of-year climatology from the full 2002– record, and compute this season's standardized SST anomaly; derive the MMM, count days above MMM+1 °C, and accumulate hotspots into DHW (8 °C-weeks is the canonical bleaching-likely level, 4 the watch level). Compare against NOAA CRW's independent DHW product.
Validation
Cross-check the self-computed DHW against NOAA Coral Reef Watch's official DHW/alert product (which uses CoralTemp and a fixed climatology), confirm the MMM baseline period, and flag that MUR is a gap-free L4 analysis that can smooth small-scale reef SST; verify thresholds against published bleaching studies for the region.
In plain EnglishTrack how warm the reef water gets each day, add up the weeks it stays above the corals' summer comfort limit, and compare that heat-stress total to the level that has caused bleaching before.

Make it yours → Set the reef bounding box, the season/years, and the MMM+threshold in the notebook, and toggle between self-computed DHW and the NOAA Coral Reef Watch product.

Run the core method · no login

The robust trend (Theil–Sen + Mann–Kendall) at the heart of this question — runnable on synthetic data, right here. The full earthaccess code template further down does it on real NASA data (needs an Earthdata login).

editable · runs in your browser