Ground truth · live from NSIDC, recomputed in your browser

The Record Is Five Days Wide

Every story about Arctic sea ice quotes the same number: 3.39 million square kilometres, 17 September 2012, the lowest the Arctic has ever been. That number is an average of five days. The lowest day actually recorded is a different number on a different date, and NSIDC's own public API will hand you either one, depending on a single field in the query.

The Sea Ice Index is the record. It has run since 26 October 1978 and it is where the minimum you have read about comes from. Its published daily graph, and the sentence in every press release, use a five-day trailing mean: today's value is the average of today and the four days before it. NSIDC says so plainly in the user guide, and says why:

The daily extent series is smoothed using a 5-day trailing mean. The extent value for a given day is averaged with the extent value from the previous four days, and this average value is plotted. NSIDC, Sea Ice Index (G02135) Version 4 user guide

So the famous minimum is not a day. It is a window five days wide, dragged across the melt season until it finds its lowest resting place. Below is NSIDC's request for the 2012 season, exactly as this page issues it. One field is a button.

The request, with one field you can change

loading

smoothing_window, the field this page is about

published in prose

This season's minimum, at this setting

not yet

not yet

The lowest single day actually observed

not yet

not yet

daily, as observed NSIDC's smoothed series interpolated day

not yet

Before it tells you anything new, it reproduces something published

A page that recomputes a moving number can say anything, because by the time you check it, it has moved. So this page earns the right to report tonight's figure by first reproducing figures NSIDC printed on a fixed date, using the same code path, from the primitive daily series alone. The trailing mean below is computed in your browser out of /data/{year}, which is the unsmoothed series. NSIDC's own smoothed endpoint is not used to produce our column.

Four published quantities, three kinds, recomputed from primitives

published by NSIDCtheir figureours, from the dailiesmatch

The two minima are the ones that matter, because they are the ones the world repeats. NSIDC's post of 17 September 2025 says the 2025 minimum was 4.60 million square kilometers, reached on 10 September 2025, and gives the satellite-era record as 3.39 million square kilometers on 17 September 2012. Both are five-day means, and both fall out of our own arithmetic on the raw dailies, on the printed digits and the printed dates.

What this page does not do, stated plainly. An earlier version of this instrument reproduced these figures from the 25 km satellite concentration grids, one level below NSIDC's own arithmetic. Those grids sit on a host whose robots.txt reads Disallow: /, so we do not fetch them, and no number here descends below the daily series NSIDC publishes. This page checks NSIDC's derived numbers against NSIDC's primitive numbers. That is a real check and it is one level shallower than the one we wanted, and you should hold it to exactly that.

A rounding difference, then. Who cares.

Here is who cares. Rank every complete year in the satellite record by its annual minimum, once on the series NSIDC publishes as data and once on the series NSIDC quotes in prose. The two orderings are not the same ordering.

All-time rank, two settings of one parameter

not yet

yearwindow 0daterankwindow 5daterankΔ

The table above is a snapshot committed to this repository, so it loads instantly and so a returning reader can catch it going stale. It is not asking to be trusted:

The reason is not subtle once you see it, and NSIDC states it in the same user guide, two paragraphs after describing the smoothing:

the average value on the last day will be higher than the true daily value when ice is decreasing (during the melt season) and lower than the true daily value when ice is increasing (during freeze-up). The true, unaveraged extent values are available in the daily extent data files. NSIDC, Sea Ice Index (G02135) Version 4 user guide

A trailing window looking backwards during a melt is always carrying four days of ice that has already gone. So the smoothed minimum is higher than the true one, in every single one of the 47 years, without exception. That is not an error. It is what a trailing mean is for. But a year whose melt ended in a sharp, short trough loses more to the smoothing than a year that bottomed out slowly, and when several years sit within a few hundredths of each other, that difference is the whole ranking.

The date is a different story, and it is worth being exact about, because the tidy version of this sentence is wrong. The smoothed minimum usually arrives later, on average 1.74 days later. It does not always: in three of the 47 years it arrives earlier instead. Separately, the widest disagreement of all is 1997, where the smoothed minimum lands 20 days later than the unsmoothed one. That is the ordinary direction taken to an extreme, not a fourth exception. The cause of both is visible in the chart above if you pick those seasons: a melt with two nearly equal troughs. The single lowest day belongs to one of them, and the five-day mean can settle on the other. The years are listed here rather than rounded off, because a rule with three exceptions is a more useful thing to know than a rule.

