02 · NASA GISS / OPEN DATA NOTEBOOK

A warming record.

A long view of a changing climate, drawn one year at a time. Global land–ocean temperature anomalies.

Saved snapshotRetrieved 29 Oct 2026
GISTEMP v4 · baseline 1951–1980
LATEST COMPLETE YEAR2025Incomplete annual records are excluded
ANNUAL ANOMALY+1.18°CCompared with the 1951–1980 mean
CHANGE IN VIEW+1.15°C1970 to 2025 · endpoint difference
WARMEST COMPLETE YEAR20241.28°C above the baseline

The long line

Annual global mean · degrees Celsius relative to 1951–1980

↗

Swipe or scroll sideways to explore the chart →

Global temperature anomalyGlobal temperature anomalyAnnual anomaly1970197319761979198219851988199119941997200020032006200920122015201820212024-0.2°C0.0°C0.2°C0.4°C0.6°C0.8°C1.0°C1.2°C1.4°C
View data
The long line data
SeriesPointValue
Annual anomaly19700.03
Annual anomaly1971-0.08
Annual anomaly19720.01
Annual anomaly19730.16
Annual anomaly1974-0.07
Annual anomaly1975-0.01
Annual anomaly1976-0.1
Annual anomaly19770.18
Annual anomaly19780.07
Annual anomaly19790.16
Annual anomaly19800.26
Annual anomaly19810.32
Annual anomaly19820.14
Annual anomaly19830.31
Annual anomaly19840.16
Annual anomaly19850.12
Annual anomaly19860.18
Annual anomaly19870.32
Annual anomaly19880.39
Annual anomaly19890.27
Annual anomaly19900.45
Annual anomaly19910.41
Annual anomaly19920.22
Annual anomaly19930.23
Annual anomaly19940.31
Annual anomaly19950.45
Annual anomaly19960.33
Annual anomaly19970.47
Annual anomaly19980.61
Annual anomaly19990.38
Annual anomaly20000.39
Annual anomaly20010.53
Annual anomaly20020.63
Annual anomaly20030.62
Annual anomaly20040.53
Annual anomaly20050.68
Annual anomaly20060.64
Annual anomaly20070.66
Annual anomaly20080.54
Annual anomaly20090.66
Annual anomaly20100.72
Annual anomaly20110.61
Annual anomaly20120.65
Annual anomaly20130.67
Annual anomaly20140.75
Annual anomaly20150.89
Annual anomaly20161.01
Annual anomaly20170.91
Annual anomaly20180.85
Annual anomaly20190.98
Annual anomaly20201.01
Annual anomaly20210.85
Annual anomaly20220.89
Annual anomaly20231.17
Annual anomaly20241.28
Annual anomaly20251.18
View chart code ⌘
JavaScript · workspace imports
import { layoutChart, toSvgChart } from '@borrowdale/charts';
import { excalifontFiles } from '@borrowdale/text/excalifont-files';

const spec = {
  "width": 1000,
  "height": 340,
  "title": "Global temperature anomaly",
  "legend": "none",
  "fontSize": 12,
  "axes": {
    "x": {
      "type": "band",
      "categories": [
        "1970",
        "1971",
        "1972",
        "1973",
        "1974",
        "1975",
        "1976",
        "1977",
        "1978",
        "1979",
        "1980",
        "1981",
        "1982",
        "1983",
        "1984",
        "1985",
        "1986",
        "1987",
        "1988",
        "1989",
        "1990",
        "1991",
        "1992",
        "1993",
        "1994",
        "1995",
        "1996",
        "1997",
        "1998",
        "1999",
        "2000",
        "2001",
        "2002",
        "2003",
        "2004",
        "2005",
        "2006",
        "2007",
        "2008",
        "2009",
        "2010",
        "2011",
        "2012",
        "2013",
        "2014",
        "2015",
        "2016",
        "2017",
        "2018",
        "2019",
        "2020",
        "2021",
        "2022",
        "2023",
        "2024",
        "2025"
      ]
    },
    "y": {
      "type": "linear",
      "format": {
        "suffix": "°C"
      }
    }
  },
  "style": {
    "roughness": 0.8,
    "fillStyle": "solid"
  },
  "series": [
    {
      "type": "line",
      "name": "Annual anomaly",
      "color": "#bd6556",
      "data": [
        0.03,
        -0.08,
        0.01,
        0.16,
        -0.07,
        -0.01,
        -0.1,
        0.18,
        0.07,
        0.16,
        0.26,
        0.32,
        0.14,
        0.31,
        0.16,
        0.12,
        0.18,
        0.32,
        0.39,
        0.27,
        0.45,
        0.41,
        0.22,
        0.23,
        0.31,
        0.45,
        0.33,
        0.47,
        0.61,
        0.38,
        0.39,
        0.53,
        0.63,
        0.62,
        0.53,
        0.68,
        0.64,
        0.66,
        0.54,
        0.66,
        0.72,
        0.61,
        0.65,
        0.67,
        0.75,
        0.89,
        1.01,
        0.91,
        0.85,
        0.98,
        1.01,
        0.85,
        0.89,
        1.17,
        1.28,
        1.18
      ]
    }
  ],
  "seed": 7
};
const svg = toSvgChart(layoutChart(spec), { fontFiles: excalifontFiles });
document.querySelector('#chart').innerHTML = svg;

