OCHA CHD · exploratory analysis · Sentinel-1 · Langtang Lirung, Nepal
The glacier that stopped refreezing at night
On 26 August 2026, a huge chunk of ice and rock broke off a
Himalayan peak in Nepal and caused a flood that killed hundreds of people.
We went back through six years of free satellite radar images and asked a
simple question: did the mountain look different before it failed? It did,
starting four months out. The story below reads in plain language, and every
step has an expandable panel with the full technical detail.
Collapse
2026-08-26 02:52:10 UTC
Seismic signature
M5.2-eq · us7000tbwb
Published source
28.28532°N 85.52515°E
SAR scar centroid
28.28648°N 85.52284°E · Δ260 m
First: how satellite radar works, in 60 seconds
The Sentinel-1 satellites fly over every spot on Earth every few days, send
radar pulses at the ground, and measure how much echo bounces back. That echo
strength is one number per ~10 m patch of ground, and it changes when the
surface changes. Two properties matter here.
Water kills the echo. Dry snow and ice bounce radar back nicely, while wet,
melting snow absorbs it, so a melting glacier face shows up darker to radar.
And radar doesn't care about clouds or darkness. This region was in monsoon,
so optical satellites saw mostly cloud for months. Radar saw the mountain the
whole time, which is why we used it.
One more thing. The satellite doesn't wander; it repeats a fixed set of
ground tracks, each with a number. In the charts below these appear as
"orbit 19", "orbit 85" and "orbit 121", the three tracks that see this
mountain. Tracks flying north to south ("descending") cross here at about 6 in
the morning local time; the track flying south to north ("ascending") crosses
at about 6 in the evening. Keep that in mind, because it turns out to be the
key to the whole finding.
Orbit 19 · descending
morning · 06:03
Orbit 85 · ascending
evening · 18:06
Orbit 121 · descending
morning · 06:03
Decoder for every chart on this page.
Whenever a panel or line is labelled with an orbit number, this is what it means.
Each track views the mountain from its own fixed angle, so charts never mix
orbits. ("VV" in the axis labels is simply the radar channel used; see the
glossary.)
Step 1: prove we're looking at the right mountain face
News reports gave coordinates for where the collapse started. Before trusting
them, we checked. We took the first radar image after the collapse and compared
it with the images from the weeks before. Where the surface got violently
rearranged, the radar echo changed a lot: that's the dark shape below. It sits
almost exactly on the published coordinate (260 m away, about three
football pitches), and the debris trail is visible heading off down the valley.
Everything after this point analyses that face, knowing it's the right one.
Technical detail: event & scar mapping
Event: ice/rock detachment, north flank of Langtang Lirung, 2026-08-26
02:52:10 UTC; seismic signature equivalent to M5.2 (USGS us7000tbwb),
with a second M4.2-equivalent collapse (us7000tc90) about 3 h
later. The debris flow ran ~100 km down the Lende Khola into the Trishuli.
Published source coordinates: 28.28532°N 85.52515°E (Petley, early) and
28.2765°N 85.5194°E (Petley, Landslide Blog).
Scar map: orbit 85's first post-event scene (2026-08-28, 36 h after)
scored against that orbit's own Jun-Aug 2026 stack. Per pixel,
z = (post − meanpre) / stdpre,
with std floored at 0.5 dB and the max |z| taken over VV/VH. Pixels
with |z|≥3 cover 9.4 km² of the 10×10 km scene (scar plus runout), of
which 1.06 km² falls inside the 2×3 km source box. The change centroid
is 28.28648°N 85.52284°E, 260 m from the published point.
Step 2: compare 2026 to a normal year
For that mountain face, we averaged the radar echo over the box for every
single satellite pass since 2020, about 300 passes. The chart below lays every
year on top of each other, January to December. Grey lines are 2020 through
2025; blue is 2026, up to the collapse (dashed line).
Every year has the same rhythm: bright in winter (frozen), a dip through
summer (melt), bright again in autumn. That dip is normal. What's not normal is
when and how deep the blue line dips. In the top and bottom panels, orbits 19
and 121, the two morning tracks, 2026 drops earlier than every grey year (the
melt started roughly a month ahead of schedule) and then stays below all of
them, all summer. The middle panel, evening orbit 85, already hints at the
pattern: there, 2026 looks much more ordinary.
Technical detail: AOIs & extraction
Source AOI: a 2×3 km lon/lat box (85.512-85.533°E, 28.269-28.293°N)
covering both published coordinates. Controls: two boxes on the same massif
matched on GLO30 terrain. The source box sits at 4,973 m with 40.0° mean
slope; control W at 4,990 m / 39.5°; control E at 4,908 m /
36.8°. Series: S1 GRD IW VV+VH mean per acquisition per AOI, 2020-01 to the
event, per relative orbit (19↓/85↑/121↓), with acquisitions covering less than
80% of the box dropped. GRD values are dB; box means are log-domain means, used
only for relative change within one orbit.
Step 3: rule out "maybe 2026 was just a warm year"
Fair objection: an early melt could just mean a warm spring everywhere, not a
sick glacier. So we picked two control patches, slopes on the same mountain at
the same altitude and steepness, a few kilometres left and right of the face
that failed. If the whole region was simply warm, the controls should look just
as unusual as the source face.
They don't. To compare fairly, each 2026 measurement is turned into a
z-score: how many standard deviations is this from the same week in previous
years? A z of 0 means typical; −2 means unusual (roughly a 1-in-40 event); −5
essentially never happens by chance. Summer 2026 on the control patches averaged
about −1, which reads as mildly warm and nothing more. The face that failed
averaged −2.3, with dips to −5.6. The anomaly belongs to that face
specifically.
Technical detail: climatology numbers
z per acquisition is the departure from prior-year (2020-25) acquisitions of
the same orbit within ±12 days of the same day-of-year. Last five pre-event
acquisitions over the source box, VV:
| Orbit (local) | Last five pre-event z |
| 19 (06:03) | 07-07 −3.1 · 07-19 −1.5 · 07-31 −2.0 · 08-12 −3.7 · 08-24 −2.1 |
| 85 (18:06) | 06-29 −1.5 · 07-11 +0.3 · 07-23 −1.2 · 08-04 −0.8 · 08-16 −0.8 |
| 121 (06:03) | 07-02 −5.4 · 07-14 −2.0 · 07-26 −5.6 · 08-07 −3.5 · 08-19 −3.1 |
Jun-Aug 2026 means (VV z): source −2.33 (min −5.64), control W −1.00
(min −3.58), control E −0.77 (min −2.96).
Step 4: the morning/evening clue
Now the detail that turns "the face looked odd" into a physical story.
Remember the pass times: two of the satellite tracks image this mountain at
6 am, one at 6 pm. We subtracted the controls from the source face,
which cancels out weather that affects the whole valley, and tracked what was
left.
- The 6 pm track (orbit 85, the green line in Fig 4) sees nothing
unusual all summer. That makes sense: on a monsoon afternoon, every glacier face
is wet and dark to radar, every year, so 2026 can't stand out.
- The 6 am tracks (orbits 19 and 121, the blue lines) see the face go
wrong from early July, eight weeks before the collapse, and stay wrong.
At 6 am, a healthy high glacier face has refrozen
overnight and looks radar-bright. This face didn't. A signal that appears only
in the morning data means the surface was staying wet through the
night: the face had absorbed so much heat and meltwater that it could
no longer refreeze. A hanging glacier soaked in meltwater is exactly the kind
that collapses.
Technical detail: divergence statistic
d = source VV − mean(controls VV) per acquisition; zd scores d
against the prior-year distribution of the same difference at the same
day-of-year (±12 d). Orbit 121 sustains zd ≤ −2 from
2026-07-02 (6 of 18 pre-event acquisitions at or below −2, deepest −6.8);
orbit 19 is intermittently at or below −2 from late June (5 of 20); orbit 85
never leaves its envelope pre-event (1 of 20). Removing the controls this way
cancels valley-wide weather, and what remains is specific to the face.
Step 5: what the radar could not see
An obvious hope: maybe the exact patch that broke off looked different from
the rest of the face, which would let you point at a spot on the map in advance.
We tested it. Inside the source box, we compared pixels that ended up inside the
collapse scar with pixels just outside it, week by week. The two groups track
each other on every date. The warning was face-wide. The radar told us this
face was in trouble, not which exact block would fail, and there was no
last-minute change in the final pass 39 hours before the collapse.
Wait, can't radar just see the block moving?
Sometimes, but probably not here, and the reasons are worth understanding.
Radar interferometry (InSAR) compares the phase of the radar wave between two
passes and can measure millimetres of ground motion, but it needs the surface to
stay put between passes at the centimetre scale. A melting monsoon glacier face
reshuffles completely between visits, so the phase turns to noise (the technical
term is "loss of coherence") exactly where and when we'd want to look. It also
needs a rawer data product (SLC) than the archive used here provides, and it can
only track slow, small motion; a block creeping metres per day is too fast for
it.
The coarser cousin, offset tracking, follows recognisable speckle patterns
between images and handles fast motion, but at Sentinel-1's ~10 m
resolution it only registers a shift once the block has moved several metres
between passes. For most collapses that means days of warning, not weeks. So
this study measures the cause (a face soaked in meltwater) rather than the
symptom (the block starting to slide), because the cause shows up earlier and in
easier data. Ideally you'd chain them: the cheap wetness watch flags a face,
then motion techniques and high-resolution tasking zoom in.
And we did check. We ran offset tracking on the final image pairs, the last
one ending just 39 hours before the collapse, using earlier pairs from the same
summer to establish how noisy the method is on this terrain. The face's apparent
motion in those final weeks was indistinguishable from the noise: roughly a
metre or two, the same as ground that didn't fail. The tracking itself worked
fine, since the surface stayed recognisable, so this is a real "it wasn't
sliding" rather than a "we couldn't tell". The block did not creep metres-scale
before it went. It let go suddenly, which is exactly why the early wetness
warning matters more than motion for this kind of failure.
Technical detail: offset tracking numbers
Windowed phase cross-correlation on linear-power amplitude: 640 m
windows, 160 m step, 1/10-pixel subpixel. Final pairs: orbit 19
08-12→08-24 (ends 39 h pre-collapse) and orbit 121 08-07→08-19, with
reference pairs one cycle earlier. Whole chips carry a 2-6 m common
co-registration offset between GRD products; the reference pairs are worse than
the final ones, which confirms the offset is systematic rather than motion.
After removing the surround's median shift vector, the face's differential
displacement in the final pairs is median 1.4 m / p90 4.1 m, at or
below the reference pairs' own noise (2.0 / 4.2 m). 220 to 221 of 221 face
windows stayed correlated, so this is a measured null (no sliding above
~2 m per 12 days at this scale), not a failure to measure.
Step 6: the fire-alarm test, or how often this would cry wolf
Everything so far had a big asterisk: we knew where to look. We analysed this
face because it had already collapsed. A smoke detector that goes off during a
fire is only useful if it doesn't also go off every time you make toast. So we
ran the test. We took 45 other glacier faces like this one, every glacier in
the surrounding 130×90 km that is similarly steep, high, and hangs the same
way, and replayed the exact same alarm rule on each of them for five summers
(2022-2026), always hiding the tested year from its own "normal" baseline. The
alarm rule: the face must look unusually dark to the morning radar three passes
in a row, after subtracting whatever the whole neighbourhood is doing that
day.
The result, one dot per face per summer:
The collapse is caught: the failing face crosses the alarm line in 2026, and
in no earlier year. False alarms are rare, about 1 in 75. Across 226
face-summers with no collapse, the alarm fired 3 times (1.3%), and tightening
the threshold a notch brings that to 1 in 200 while still catching the
collapse.
One of those "false" alarms might not be false. The strongest 2026 signal in
the whole test isn't the face that collapsed. It's an uncollapsed face about
32 km north, on the Tibet side of the same river system, currently far
more anomalous than the collapse face ever was. Either the same warm conditions
hit it harder, or it's a face somebody should be watching right now.
There's also a catch: zoom out too far and the signal disappears. Averaged
over the whole 10 km² glacier instead of the 6 km² face, the
collapsing glacier stays under the alarm line. A real monitoring system would
have to watch face-sized patches, which means more patches and somewhat more
false alarms than the 1-in-75 measured here.
So far this rested on one region, five summers, and exactly one collapse to
test against. The natural next question is what happens when the same rule is
replayed on the other big glacier failures of the satellite era. We did that
too, and the answer is humbling; it's the next section.
Technical detail: detector spec & sweep
Fleet: GLIMS 20230607 boundaries in 84.9-86.3°E / 27.9-28.7°N, deduped per
glac_id, 0.5-15 km², mean elevation ≥ 4,800 m, GLO30 mean slope
≥ 25°; 45 faces. Detector, per face × descending orbit: leave-one-out
climatology z (±12 d day-of-year window, tested year excluded from its own
baseline), minus the same-date fleet-median z; an alarm is 3 consecutive
Jun-Aug acquisitions at or below −2σ. The detachment box, run through identical
machinery, is the positive control: statistic −3.05, alarming only in 2026.
| Threshold | Fleet false-alarm rate (226 face-seasons) | Detachment box 2026 |
| −1.5σ | 2.2% | caught |
| −2.0σ | 1.3% (3 alarms) | caught |
| −2.5σ | 0.4% (1 alarm) | caught |
The three fleet alarms: G085489E28568N in 2024 (−2.14) and 2026 (−7.46, the
Tibet-side face above), and Lanong Glacier in 2024 (−2.41). At whole-glacier
scale the source glacier's own polygon scores −1.5 and is missed, so face-scale
tiling is required, making 1.3% a lower bound on an operational tile-level
rate.
Step 7: the history test, where the method meets its limits
We replayed the detector on every comparable glacier failure of the
Sentinel-1 era, locating each source from post-event radar change where the
archive allows and testing the 90 days before each collapse. The honest
scorecard:
| Event | Date | Stat | Verdict |
| Aru-1, Tibet | Jul 2016 | · | not testable: S1 barely imaged western Tibet before 2017 |
| Aru-2, Tibet | Sep 2016 | · | not testable, same archive gap |
| Sedongpu, SE Tibet | Oct 2018 | −1.92 / −2.51 | missed by one big box; caught at the tile scale (see below) |
| Chamoli, India | Feb 2021 | +0.81 | missed, as predicted: winter failure, no melt signature |
| Marmolada, Alps | Jul 2022 | +0.31 | missed: a serac fall thousands of times smaller than Langtang |
Before running this we wrote down a pass condition: catch at least two of the
three melt-driven events, or say plainly that the method isn't ready. At the
original one-box-per-event scale it caught zero of the two that were testable,
and that record stands. Then we tested whether the misses were the detector or
the experiment. Chamoli failing to register is the prediction working, since a
winter rock-and-ice failure has no melt story for radar to see. Marmolada turns
out to be a scope error in our test design: a 64,000 m³ serac is three to
four orders of magnitude smaller than Langtang, and re-measuring with a 400 m
box on the exact serac still shows nothing (−0.4, like any other year), so it
is out of reach on mechanism and size, not mis-measured.
Sedongpu is the interesting one. Its 2018 score of −1.92 came from a single
2.4 km box laid over a detachment about 4 km long, the same dilution
mistake we had already documented on Langtang's glacier polygon. Re-run the
way a real system would watch the basin, as 65 tiles of ~1.3 km, and two
tiles over the detachment cross the alarm line before the collapse (worst
−2.51). The catch that keeps this honest: watching 65 tiles gives 65 chances
per year to fire by luck, so we computed the same worst-tile statistic for all
six non-event years, and none of them reaches −2 (worst −1.8). Quiet years
stay quiet; the collapse year doesn't.
So the scorecard at the scale a real system would operate: both testable
giant melt-season detachments are caught (Langtang at −3.05 by the hand box
and −2.07 by the automatically enumerated facet; Sedongpu at −2.51 by tile),
the winter failure is missed exactly as predicted, and the serac fall is out
of scope. The honest limits are unchanged: two positives cannot demonstrate
skill, the satellite archive holds no more testable events of this class, and
watching future seasons is the only real test left. The monitoring unit, at
least, no longer needs a human: automatic enumeration of steep-ice faces
(580 facets for this region from inventory, slope, elevation and aspect alone)
carries both catches, at a facet-level false-alarm rate of 2.4% per
facet-season.
One last piece of honesty about the numbers themselves. The −2 alarm line
used throughout was calibrated by eye on the Langtang case, so "caught at −2"
is partly circular. The cleaner statement drops thresholds entirely and asks
where the collapse seasons rank among all the quiet ones: Langtang's facet
ranks 5th most anomalous of 217 unit-seasons (about a 2% chance by luck),
Sedongpu's year ranks 1st of 7 (the strongest result six comparison years can
express), and the two together have roughly a 1-in-45 probability of ranking
this extreme if the method saw nothing real. Promising odds for two case
studies; not remotely a validated system.
Technical detail: threshold-free skill numbers
Each positive is placed in its own dataset's null distribution of
unit-season statistics (worst 3-consecutive adjusted z), as a rank and a
one-sided empirical p-value with Laplace correction. Langtang 2026 auto-facet:
−2.07, rank 5/217, p = 0.023. Sedongpu 2018, min-over-65-tiles vs the
same statistic in other years: −2.51, rank 1/7, p = 0.143 (the floor
for six null years). Fisher combination: χ²(4) = 11.4,
p ≈ 0.022, flattered somewhat by window, run-length and unit-scale
choices shaped on the Langtang case. Pooled 988-unit-season null across the
five study regions: false-alarm rate 5.2% at −1.25, 1.3% at −2.0, 0.4% at
−3.0; the loosest threshold catching both positives (−2.07) implies 1.11% per
unit-season, and the null's own extreme is −3.19 (a Chamoli-region winter
window), so no threshold separates cleanly. Script:
skill_analysis.py.
Mini-glossary
- backscatter / VV / dB
- Backscatter is the strength of the radar echo
that returns to the satellite, measured in decibels (dB); a few dB is a big
change, and wet surfaces return a weaker echo, reading as "darker". "VV" names
the radar channel (polarisation) used in every chart here: the pulse is sent and
received vertically polarised. Sentinel-1 also records a VH channel, which tells
the same story, so the charts show VV.
- orbit / pass / ascending / descending
- One satellite flyover. The
satellite repeats the same numbered ground tracks; each views the mountain from
a fixed angle at a fixed time of day, so a track is only ever compared with
itself. Here, orbits 19 and 121 are descending (flying north to south, crossing
at about 06:03 local, the morning passes) and orbit 85 is ascending (south to
north, 18:06, the evening pass).
- z-score
- How many standard deviations from normal, where "normal" is
the same face, the same track, the same weeks of the year, in 2020-2025. Beyond
±2 starts being noteworthy; −5 is extreme.
- control patch
- A nearby similar slope used as a fair comparison, so
region-wide weather can be subtracted out.
- Sentinel-1
- The European Space Agency's free radar satellite family.
Its full archive is openly available; we used it via Google Earth Engine.
Where this went next: the facet watch
The method now runs as two interactive status maps. Every steep glacier face
is enumerated automatically (no hand-drawn boxes), colored by how anomalous it
currently looks against its own region's 2020-25 history, and ranked for human
attention by combining that anomaly with three fixed consequence factors: how
far a failure could fall, whether standing water sits below the face, and how
many people live in the valleys within 50 km. Anomaly sets the color;
consequence only sets the queue. The
Langtang
watch (580 faces, the validated per-pass statistic) and the
central-Himalaya
watch (2,576 faces across 82-89°E, a cheaper season-mean screening
statistic with the validated detector applied to the worst-ranked faces) are
both snapshot dashboards, rebuilt on demand, and both carry the same caveat as
this page: ranks against history from a method with two case studies behind it,
not warnings.