How big is a flip, though?

"Sixteen of forty-seven change rank" is a count, and a count with no magnitude beside it is the easiest way to make a small thing sound large. So here is the magnitude. Those sixteen moving years are produced by a handful of pairs of years swapping over, and each swap rests on the distance between that pair on the unsmoothed series. Every one of those distances is printed below, none of them rounded up.

Every pair that swaps, and the gap it swaps across

The smoothing is not decoration. It was built to cover a real hole.

It would be easy, and wrong, to read all this as NSIDC dressing up its numbers. The opposite is true, and the evidence is in the data itself. Here is how many days of the 92 between 1 August and 31 October carry an observation, year by year.

Days observed, 1 August to 31 October

The early record is not worse ice data. It is a different satellite duty cycle: SMMR, the first instrument in the chain, sampled every other day. A daily series with every second day missing is not a daily series, and a five-day trailing mean over a gap-filled version of it is a perfectly reasonable thing to publish. The smoothing was built for that hole, the hole closed in the late 1980s, and the smoothing stayed. That is the whole story, and it is a normal one.

The other field in the same URL

One path segment along, extent becomes area. Extent counts every grid cell that is at least 15 per cent ice, and counts the whole cell. Area counts only the ice. On the lowest day the Arctic has ever had, the gap between them is this:

Extent against area, on the record day

Neither is the wrong number. Extent is the one with the long, consistent record and the one every headline uses. But when you read that the Arctic fell to 3.34 million square kilometres, roughly a third of what was counted was open water inside the ice edge. Not quite all of the gap is open water: 0.029 of it is the circle at the pole the sensor could not see, which extent assumes is ice and area leaves out, and the figure in the panel above has that subtracted. It survives the subtraction and stays about a third. NSIDC's user guide is direct about the 15 per cent cutoff too: values below it "are too uncertain to use". We have no instrument here that could move that cutoff and show you the consequence, because the concentration grids it would need are on a host we do not fetch. It is a choice, it is theirs, and this page can only tell you it exists.

Now tonight's number, which is why this page is worth reloading

The current season, as of the newest row NSIDC has served

Checking the newest row inside the data against the clock.

HTTP 200 is not freshness. A server can answer, cheerfully, with well-formed JSON whose newest row is two years old, and this wave has already caught two feeds doing exactly that. So the check above is not on the status code and not on the Last-Modified header. It is on the newest date inside the data, and it is not decorative: past six days of lag this page stops printing a current-season number at all rather than printing one with a caveat under it. As it happens there is no header here to disagree with. This service sends no Last-Modified on any request anyone has made of it, which is also why the "has it moved since you were here?" line above is answered from the newest row in the data rather than from the source's clock. That is the signal this page actually has, so it is the one it uses.

A claim you can score against us, in about five weeks

Filed 2026-08-15, settles late September 2026

open

This is a climatological extrapolation and nothing more. No atmosphere, no ice motion, no model: just the ratio between the mid-August value and the eventual minimum in each of the last fifteen years, and the spread of those ratios. Its stated hazard is that the ratio was fitted mostly on SSMIS-era years and is being applied to an AMSR2-era August, and 2025, the only complete AMSR2 year, sat near the top of that distribution. If it misses, the interval and the method are on the page, so the miss is informative.

Where this instrument stops saying anything

The window buttons go past 5. They should, because the place this page's comparison dies is worth walking to. Push the window to three weeks and every year's minimum gets dragged up toward its own seasonal mean, until what you are reading is not a melt season at all: it is a low-pass filter, and you are watching the filter.

A correction, kept in place of what it replaced. An earlier version of this section finished that thought with a mechanism: that as the window widens the differences between years shrink faster than the ranking can respond, so the ordering settles down and starts to look like agreement. It reads well, nothing on this page measured it, and it is false. The measurement is the chart below, and it says the ordering does the opposite of settling. The sentence is gone rather than softened, because it was not too strong, it was wrong.

The ranking as the window widens, which is the part that was asserted

measuring

And the minimum itself, for the season you have selected