Decades, not days

Arithmetic mean of available complete years · edge decades may be partial

↗

Swipe or scroll sideways to explore the chart →

Decade averagesDecade averagesMean anomaly, 1970s: 0.034999999999999996Mean anomaly, 1980s: 0.24700000000000003Mean anomaly, 1990s: 0.386Mean anomaly, 2000s: 0.5880000000000001Mean anomaly, 2010s: 0.8039999999999999Mean anomaly, 2020s: 1.06333333333333321970s1980s1990s2000s2010s2020s0.00.20.40.60.81.01.2
View data
Decades, not days data
SeriesPointValue
Mean anomaly1970s0.03
Mean anomaly1980s0.25
Mean anomaly1990s0.39
Mean anomaly2000s0.59
Mean anomaly2010s0.8
Mean anomaly2020s1.06
View chart code ⌘
JavaScript · workspace imports
import { layoutChart, toSvgChart } from '@borrowdale/charts';
import { excalifontFiles } from '@borrowdale/text/excalifont-files';

const spec = {
  "width": 660,
  "height": 310,
  "title": "Decade averages",
  "legend": "none",
  "fontSize": 12,
  "axes": {
    "x": {
      "type": "band",
      "categories": [
        "1970s",
        "1980s",
        "1990s",
        "2000s",
        "2010s",
        "2020s"
      ]
    },
    "y": {
      "type": "linear",
      "grid": true
    }
  },
  "style": {
    "roughness": 0.8,
    "fillStyle": "solid"
  },
  "series": [
    {
      "type": "bar",
      "name": "Mean anomaly",
      "color": "#bd6556",
      "data": [
        0.034999999999999996,
        0.24700000000000003,
        0.386,
        0.5880000000000001,
        0.8039999999999999,
        1.0633333333333332
      ]
    }
  ],
  "seed": 7
};
const svg = toSvgChart(layoutChart(spec), { fontFiles: excalifontFiles });
document.querySelector('#chart').innerHTML = svg;

The shape of a year

Last three complete years · monthly anomalies in °C

↗

Swipe or scroll sideways to explore the chart →

Monthly anomaliesMonthly anomalies2023202420252023202420251°C2°CJanFebMarAprMayJunJulAugSepOctNovDec
View data
The shape of a year data
SeriesPointValue
2023Jan0.87
2023Feb0.96
2023Mar1.23
2023Apr0.98
2023May0.94
2023Jun1.08
2023Jul1.19
2023Aug1.19
2023Sep1.48
2023Oct1.34
2023Nov1.4
2023Dec1.35
2024Jan1.25
2024Feb1.43
2024Mar1.39
2024Apr1.32
2024May1.16
2024Jun1.23
2024Jul1.2
2024Aug1.3
2024Sep1.21
2024Oct1.34
2024Nov1.29
2024Dec1.26
2025Jan1.37
2025Feb1.25
2025Mar1.36
2025Apr1.24
2025May1.07
2025Jun1.06
2025Jul1.02
2025Aug1.17
2025Sep1.24
2025Oct1.18
2025Nov1.21
2025Dec1.05
View chart code ⌘
JavaScript · workspace imports
import { layoutChart, toSvgChart } from '@borrowdale/charts';
import { excalifontFiles } from '@borrowdale/text/excalifont-files';

