Listening for events…
FEATURE · INVESTIGATION · SPACE WEATHER · JUNE 9, 2026
By TerraPulse Lab  ·  8 min read
TerraPulse Research — Space Weather

First Light for a Thermosphere Sensor Made of Falling Satellites

Every decaying Starlink is a tiny barometer for the upper atmosphere. We pooled thousands of them into one instrument and aimed it at the strongest geomagnetic storm in our data. The fleet's decay rate nudged in the predicted direction, but the rise cannot be separated from the instrument's own day-to-day scatter. This is a working monitor's first reading, and an honest null.

TerraPulse Data Lab June 9, 2026 Source: CelesTrak · NOAA · DSCOVR · SILSO
10,591
Starlinks pooled into one sensor
1.9×
decay-rate rise across the storm
0.3σ
storm signal above background
85th
percentile vs quiet days (n.s.)

The idea

The thermosphere is the only part of the climate system that changes in hours. When a solar flare or a geomagnetic storm dumps energy into it, the upper atmosphere puffs outward, and the thin air that low-orbiting satellites fly through gets denser. Denser air means more drag, and more drag means satellites fall a little faster. In February 2022 a single moderate storm dragged roughly 38 freshly launched Starlinks back into the atmosphere before they reached their working altitude.

Scientists have used satellite drag to measure the upper atmosphere for decades. What is new is the sheer number of satellites. More than ten thousand Starlinks now circle in a thin shell, each reporting its orbit several times a day. In principle, that is a giant, fleet-scale instrument for watching the upper atmosphere breathe. Before we try anything ambitious with it, it has to pass one basic test: can it see a single, ordinary storm?

How a falling satellite becomes a sensor

Each satellite reports a number called its mean motion: how many laps of the Earth it completes per day. As an orbit decays, the satellite drops to a lower, faster lap, so its mean motion creeps up. The speed of that creep is the drag signal. Track it for thousands of satellites at once, and you have a daily readout of how much the atmosphere is pushing back.

The catch is that most Starlinks fight back. Working satellites fire small thrusters to raise their orbits and hold altitude, which hides the drag we want to measure. So we kept only the satellites that are genuinely falling, with no sign of an engine burn, and pooled them into a single daily fleet number.

The storm we wanted, and the one we could use

We had planned to test the strongest storm of the period, on March 22, 2026. We could not. The Starlink records in our database begin on March 27, five days after that storm, with nothing before it to compare against. The big storm is simply invisible to us, and no analysis brings it back. So we re-aimed at the strongest storm that falls fully inside our data: April 18, 2026, a moderate event. We are upfront that this choice was made after the fact, which makes this an exploratory pilot rather than a clean pre-planned test.

What we found: a nudge that doesn't hold up

Across the April 18 storm, the fleet's decay rate did rise, by a factor of about 1.9. Encouraging at first glance, and it held up when we resampled which satellites we used and when we restricted to a fixed group present every single day. So it is not a trick of survivorship.

Then the controls knocked it down. We ran the exact same analysis on a calm day with no storm, and got almost the same rise. We ran it on the thrusting satellites that should feel no drag response, and got almost the same rise again. The instrument produces a bump of this size on quiet days and in objects that should not respond. Once you subtract that background, the storm's own contribution is about 0.3 standard deviations of the instrument's normal day-to-day wander. Measured against the calm days available, the storm response lands at only the 85th percentile: elevated, but not significant.

The timing is wrong too. A real drag spike should peak in the day or two after the storm. Ours peaks three days before it, and again four to five days after, which is the fingerprint of noise, not physics.

Figure: the storm hides in the noise

Superposed-epoch fleet-median decay rate for the storm epoch versus a quiet control epoch, showing the two curves entangled
Fig. 1. Daily fleet-median decay rate around the April 18 storm (cyan) and around a quiet control day (gray). If the storm produced a drag spike, the cyan line would jump after day zero and the gray line would stay flat. Instead the two are tangled together. Both wander by about the same amount, and neither stands out.

The continuous test, and why we don't trust it

We also checked whether the fleet decay rate tracks storm strength across the whole window, day by day. A straight-line correlation looks positive (Pearson r = 0.40). But a rank-based test, which ignores how extreme the values are and just asks whether bigger storms go with faster decay, finds essentially nothing (Spearman r = 0.14, not significant). When those two disagree, it means a handful of storm days are doing all the work. And because our daily decay number is a seven-day rolling slope, neighboring days are not independent, so the real sample is closer to 20 to 27 independent days, not the thousands of satellites it appears to be. Corrected for that, the correlation barely registers and does not survive a fair multiple-comparison threshold.

Why it didn't work, in plain terms

  • The one storm big enough to leave an unmistakable mark predates our data by five days. We were left with a moderate, smeared-out storm.
  • Most of the "falling" satellites are barely moving, so the pooled number sits on a noise floor that wobbles more than the storm effect we are chasing.
  • Thousands of satellites collapse into one daily line with only about three weeks of truly independent points. The statistical power lives in the number of independent days, and we did not have many.

What this says, and what it doesn't

It says: with this dataset, a moderate geomagnetic storm's effect on Starlink orbital decay is not detectable above the instrument's own noise. The hint that exists is in the right direction but does not survive honest testing.

It does not say: that storms don't drag satellites, which they plainly do, or that this approach can't work. The instrument is real and the pipeline runs every day. What it needs is a bigger storm landing fully inside the data, a sharper way to weight the genuinely-falling satellites, and more time. This is the first entry in a new kind of TerraPulse study: not a finished result, but a standing monitor that gets stronger the longer it runs. The next strong storm is the test.

Reproducibility

Every number on this page comes from the results.json and results_null.json files in the starlink-thermosphere-storm-pilot workspace. Pipeline: PostgreSQL extraction of CelesTrak mean motion for 10,591 Starlinks, a robust seven-day decay-rate slope per satellite, a clean-drag filter for non-thrusting objects, a superposed-epoch test around the storm with quiet-day and maneuvering-object controls, an object-resampling bootstrap, a fixed-cohort survivorship check, and an autocorrelation-aware correlation against the Dst (disturbance storm-time index, the standard measure of geomagnetic storm strength), solar-wind, and sunspot drivers.

TerraPulse standing-monitor pilot, 2026-06-09. Data: CelesTrak, NOAA Dst, DSCOVR solar wind, SILSO sunspot number. All times UTC.

Published paper

The full scientific paper, with methods, tables, and references.

Live Feed