Press a window button above to add it here. Each point is 2012's minimum at that setting.

Two settings on that axis carry published meaning and the rest are illustration. 0 is the series NSIDC publishes as data. 5 is the series NSIDC quotes in prose. Everything else is a number no one has ever cited, and the page labels it that way while you are looking at it, rather than in a footnote afterwards. There is a gap at 1: that value returns HTTP 500 from the service. It is a bug in their API, it is not meaningful, and we are not going to dress it up as one.

The check, and everything it does not cover

Recomputed live in this browser, from the same module the verifier imports. Run it yourself: node research/five-days-wide/verify-five-days-wide.mjs

what was checkedresult

The sentinel, run in front of you rather than described. When you ask NSIDC's derived endpoint for smoothing_window=0, days with no observation come back as -1.0 rather than being omitted. A naive minimum over 1980 finds that sentinel, reports the lowest Arctic extent in history as -1.000, and, applied across the record, produces the confident and entirely false result that all 47 years change rank. The scout who specified this page walked into it. Both numbers below come from the same fetched object:

not yet

Free choices and uncertainties, named.

not yet

not yet

The refusal paths, which are asserted too. A page that only tests the half that was never going to fail has tested nothing. Current state of each:

not yet

The ledger

Every verifier run appends one line to research/five-days-wide/record.jsonl, committed. It stores the newest data date, the running minimum on both series, our five-day mean beside NSIDC's with the signed difference, any date whose value changed since the previous run, and the live status of the forward claim. The first line and the newest line, side by side:

First run against latest run

fieldfirst linelatest line
Where all of this came from, and under what terms

Data. NOAA/NSIDC Sea Ice Index, version 4, reached through https://nsidc.org/api/seaiceservice, which is the service behind NSIDC's own Charctic graph and publishes an OpenAPI 3.0.2 contract at /openapi.json. Data citation, which is the one condition attached to the data set:

Fetterer, F., Knowles, K., Meier, W. N., Savoie, M., Windnagel, A. K. and Stafford, T. (2025). Sea Ice Index. (G02135, Version 4). Boulder, Colorado USA. National Snow and Ice Data Center. https://doi.org/10.7265/a98x-0f50. Credit: Sea Ice Index, National Snow and Ice Data Center.

Permission. nsidc.org/robots.txt was read at 2026-08-15T00:26:07Z, before any fetch code for this page was written. It sets Crawl-delay: 5 and disallows faceted-search querystrings, /core/, /profiles/, /sites/nsidc.org/files/, /admin/, /search/, /media/oembed, and four specific account paths (/user/register, /user/password, /user/login, /user/logout) rather than /user/ as a whole, which is what this page said until it was checked against the file again. It does not disallow /api/.

The crawl delay, honestly. The build-time harvest honours it exactly: one request every five seconds, single threaded. The live page does not, and saying that an hourly cache honours it would be a sleight of hand, because a cache TTL bounds how OFTEN we ask and a crawl delay bounds how FAST. What the hour-long edge cache does is real and worth stating in its own terms: every distinct query costs NSIDC at most one request per hour no matter how many people load this page. Five requests go out on load. The 47-year sweep behind the button is 94 requests, paced at one year every 350 milliseconds rather than fired at once, and it is cold only for the first reader to press it in a given hour. That is a smaller footprint than a single person browsing the site, and it is still faster than five seconds apart, so we are telling you rather than dressing it up.

Where we did not go. The Sea Ice Index file server, noaadata.apps.nsidc.org, carries the daily concentration grids that would let this page move the 15 per cent cutoff itself. Its robots.txt, read at 2026-08-14T23:35:40Z, is User-agent: * / Disallow: /. So we did not fetch it, and the layer that needed it is not in this page. A different institution's grids (Bremen's AMSR2 ASI product) are reachable, and were rejected: a different algorithm on a different grid cannot reproduce an NSIDC figure, so it would have bought back an interaction at the cost of the anchor.

This site never sends you to them. Your browser makes no request to nsidc.org. It asks this site's own worker, which holds a fixed allowlist and caches each distinct query for an hour.

Sources for the quotations. G02135 v4 user guide; NSIDC, 17 September 2025; version 4 release announcement; Sea Ice Today services reduced; G02135 v4 landing page.