const spec = {
  "width": 660,
  "height": 370,
  "title": "Monthly anomalies",
  "legend": "top",
  "axes": {
    "angle": {
      "type": "band",
      "categories": [
        "Jan",
        "Feb",
        "Mar",
        "Apr",
        "May",
        "Jun",
        "Jul",
        "Aug",
        "Sep",
        "Oct",
        "Nov",
        "Dec"
      ]
    },
    "radius": {
      "type": "linear",
      "min": 0,
      "format": {
        "suffix": "°C"
      }
    }
  },
  "series": [
    {
      "type": "polarArea",
      "name": "2023",
      "color": "#397e92",
      "data": [
        0.87,
        0.96,
        1.23,
        0.98,
        0.94,
        1.08,
        1.19,
        1.19,
        1.48,
        1.34,
        1.4,
        1.35
      ]
    },
    {
      "type": "polarLine",
      "name": "2024",
      "color": "#de9b24",
      "data": [
        1.25,
        1.43,
        1.39,
        1.32,
        1.16,
        1.23,
        1.2,
        1.3,
        1.21,
        1.34,
        1.29,
        1.26
      ]
    },
    {
      "type": "polarLine",
      "name": "2025",
      "color": "#bd6556",
      "data": [
        1.37,
        1.25,
        1.36,
        1.24,
        1.07,
        1.06,
        1.02,
        1.17,
        1.24,
        1.18,
        1.21,
        1.05
      ]
    }
  ],
  "seed": 7
};
const svg = toSvgChart(layoutChart(spec), { fontFiles: excalifontFiles });
document.querySelector('#chart').innerHTML = svg;

Within each year

Monthly minimum–maximum envelope, not an uncertainty interval · °C

↗

Swipe or scroll sideways to explore the chart →

Monthly range and annual meanMonthly range and annual meanMonthly rangeAnnual meanMonthly rangeAnnual mean19701974197819821986199019941998200220062010201420182022-0.50.00.51.01.5
View data
Within each year data
SeriesPointValue
Monthly range1970-0.12 · 0.22
Monthly range1971-0.18 · -0.01
Monthly range1972-0.22 · 0.18
Monthly range1973-0.07 · 0.32
Monthly range1974-0.27 · 0.1
Monthly range1975-0.17 · 0.16
Monthly range1976-0.24 · 0.11
Monthly range19770.02 · 0.33
Monthly range1978-0.14 · 0.19
Monthly range1979-0.1 · 0.47
Monthly range19800.13 · 0.39
Monthly range19810.12 · 0.53
Monthly range19820.03 · 0.43
Monthly range19830.17 · 0.53
Monthly range1984-0.04 · 0.33
Monthly range1985-0.04 · 0.22
Monthly range19860.03 · 0.37
Monthly range19870.18 · 0.46
Monthly range19880.12 · 0.57
Monthly range19890.12 · 0.37
Monthly range19900.23 · 0.8
Monthly range19910.29 · 0.53
Monthly range1992-0.01 · 0.48
Monthly range19930.03 · 0.37
Monthly range19940.02 · 0.44
Monthly range19950.26 · 0.79
Monthly range19960.22 · 0.49
Monthly range19970.32 · 0.64
Monthly range19980.42 · 0.88
Monthly range19990.26 · 0.64
Monthly range20000.25 · 0.56
Monthly range20010.44 · 0.72
Monthly range20020.44 · 0.88
Monthly range20030.48 · 0.75
Monthly range20040.26 · 0.73
Monthly range20050.59 · 0.76
Monthly range20060.47 · 0.79
Monthly range20070.5 · 1.01
Monthly range20080.3 · 0.75
Monthly range20090.53 · 0.8
Monthly range20100.45 · 0.92
Monthly range20110.48 · 0.74
Monthly range20120.47 · 0.8
Monthly range20130.53 · 0.83
Monthly range20140.55 · 0.87
Monthly range20150.73 · 1.17
Monthly range20160.8 · 1.36
Monthly range20170.71 · 1.15
Monthly range20180.77 · 1.02
Monthly range20190.86 · 1.17
Monthly range20200.8 · 1.23
Monthly range20210.64 · 0.98
Monthly range20220.73 · 1.04
Monthly range20230.87 · 1.48
Monthly range20241.16 · 1.43
Monthly range20251.02 · 1.37
Annual mean19700.03
Annual mean1971-0.08
Annual mean19720.01
Annual mean19730.16
Annual mean1974-0.07
Annual mean1975-0.01
Annual mean1976-0.1
Annual mean19770.18
Annual mean19780.07
Annual mean19790.16
Annual mean19800.26
Annual mean19810.32
Annual mean19820.14
Annual mean19830.31
Annual mean19840.16
Annual mean19850.12
Annual mean19860.18
Annual mean19870.32
Annual mean19880.39
Annual mean19890.27
Annual mean19900.45
Annual mean19910.41
Annual mean19920.22
Annual mean19930.23
Annual mean19940.31
Annual mean19950.45
Annual mean19960.33
Annual mean19970.47
Annual mean19980.61
Annual mean19990.38
Annual mean20000.39
Annual mean20010.53
Annual mean20020.63
Annual mean20030.62
Annual mean20040.53
Annual mean20050.68
Annual mean20060.64
Annual mean20070.66
Annual mean20080.54
Annual mean20090.66
Annual mean20100.72
Annual mean20110.61
Annual mean20120.65
Annual mean20130.67
Annual mean20140.75
Annual mean20150.89
Annual mean20161.01
Annual mean20170.91
Annual mean20180.85
Annual mean20190.98
Annual mean20201.01
Annual mean20210.85
Annual mean20220.89
Annual mean20231.17
Annual mean20241.28
Annual mean20251.18
View chart code ⌘
JavaScript · workspace imports
import { layoutChart, toSvgChart } from '@borrowdale/charts';
import { excalifontFiles } from '@borrowdale/text/excalifont-files';

const spec = {
  "width": 660,
  "height": 310,
  "title": "Monthly range and annual mean",
  "legend": "top",
  "fontSize": 12,
  "axes": {
    "x": {
      "type": "band",
      "categories": [
        "1970",
        "1971",
        "1972",
        "1973",
        "1974",
        "1975",
        "1976",
        "1977",
        "1978",
        "1979",
        "1980",
        "1981",
        "1982",
        "1983",
        "1984",
        "1985",
        "1986",
        "1987",
        "1988",
        "1989",
        "1990",
        "1991",
        "1992",
        "1993",
        "1994",
        "1995",
        "1996",
        "1997",
        "1998",
        "1999",
        "2000",
        "2001",
        "2002",
        "2003",
        "2004",
        "2005",
        "2006",
        "2007",
        "2008",
        "2009",
        "2010",
        "2011",
        "2012",
        "2013",
        "2014",
        "2015",
        "2016",
        "2017",
        "2018",
        "2019",
        "2020",
        "2021",
        "2022",
        "2023",
        "2024",
        "2025"
      ]
    },
    "y": {
      "type": "linear",
      "grid": true
    }
  },
  "style": {
    "roughness": 0.8,
    "fillStyle": "solid"
  },
  "series": [
    {
      "type": "rangeArea",
      "name": "Monthly range",
      "color": "#de9b24",
      "data": [
        [
          -0.12,
          0.22
        ],
        [
          -0.18,
          -0.01
        ],
        [
          -0.22,
          0.18
        ],
        [
          -0.07,
          0.32
        ],
        [
          -0.27,
          0.1
        ],
        [
          -0.17,
          0.16
        ],
        [
          -0.24,
          0.11
        ],
        [
          0.02,
          0.33
        ],
        [
          -0.14,
          0.19
        ],
        [
          -0.1,
          0.47
        ],
        [
          0.13,
          0.39
        ],
        [
          0.12,
          0.53
        ],
        [
          0.03,
          0.43
        ],
        [
          0.17,
          0.53
        ],
        [
          -0.04,
          0.33
        ],
        [
          -0.04,
          0.22
        ],
        [
          0.03,
          0.37
        ],
        [
          0.18,
          0.46
        ],
        [
          0.12,
          0.57
        ],
        [
          0.12,
          0.37
        ],
        [
          0.23,
          0.8
        ],
        [
          0.29,
          0.53
        ],
        [
          -0.01,
          0.48
        ],
        [
          0.03,
          0.37
        ],
        [
          0.02,
          0.44
        ],
        [
          0.26,
          0.79
        ],
        [
          0.22,
          0.49
        ],
        [
          0.32,
          0.64
        ],
        [
          0.42,
          0.88
        ],
        [
          0.26,
          0.64
        ],
        [
          0.25,
          0.56
        ],
        [
          0.44,
          0.72
        ],
        [
          0.44,
          0.88
        ],
        [
          0.48,
          0.75
        ],
        [
          0.26,
          0.73
        ],
        [
          0.59,
          0.76
        ],
        [
          0.47,
          0.79
        ],
        [
          0.5,
          1.01
        ],
        [
          0.3,
          0.75
        ],
        [
          0.53,
          0.8
        ],
        [
          0.45,
          0.92
        ],
        [
          0.48,
          0.74
        ],
        [
          0.47,
          0.8
        ],
        [
          0.53,
          0.83
        ],
        [
          0.55,
          0.87
        ],
        [
          0.73,
          1.17
        ],
        [
          0.8,
          1.36
        ],
        [
          0.71,
          1.15
        ],
        [
          0.77,
          1.02
        ],
        [
          0.86,
          1.17
        ],
        [
          0.8,
          1.23
        ],
        [
          0.64,
          0.98
        ],
        [
          0.73,
          1.04
        ],
        [
          0.87,
          1.48
        ],
        [
          1.16,
          1.43
        ],
        [
          1.02,
          1.37
        ]
      ]
    },
    {
      "type": "line",
      "name": "Annual mean",
      "color": "#bd6556",
      "data": [
        0.03,
        -0.08,
        0.01,
        0.16,
        -0.07,
        -0.01,
        -0.1,
        0.18,
        0.07,
        0.16,
        0.26,
        0.32,
        0.14,
        0.31,
        0.16,
        0.12,
        0.18,
        0.32,
        0.39,
        0.27,
        0.45,
        0.41,
        0.22,
        0.23,
        0.31,
        0.45,
        0.33,
        0.47,
        0.61,
        0.38,
        0.39,
        0.53,
        0.63,
        0.62,
        0.53,
        0.68,
        0.64,
        0.66,
        0.54,
        0.66,
        0.72,
        0.61,
        0.65,
        0.67,
        0.75,
        0.89,
        1.01,
        0.91,
        0.85,
        0.98,
        1.01,
        0.85,
        0.89,
        1.17,
        1.28,
        1.18
      ]
    }
  ],
  "seed": 7
};
const svg = toSvgChart(layoutChart(spec), { fontFiles: excalifontFiles });
document.querySelector('#chart').innerHTML = svg;

The latest reading

1951–1980 baseline · 0–2°C display scale, not a policy target

↗

Swipe or scroll sideways to explore the chart →

2025 annual anomaly2025 annual anomaly0.0°C0.2°C0.4°C0.6°C0.8°C1.0°C1.2°C1.4°C1.6°C1.8°C2.0°CAnomaly: 1.18°C1.18°C
View data
The latest reading data
SeriesPointValue
Anomaly1.18
View chart code ⌘
JavaScript · workspace imports
import { layoutChart, toSvgChart } from '@borrowdale/charts';
import { excalifontFiles } from '@borrowdale/text/excalifont-files';

const spec = {
  "width": 660,
  "height": 310,
  "title": "2025 annual anomaly",
  "axes": {
    "angle": {
      "type": "linear",
      "min": 0,
      "max": 2,
      "format": {
        "suffix": "°C"
      }
    }
  },
  "series": [
    {
      "type": "gauge",
      "name": "Anomaly",
      "color": "#bd6556",
      "value": 1.18
    }
  ],
  "seed": 7
};
const svg = toSvgChart(layoutChart(spec), { fontFiles: excalifontFiles });
document.querySelector('#chart').innerHTML = svg;