{
 "title": "Launch sites of the world",
 "source": "GCAT, Jonathan McDowell: launch list, sites table and organisations table; NASA, ESA and Space Force references for the physics",
 "label": "Public data",
 "source_urls": {
  "gcat": "https://planet4589.org/space/gcat",
  "launch_list": "https://planet4589.org/space/gcat/tsv/launch/launch.tsv",
  "sites": "https://planet4589.org/space/gcat/tsv/tables/sites.tsv",
  "organisations": "https://planet4589.org/space/gcat/tsv/tables/orgs.tsv",
  "introduction": "https://planet4589.org/space/gcat/index.html",
  "columns": "https://planet4589.org/space/gcat/web/launch/lcols.html",
  "nasa_launch_sites": "https://science.nasa.gov/learn/basics-of-space-flight/chapter14-1/",
  "nasa_launch_operations": "https://public.ksc.nasa.gov/lspeducation/launch-operations/",
  "esa_soyuz": "https://www.esa.int/Enabling_Support/Space_Transportation/Launch_vehicles/Soyuz",
  "esa_spaceport": "https://www.esa.int/Enabling_Support/Space_Transportation/Europe_s_Spaceport"
 },
 "credit": "Data from GCAT (J. McDowell, planet4589.org/space/gcat), CC BY 4.0. data from GCAT (J. McDowell, planet4589.org/space/gcat)",
 "license": "CC BY 4.0 (the GCAT introduction page says it is released under the Creative Commons CC-BY licence; wording checked by the script)",
 "retrieved": "2026-10-08",
 "release": "GCAT release 1.8.8 (2026 Sep 3), data update 2026 Oct 9; launch list 2026 Oct  9 1759:48",
 "period": "1957 to 2026-10-07",
 "unit": "orbital launch attempts; latitude in degrees; speed in km per hour",
 "query": "GCAT launch.tsv rows whose LaunchCode is O followed by S or F, joined to sites.tsv on Launch_Site (a trailing question mark removed). A spaceport is the sites.tsv Group when it is set, otherwise UCode. The country is the GCAT launching state of the site with most launches. The rotation speed at a latitude is 2 pi R cos(latitude) / one sidereal day, R = 6378.137 km, day = 86164.09 s.",
 "basis": "Launch attempts, not payloads or mass: a Starlink launch of 20 satellites and a small rocket with one count the same. The sites are as GCAT groups them; GCAT counts Baikonur under Russia and the Soviet Union, and French Guiana under its own code.",
 "caveat": "Counts follow GCAT's launch list at its update date, and the newest launches are added as GCAT confirms them. 2026 is partial. A spaceport row joins pads that GCAT groups; GCAT keeps some historic sites apart (the Russian northern site Plesetsk has two codes that are joined here by GCAT's unified code). GCAT's payload mass column is still being filled in and is not used. The free speed from Earth's rotation is the only latitude effect shown; real payload also depends on the orbit, the rocket and range safety, which is why Vandenberg exists despite its higher latitude.",
 "kpi": {
  "data_through": "2026-10-07",
  "gcat_update": "2026 Oct 9",
  "attempts": 7173,
  "spaceports": 45,
  "busiest": {
   "key": "PL",
   "name": "Plesetsk",
   "state": "Soviet Union",
   "state_code": "SU",
   "lat": 62.9,
   "lon": 40.5,
   "site_codes": [
    "GIK-1",
    "GNIIP",
    "GNIIPV",
    "NIIP-53"
   ],
   "launches": 1686,
   "first_year": 1966,
   "last_year": 2026,
   "last5": 39,
   "y2026": 8,
   "by_decade": {
    "1960s": 108,
    "1970s": 615,
    "1980s": 570,
    "1990s": 213,
    "2000s": 63,
    "2010s": 63,
    "2020s": 54
   },
   "by_year": {
    "1966": 7,
    "1967": 30,
    "1968": 31,
    "1969": 40,
    "1970": 53,
    "1971": 58,
    "1972": 55,
    "1973": 63,
    "1974": 58,
    "1975": 63,
    "1976": 65,
    "1977": 70,
    "1978": 62,
    "1979": 68,
    "1980": 64,
    "1981": 60,
    "1982": 59,
    "1983": 63,
    "1984": 62,
    "1985": 63,
    "1986": 57,
    "1987": 48,
    "1988": 48,
    "1989": 46,
    "1990": 50,
    "1991": 38,
    "1992": 33,
    "1993": 26,
    "1994": 19,
    "1995": 14,
    "1996": 11,
    "1997": 9,
    "1998": 7,
    "1999": 6,
    "2000": 5,
    "2001": 6,
    "2002": 10,
    "2003": 7,
    "2004": 5,
    "2005": 6,
    "2006": 5,
    "2007": 5,
    "2008": 6,
    "2009": 8,
    "2010": 6,
    "2011": 7,
    "2012": 3,
    "2013": 7,
    "2014": 9,
    "2015": 7,
    "2016": 5,
    "2017": 5,
    "2018": 6,
    "2019": 8,
    "2020": 7,
    "2021": 5,
    "2022": 13,
    "2023": 7,
    "2024": 5,
    "2025": 9,
    "2026": 8
   }
  },
  "busiest_share_pct": 23.5,
  "busiest5": {
   "key": "CC",
   "name": "Cape Canaveral and Kennedy",
   "state": "United States",
   "state_code": "US",
   "lat": 28.46,
   "lon": -80.54,
   "site_codes": [
    "CC",
    "KSC",
    "SPFL",
    "SPFLA"
   ],
   "launches": 1269,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 347,
   "y2026": 56,
   "by_decade": {
    "1950s": 28,
    "1960s": 156,
    "1970s": 112,
    "1980s": 92,
    "1990s": 198,
    "2000s": 115,
    "2010s": 137,
    "2020s": 431
   },
   "by_year": {
    "1957": 1,
    "1958": 17,
    "1959": 10,
    "1960": 15,
    "1961": 15,
    "1962": 16,
    "1963": 10,
    "1964": 15,
    "1965": 23,
    "1966": 25,
    "1967": 12,
    "1968": 12,
    "1969": 13,
    "1970": 10,
    "1971": 9,
    "1972": 7,
    "1973": 10,
    "1974": 9,
    "1975": 14,
    "1976": 12,
    "1977": 17,
    "1978": 16,
    "1979": 8,
    "1980": 6,
    "1981": 11,
    "1982": 13,
    "1983": 11,
    "1984": 12,
    "1985": 12,
    "1986": 5,
    "1987": 4,
    "1988": 4,
    "1989": 14,
    "1990": 22,
    "1991": 13,
    "1992": 23,
    "1993": 20,
    "1994": 18,
    "1995": 22,
    "1996": 21,
    "1997": 22,
    "1998": 20,
    "1999": 17,
    "2000": 19,
    "2001": 13,
    "2002": 13,
    "2003": 14,
    "2004": 12,
    "2005": 5,
    "2006": 8,
    "2007": 10,
    "2008": 7,
    "2009": 14,
    "2010": 10,
    "2011": 7,
    "2012": 10,
    "2013": 10,
    "2014": 16,
    "2015": 16,
    "2016": 17,
    "2017": 19,
    "2018": 17,
    "2019": 15,
    "2020": 28,
    "2021": 30,
    "2022": 54,
    "2023": 69,
    "2024": 89,
    "2025": 105,
    "2026": 56
   }
  },
  "busiest5_share_pct": 31.0,
  "last5_total": 1119,
  "top5_ports_share_last5_pct": 70.9,
  "ports_active_last5": 32,
  "vandenberg": {
   "launches": 925,
   "rank_all_time": 4,
   "rank_last5": 2,
   "last5": 165,
   "us_last5": 538,
   "share_of_us_last5_pct": 30.7,
   "distance_to_la_km": 226,
   "peak_year": "2025",
   "peak": 66,
   "y2025": 66,
   "y2026": 64
  },
  "canaveral": {
   "launches": 1269,
   "last5": 347,
   "y2025": 105
  },
  "equator_kmh": 1674,
  "kourou_lat": 5.233,
  "soyuz": {
   "source": "ESA, Soyuz launch vehicle page",
   "url": "https://www.esa.int/Enabling_Support/Space_Transportation/Launch_vehicles/Soyuz",
   "kourou_gto_tonnes": 3.0,
   "baikonur_gto_tonnes": 1.7,
   "gain_pct": 76,
   "kourou_lat": 5.233,
   "baikonur_lat": 46.0,
   "kourou_rotation_kmh": 1667,
   "baikonur_rotation_kmh": 1163,
   "speed_difference_kmh": 504
  }
 },
 "spaceports": [
  {
   "key": "PL",
   "name": "Plesetsk",
   "state": "Soviet Union",
   "state_code": "SU",
   "lat": 62.9,
   "lon": 40.5,
   "site_codes": [
    "GIK-1",
    "GNIIP",
    "GNIIPV",
    "NIIP-53"
   ],
   "launches": 1686,
   "first_year": 1966,
   "last_year": 2026,
   "last5": 39,
   "y2026": 8,
   "by_decade": {
    "1960s": 108,
    "1970s": 615,
    "1980s": 570,
    "1990s": 213,
    "2000s": 63,
    "2010s": 63,
    "2020s": 54
   }
  },
  {
   "key": "KB",
   "name": "Baikonur",
   "state": "Russia",
   "state_code": "RU",
   "lat": 46.0,
   "lon": 63.0,
   "site_codes": [
    "GIK-5",
    "NIIP-5"
   ],
   "launches": 1494,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 44,
   "y2026": 5,
   "by_decade": {
    "1950s": 8,
    "1960s": 239,
    "1970s": 249,
    "1980s": 360,
    "1990s": 217,
    "2000s": 189,
    "2010s": 176,
    "2020s": 56
   }
  },
  {
   "key": "CC",
   "name": "Cape Canaveral and Kennedy",
   "state": "United States",
   "state_code": "US",
   "lat": 28.46,
   "lon": -80.54,
   "site_codes": [
    "CC",
    "KSC",
    "SPFL",
    "SPFLA"
   ],
   "launches": 1269,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 347,
   "y2026": 56,
   "by_decade": {
    "1950s": 28,
    "1960s": 156,
    "1970s": 112,
    "1980s": 92,
    "1990s": 198,
    "2000s": 115,
    "2010s": 137,
    "2020s": 431
   }
  },
  {
   "key": "WTR",
   "name": "Vandenberg",
   "state": "United States",
   "state_code": "US",
   "lat": 34.63,
   "lon": -120.61,
   "site_codes": [
    "PA",
    "V",
    "VS",
    "VSFB",
    "VSFBS"
   ],
   "launches": 925,
   "first_year": 1959,
   "last_year": 2026,
   "last5": 165,
   "y2026": 64,
   "by_decade": {
    "1950s": 8,
    "1960s": 327,
    "1970s": 136,
    "1980s": 66,
    "1990s": 68,
    "2000s": 49,
    "2010s": 41,
    "2020s": 230
   }
  },
  {
   "key": "CSG",
   "name": "Kourou",
   "state": "French Guiana",
   "state_code": "GUF",
   "lat": 5.233,
   "lon": -52.752,
   "site_codes": [
    "CSG"
   ],
   "launches": 329,
   "first_year": 1970,
   "last_year": 2026,
   "last5": 25,
   "y2026": 6,
   "by_decade": {
    "1970s": 10,
    "1980s": 32,
    "1990s": 91,
    "2000s": 65,
    "2010s": 93,
    "2020s": 38
   }
  },
  {
   "key": "JQ",
   "name": "Jiuquan",
   "state": "China",
   "state_code": "CN",
   "lat": 41.31,
   "lon": 100.31,
   "site_codes": [
    "JQ"
   ],
   "launches": 298,
   "first_year": 1970,
   "last_year": 2026,
   "last5": 137,
   "y2026": 26,
   "by_decade": {
    "1970s": 13,
    "1980s": 9,
    "1990s": 7,
    "2000s": 18,
    "2010s": 75,
    "2020s": 176
   }
  },
  {
   "key": "XSC",
   "name": "Xichang",
   "state": "China",
   "state_code": "CN",
   "lat": 28.247,
   "lon": 102.029,
   "site_codes": [
    "XSC"
   ],
   "launches": 234,
   "first_year": 1984,
   "last_year": 2026,
   "last5": 83,
   "y2026": 6,
   "by_decade": {
    "1980s": 5,
    "1990s": 22,
    "2000s": 25,
    "2010s": 80,
    "2020s": 102
   }
  },
  {
   "key": "TYSC",
   "name": "Taiyuan",
   "state": "China",
   "state_code": "CN",
   "lat": 37.5,
   "lon": 112.6,
   "site_codes": [
    "TYSC"
   ],
   "launches": 162,
   "first_year": 1988,
   "last_year": 2026,
   "last5": 61,
   "y2026": 12,
   "by_decade": {
    "1980s": 1,
    "1990s": 10,
    "2000s": 21,
    "2010s": 50,
    "2020s": 80
   }
  },
  {
   "key": "KY",
   "name": "Kapustin Yar",
   "state": "Soviet Union",
   "state_code": "SU",
   "lat": 48.5,
   "lon": 45.8,
   "site_codes": [
    "GTsMP-4",
    "GTsP-4"
   ],
   "launches": 101,
   "first_year": 1961,
   "last_year": 2008,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1960s": 64,
    "1970s": 20,
    "1980s": 15,
    "1990s": 1,
    "2000s": 1
   }
  },
  {
   "key": "SHAR",
   "name": "Sriharikota",
   "state": "India",
   "state_code": "IN",
   "lat": 13.621,
   "lon": 80.303,
   "site_codes": [
    "SDSC",
    "SHAR"
   ],
   "launches": 100,
   "first_year": 1979,
   "last_year": 2026,
   "last5": 22,
   "y2026": 3,
   "by_decade": {
    "1970s": 1,
    "1980s": 5,
    "1990s": 7,
    "2000s": 15,
    "2010s": 45,
    "2020s": 27
   }
  },
  {
   "key": "TNSC",
   "name": "Tanegashima",
   "state": "Japan",
   "state_code": "J",
   "lat": 30.4,
   "lon": 130.97,
   "site_codes": [
    "TNSC"
   ],
   "launches": 95,
   "first_year": 1975,
   "last_year": 2026,
   "last5": 14,
   "y2026": 2,
   "by_decade": {
    "1970s": 5,
    "1980s": 15,
    "1990s": 11,
    "2000s": 16,
    "2010s": 29,
    "2020s": 19
   }
  },
  {
   "key": "MAHIA",
   "name": "Mahia",
   "state": "New Zealand",
   "state_code": "NZ",
   "lat": -39.261,
   "lon": 177.865,
   "site_codes": [
    "MAHIA"
   ],
   "launches": 83,
   "first_year": 2017,
   "last_year": 2026,
   "last5": 51,
   "y2026": 15,
   "by_decade": {
    "2010s": 10,
    "2020s": 73
   }
  },
  {
   "key": "WI",
   "name": "Wallops MARS",
   "state": "United States",
   "state_code": "US",
   "lat": 37.83,
   "lon": -75.48,
   "site_codes": [
    "MARS",
    "WI",
    "WIMB"
   ],
   "launches": 59,
   "first_year": 1960,
   "last_year": 2026,
   "last5": 10,
   "y2026": 1,
   "by_decade": {
    "1960s": 14,
    "1970s": 6,
    "1980s": 1,
    "1990s": 7,
    "2000s": 3,
    "2010s": 14,
    "2020s": 14
   }
  },
  {
   "key": "WEN",
   "name": "Wenchang",
   "state": "China",
   "state_code": "CN",
   "lat": 19.614,
   "lon": 110.951,
   "site_codes": [
    "WEN"
   ],
   "launches": 47,
   "first_year": 2016,
   "last_year": 2026,
   "last5": 33,
   "y2026": 6,
   "by_decade": {
    "2010s": 5,
    "2020s": 42
   }
  },
  {
   "key": "KASC",
   "name": "Kagoshima",
   "state": "Japan",
   "state_code": "J",
   "lat": 31.25,
   "lon": 131.079,
   "site_codes": [
    "KASC",
    "USC"
   ],
   "launches": 38,
   "first_year": 1966,
   "last_year": 2022,
   "last5": 2,
   "y2026": 0,
   "by_decade": {
    "1960s": 4,
    "1970s": 12,
    "1980s": 6,
    "1990s": 4,
    "2000s": 4,
    "2010s": 6,
    "2020s": 2
   }
  },
  {
   "key": "KLA",
   "name": "Kirimati",
   "state": "Kiribati",
   "state_code": "KI",
   "lat": 0.0,
   "lon": -154.0,
   "site_codes": [
    "KLA"
   ],
   "launches": 36,
   "first_year": 1999,
   "last_year": 2014,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1990s": 2,
    "2000s": 28,
    "2010s": 6
   }
  },
  {
   "key": "VOST",
   "name": "Vostochniy",
   "state": "Russia",
   "state_code": "RU",
   "lat": 51.7,
   "lon": 128.0,
   "site_codes": [
    "GIK-2",
    "VOST"
   ],
   "launches": 25,
   "first_year": 1997,
   "last_year": 2025,
   "last5": 14,
   "y2026": 0,
   "by_decade": {
    "1990s": 2,
    "2000s": 3,
    "2010s": 5,
    "2020s": 15
   }
  },
  {
   "key": "HCSLS",
   "name": "Hainan CLS",
   "state": "China",
   "state_code": "CN",
   "lat": 19.597,
   "lon": 110.931,
   "site_codes": [
    "HCSLS"
   ],
   "launches": 23,
   "first_year": 2024,
   "last_year": 2026,
   "last5": 10,
   "y2026": 13,
   "by_decade": {
    "2020s": 23
   }
  },
  {
   "key": "HHAI",
   "name": "Huang Hai",
   "state": "China",
   "state_code": "CN",
   "lat": 34.9,
   "lon": 121.19,
   "site_codes": [
    "HHAI"
   ],
   "launches": 20,
   "first_year": 2019,
   "last_year": 2026,
   "last5": 15,
   "y2026": 3,
   "by_decade": {
    "2010s": 1,
    "2020s": 19
   }
  },
  {
   "key": "SEM",
   "name": "Semnan",
   "state": "Iran",
   "state_code": "IR",
   "lat": 35.235,
   "lon": 53.921,
   "site_codes": [
    "SEM"
   ],
   "launches": 15,
   "first_year": 2008,
   "last_year": 2025,
   "last5": 5,
   "y2026": 0,
   "by_decade": {
    "2000s": 2,
    "2010s": 7,
    "2020s": 6
   }
  },
  {
   "key": "PALB",
   "name": "Palmachim",
   "state": "Israel",
   "state_code": "IL",
   "lat": 31.9,
   "lon": 34.7,
   "site_codes": [
    "PALB"
   ],
   "launches": 13,
   "first_year": 1988,
   "last_year": 2025,
   "last5": 2,
   "y2026": 0,
   "by_decade": {
    "1980s": 1,
    "1990s": 3,
    "2000s": 3,
    "2010s": 3,
    "2020s": 3
   }
  },
  {
   "key": "BCB",
   "name": "Starbase",
   "state": "United States",
   "state_code": "US",
   "lat": 25.996,
   "lon": -97.154,
   "site_codes": [
    "STB"
   ],
   "launches": 11,
   "first_year": 2024,
   "last_year": 2026,
   "last5": 8,
   "y2026": 3,
   "by_decade": {
    "2020s": 11
   }
  },
  {
   "key": "YAS",
   "name": "Yasniy",
   "state": "Russia",
   "state_code": "RU",
   "lat": 50.75,
   "lon": 59.5,
   "site_codes": [
    "YAS"
   ],
   "launches": 10,
   "first_year": 2006,
   "last_year": 2015,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "2000s": 3,
    "2010s": 7
   }
  },
  {
   "key": "SMLC",
   "name": "San Marco",
   "state": "Kenya",
   "state_code": "KE",
   "lat": -2.941,
   "lon": 40.213,
   "site_codes": [
    "SMLC"
   ],
   "launches": 9,
   "first_year": 1967,
   "last_year": 1988,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1960s": 1,
    "1970s": 7,
    "1980s": 1
   }
  },
  {
   "key": "OCEAN",
   "name": "Yangjiang",
   "state": "China",
   "state_code": "CN",
   "lat": 21.28,
   "lon": 112.0,
   "site_codes": [
    "BLA",
    "YJ"
   ],
   "launches": 9,
   "first_year": 1998,
   "last_year": 2026,
   "last5": 4,
   "y2026": 2,
   "by_decade": {
    "1990s": 1,
    "2000s": 2,
    "2020s": 6
   }
  },
  {
   "key": "KMR",
   "name": "Kwajalein",
   "state": "Pacific Islands (U.S. trust territory)",
   "state_code": "TTPI",
   "lat": 8.992,
   "lon": 167.72,
   "site_codes": [
    "KMR"
   ],
   "launches": 9,
   "first_year": 2000,
   "last_year": 2026,
   "last5": 0,
   "y2026": 1,
   "by_decade": {
    "2000s": 7,
    "2010s": 1,
    "2020s": 1
   }
  },
  {
   "key": "KLC",
   "name": "Kodiak",
   "state": "United States",
   "state_code": "US",
   "lat": 57.436,
   "lon": -152.338,
   "site_codes": [
    "KLC",
    "PSCA"
   ],
   "launches": 9,
   "first_year": 2001,
   "last_year": 2023,
   "last5": 4,
   "y2026": 0,
   "by_decade": {
    "2000s": 1,
    "2010s": 2,
    "2020s": 6
   }
  },
  {
   "key": "NARO",
   "name": "Naro",
   "state": "South Korea",
   "state_code": "KR",
   "lat": 34.432,
   "lon": 127.536,
   "site_codes": [
    "NARO"
   ],
   "launches": 8,
   "first_year": 2009,
   "last_year": 2026,
   "last5": 4,
   "y2026": 1,
   "by_decade": {
    "2000s": 1,
    "2010s": 2,
    "2020s": 5
   }
  },
  {
   "key": "SOHAE",
   "name": "Tonghae (SOHAE)",
   "state": "North Korea",
   "state_code": "KP",
   "lat": 39.66,
   "lon": 124.706,
   "site_codes": [
    "SOHAE"
   ],
   "launches": 7,
   "first_year": 2012,
   "last_year": 2024,
   "last5": 4,
   "y2026": 0,
   "by_decade": {
    "2010s": 3,
    "2020s": 4
   }
  },
  {
   "key": "NOTS",
   "name": "China Lake",
   "state": "United States",
   "state_code": "US",
   "lat": 35.58,
   "lon": -117.17,
   "site_codes": [
    "NOTS"
   ],
   "launches": 6,
   "first_year": 1958,
   "last_year": 1958,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1950s": 6
   }
  },
  {
   "key": "WOO",
   "name": "Woomera",
   "state": "Australia",
   "state_code": "AU",
   "lat": -30.925,
   "lon": 136.5,
   "site_codes": [
    "WOO"
   ],
   "launches": 6,
   "first_year": 1967,
   "last_year": 1971,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1960s": 3,
    "1970s": 3
   }
  },
  {
   "key": "SHAHR",
   "name": "Shahroud",
   "state": "Iran",
   "state_code": "IR",
   "lat": 36.23,
   "lon": 55.33,
   "site_codes": [
    "SHAHR"
   ],
   "launches": 6,
   "first_year": 2020,
   "last_year": 2024,
   "last5": 5,
   "y2026": 0,
   "by_decade": {
    "2020s": 6
   }
  },
  {
   "key": "EAFB",
   "name": "Edwards AFB",
   "state": "United States",
   "state_code": "US",
   "lat": 34.9,
   "lon": -117.8,
   "site_codes": [
    "EAFB"
   ],
   "launches": 5,
   "first_year": 1990,
   "last_year": 1994,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1990s": 5
   }
  },
  {
   "key": "MHV",
   "name": "Mojave",
   "state": "United States",
   "state_code": "US",
   "lat": 35.049,
   "lon": -118.136,
   "site_codes": [
    "MHV"
   ],
   "launches": 5,
   "first_year": 2020,
   "last_year": 2022,
   "last5": 4,
   "y2026": 0,
   "by_decade": {
    "2020s": 5
   }
  },
  {
   "key": "HMG",
   "name": "Hammaguir",
   "state": "Algeria",
   "state_code": "DZ",
   "lat": 30.887,
   "lon": -3.083,
   "site_codes": [
    "HMG"
   ],
   "launches": 4,
   "first_year": 1965,
   "last_year": 1967,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1960s": 4
   }
  },
  {
   "key": "ALCA",
   "name": "Alcantara",
   "state": "Brazil",
   "state_code": "BR",
   "lat": -2.317,
   "lon": -44.367,
   "site_codes": [
    "ALCA"
   ],
   "launches": 3,
   "first_year": 1997,
   "last_year": 2025,
   "last5": 1,
   "y2026": 0,
   "by_decade": {
    "1990s": 2,
    "2020s": 1
   }
  },
  {
   "key": "KII",
   "name": "Kii",
   "state": "Japan",
   "state_code": "J",
   "lat": 33.544,
   "lon": 135.889,
   "site_codes": [
    "KII"
   ],
   "launches": 3,
   "first_year": 2024,
   "last_year": 2026,
   "last5": 2,
   "y2026": 1,
   "by_decade": {
    "2020s": 3
   }
  },
  {
   "key": "TONGH",
   "name": "Tonghae (TONGH)",
   "state": "North Korea",
   "state_code": "KP",
   "lat": 40.85,
   "lon": 129.667,
   "site_codes": [
    "TONGH"
   ],
   "launches": 2,
   "first_year": 1998,
   "last_year": 2009,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1990s": 1,
    "2000s": 1
   }
  },
  {
   "key": "AND",
   "name": "Andoya",
   "state": "Norway",
   "state_code": "N",
   "lat": 69.294,
   "lon": 16.021,
   "site_codes": [
    "AND"
   ],
   "launches": 2,
   "first_year": 2025,
   "last_year": 2026,
   "last5": 1,
   "y2026": 1,
   "by_decade": {
    "2020s": 2
   }
  },
  {
   "key": "ECS",
   "name": "East China Sea",
   "state": "China",
   "state_code": "CN",
   "lat": 31.2,
   "lon": 123.7,
   "site_codes": [
    "ECS"
   ],
   "launches": 2,
   "first_year": 2026,
   "last_year": 2026,
   "last5": 0,
   "y2026": 2,
   "by_decade": {
    "2020s": 2
   }
  },
  {
   "key": "GANC",
   "name": "Gando",
   "state": "Spain (Canary Islands)",
   "state_code": "ESCN",
   "lat": 27.92,
   "lon": -15.32,
   "site_codes": [
    "GANC"
   ],
   "launches": 1,
   "first_year": 1997,
   "last_year": 1997,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "1990s": 1
   }
  },
  {
   "key": "KAU",
   "name": "Kauai",
   "state": "United States",
   "state_code": "US",
   "lat": 22.058,
   "lon": -159.777,
   "site_codes": [
    "KAU"
   ],
   "launches": 1,
   "first_year": 2015,
   "last_year": 2015,
   "last5": 0,
   "y2026": 0,
   "by_decade": {
    "2010s": 1
   }
  },
  {
   "key": "NEWQ",
   "name": "Newquay",
   "state": "United Kingdom",
   "state_code": "UK",
   "lat": 50.441,
   "lon": -5.008,
   "site_codes": [
    "NEWQ"
   ],
   "launches": 1,
   "first_year": 2023,
   "last_year": 2023,
   "last5": 1,
   "y2026": 0,
   "by_decade": {
    "2020s": 1
   }
  },
  {
   "key": "JEJU",
   "name": "Jeju",
   "state": "South Korea",
   "state_code": "KR",
   "lat": 33.2,
   "lon": 126.4,
   "site_codes": [
    "JEJU"
   ],
   "launches": 1,
   "first_year": 2023,
   "last_year": 2023,
   "last5": 1,
   "y2026": 0,
   "by_decade": {
    "2020s": 1
   }
  },
  {
   "key": "BOWEN",
   "name": "Bowen",
   "state": "Australia",
   "state_code": "AU",
   "lat": -19.958,
   "lon": 148.114,
   "site_codes": [
    "BOWEN"
   ],
   "launches": 1,
   "first_year": 2025,
   "last_year": 2025,
   "last5": 1,
   "y2026": 0,
   "by_decade": {
    "2020s": 1
   }
  }
 ],
 "top_all_time": [
  {
   "key": "PL",
   "name": "Plesetsk",
   "state": "Soviet Union",
   "state_code": "SU",
   "lat": 62.9,
   "lon": 40.5,
   "site_codes": [
    "GIK-1",
    "GNIIP",
    "GNIIPV",
    "NIIP-53"
   ],
   "launches": 1686,
   "first_year": 1966,
   "last_year": 2026,
   "last5": 39,
   "y2026": 8
  },
  {
   "key": "KB",
   "name": "Baikonur",
   "state": "Russia",
   "state_code": "RU",
   "lat": 46.0,
   "lon": 63.0,
   "site_codes": [
    "GIK-5",
    "NIIP-5"
   ],
   "launches": 1494,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 44,
   "y2026": 5
  },
  {
   "key": "CC",
   "name": "Cape Canaveral and Kennedy",
   "state": "United States",
   "state_code": "US",
   "lat": 28.46,
   "lon": -80.54,
   "site_codes": [
    "CC",
    "KSC",
    "SPFL",
    "SPFLA"
   ],
   "launches": 1269,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 347,
   "y2026": 56
  },
  {
   "key": "WTR",
   "name": "Vandenberg",
   "state": "United States",
   "state_code": "US",
   "lat": 34.63,
   "lon": -120.61,
   "site_codes": [
    "PA",
    "V",
    "VS",
    "VSFB",
    "VSFBS"
   ],
   "launches": 925,
   "first_year": 1959,
   "last_year": 2026,
   "last5": 165,
   "y2026": 64
  },
  {
   "key": "CSG",
   "name": "Kourou",
   "state": "French Guiana",
   "state_code": "GUF",
   "lat": 5.233,
   "lon": -52.752,
   "site_codes": [
    "CSG"
   ],
   "launches": 329,
   "first_year": 1970,
   "last_year": 2026,
   "last5": 25,
   "y2026": 6
  },
  {
   "key": "JQ",
   "name": "Jiuquan",
   "state": "China",
   "state_code": "CN",
   "lat": 41.31,
   "lon": 100.31,
   "site_codes": [
    "JQ"
   ],
   "launches": 298,
   "first_year": 1970,
   "last_year": 2026,
   "last5": 137,
   "y2026": 26
  },
  {
   "key": "XSC",
   "name": "Xichang",
   "state": "China",
   "state_code": "CN",
   "lat": 28.247,
   "lon": 102.029,
   "site_codes": [
    "XSC"
   ],
   "launches": 234,
   "first_year": 1984,
   "last_year": 2026,
   "last5": 83,
   "y2026": 6
  },
  {
   "key": "TYSC",
   "name": "Taiyuan",
   "state": "China",
   "state_code": "CN",
   "lat": 37.5,
   "lon": 112.6,
   "site_codes": [
    "TYSC"
   ],
   "launches": 162,
   "first_year": 1988,
   "last_year": 2026,
   "last5": 61,
   "y2026": 12
  },
  {
   "key": "KY",
   "name": "Kapustin Yar",
   "state": "Soviet Union",
   "state_code": "SU",
   "lat": 48.5,
   "lon": 45.8,
   "site_codes": [
    "GTsMP-4",
    "GTsP-4"
   ],
   "launches": 101,
   "first_year": 1961,
   "last_year": 2008,
   "last5": 0,
   "y2026": 0
  },
  {
   "key": "SHAR",
   "name": "Sriharikota",
   "state": "India",
   "state_code": "IN",
   "lat": 13.621,
   "lon": 80.303,
   "site_codes": [
    "SDSC",
    "SHAR"
   ],
   "launches": 100,
   "first_year": 1979,
   "last_year": 2026,
   "last5": 22,
   "y2026": 3
  },
  {
   "key": "TNSC",
   "name": "Tanegashima",
   "state": "Japan",
   "state_code": "J",
   "lat": 30.4,
   "lon": 130.97,
   "site_codes": [
    "TNSC"
   ],
   "launches": 95,
   "first_year": 1975,
   "last_year": 2026,
   "last5": 14,
   "y2026": 2
  },
  {
   "key": "MAHIA",
   "name": "Mahia",
   "state": "New Zealand",
   "state_code": "NZ",
   "lat": -39.261,
   "lon": 177.865,
   "site_codes": [
    "MAHIA"
   ],
   "launches": 83,
   "first_year": 2017,
   "last_year": 2026,
   "last5": 51,
   "y2026": 15
  }
 ],
 "top_last5": [
  {
   "key": "CC",
   "name": "Cape Canaveral and Kennedy",
   "state": "United States",
   "state_code": "US",
   "lat": 28.46,
   "lon": -80.54,
   "site_codes": [
    "CC",
    "KSC",
    "SPFL",
    "SPFLA"
   ],
   "launches": 1269,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 347,
   "y2026": 56
  },
  {
   "key": "WTR",
   "name": "Vandenberg",
   "state": "United States",
   "state_code": "US",
   "lat": 34.63,
   "lon": -120.61,
   "site_codes": [
    "PA",
    "V",
    "VS",
    "VSFB",
    "VSFBS"
   ],
   "launches": 925,
   "first_year": 1959,
   "last_year": 2026,
   "last5": 165,
   "y2026": 64
  },
  {
   "key": "JQ",
   "name": "Jiuquan",
   "state": "China",
   "state_code": "CN",
   "lat": 41.31,
   "lon": 100.31,
   "site_codes": [
    "JQ"
   ],
   "launches": 298,
   "first_year": 1970,
   "last_year": 2026,
   "last5": 137,
   "y2026": 26
  },
  {
   "key": "XSC",
   "name": "Xichang",
   "state": "China",
   "state_code": "CN",
   "lat": 28.247,
   "lon": 102.029,
   "site_codes": [
    "XSC"
   ],
   "launches": 234,
   "first_year": 1984,
   "last_year": 2026,
   "last5": 83,
   "y2026": 6
  },
  {
   "key": "TYSC",
   "name": "Taiyuan",
   "state": "China",
   "state_code": "CN",
   "lat": 37.5,
   "lon": 112.6,
   "site_codes": [
    "TYSC"
   ],
   "launches": 162,
   "first_year": 1988,
   "last_year": 2026,
   "last5": 61,
   "y2026": 12
  },
  {
   "key": "MAHIA",
   "name": "Mahia",
   "state": "New Zealand",
   "state_code": "NZ",
   "lat": -39.261,
   "lon": 177.865,
   "site_codes": [
    "MAHIA"
   ],
   "launches": 83,
   "first_year": 2017,
   "last_year": 2026,
   "last5": 51,
   "y2026": 15
  },
  {
   "key": "KB",
   "name": "Baikonur",
   "state": "Russia",
   "state_code": "RU",
   "lat": 46.0,
   "lon": 63.0,
   "site_codes": [
    "GIK-5",
    "NIIP-5"
   ],
   "launches": 1494,
   "first_year": 1957,
   "last_year": 2026,
   "last5": 44,
   "y2026": 5
  },
  {
   "key": "PL",
   "name": "Plesetsk",
   "state": "Soviet Union",
   "state_code": "SU",
   "lat": 62.9,
   "lon": 40.5,
   "site_codes": [
    "GIK-1",
    "GNIIP",
    "GNIIPV",
    "NIIP-53"
   ],
   "launches": 1686,
   "first_year": 1966,
   "last_year": 2026,
   "last5": 39,
   "y2026": 8
  },
  {
   "key": "WEN",
   "name": "Wenchang",
   "state": "China",
   "state_code": "CN",
   "lat": 19.614,
   "lon": 110.951,
   "site_codes": [
    "WEN"
   ],
   "launches": 47,
   "first_year": 2016,
   "last_year": 2026,
   "last5": 33,
   "y2026": 6
  },
  {
   "key": "CSG",
   "name": "Kourou",
   "state": "French Guiana",
   "state_code": "GUF",
   "lat": 5.233,
   "lon": -52.752,
   "site_codes": [
    "CSG"
   ],
   "launches": 329,
   "first_year": 1970,
   "last_year": 2026,
   "last5": 25,
   "y2026": 6
  },
  {
   "key": "SHAR",
   "name": "Sriharikota",
   "state": "India",
   "state_code": "IN",
   "lat": 13.621,
   "lon": 80.303,
   "site_codes": [
    "SDSC",
    "SHAR"
   ],
   "launches": 100,
   "first_year": 1979,
   "last_year": 2026,
   "last5": 22,
   "y2026": 3
  },
  {
   "key": "HHAI",
   "name": "Huang Hai",
   "state": "China",
   "state_code": "CN",
   "lat": 34.9,
   "lon": 121.19,
   "site_codes": [
    "HHAI"
   ],
   "launches": 20,
   "first_year": 2019,
   "last_year": 2026,
   "last5": 15,
   "y2026": 3
  }
 ],
 "by_decade": [
  {
   "decade": "1950s",
   "Plesetsk": 0,
   "Baikonur": 8,
   "Cape Canaveral and Kennedy": 28,
   "Vandenberg": 8,
   "Kourou": 0,
   "Jiuquan": 0,
   "Xichang": 0,
   "Taiyuan": 0,
   "All others": 6,
   "total": 50
  },
  {
   "decade": "1960s",
   "Plesetsk": 108,
   "Baikonur": 239,
   "Cape Canaveral and Kennedy": 156,
   "Vandenberg": 327,
   "Kourou": 0,
   "Jiuquan": 0,
   "Xichang": 0,
   "Taiyuan": 0,
   "All others": 90,
   "total": 920
  },
  {
   "decade": "1970s",
   "Plesetsk": 615,
   "Baikonur": 249,
   "Cape Canaveral and Kennedy": 112,
   "Vandenberg": 136,
   "Kourou": 10,
   "Jiuquan": 13,
   "Xichang": 0,
   "Taiyuan": 0,
   "All others": 54,
   "total": 1189
  },
  {
   "decade": "1980s",
   "Plesetsk": 570,
   "Baikonur": 360,
   "Cape Canaveral and Kennedy": 92,
   "Vandenberg": 66,
   "Kourou": 32,
   "Jiuquan": 9,
   "Xichang": 5,
   "Taiyuan": 1,
   "All others": 44,
   "total": 1179
  },
  {
   "decade": "1990s",
   "Plesetsk": 213,
   "Baikonur": 217,
   "Cape Canaveral and Kennedy": 198,
   "Vandenberg": 68,
   "Kourou": 91,
   "Jiuquan": 7,
   "Xichang": 22,
   "Taiyuan": 10,
   "All others": 47,
   "total": 873
  },
  {
   "decade": "2000s",
   "Plesetsk": 63,
   "Baikonur": 189,
   "Cape Canaveral and Kennedy": 115,
   "Vandenberg": 49,
   "Kourou": 65,
   "Jiuquan": 18,
   "Xichang": 25,
   "Taiyuan": 21,
   "All others": 90,
   "total": 635
  },
  {
   "decade": "2010s",
   "Plesetsk": 63,
   "Baikonur": 176,
   "Cape Canaveral and Kennedy": 137,
   "Vandenberg": 41,
   "Kourou": 93,
   "Jiuquan": 75,
   "Xichang": 80,
   "Taiyuan": 50,
   "All others": 147,
   "total": 862
  },
  {
   "decade": "2020s",
   "Plesetsk": 54,
   "Baikonur": 56,
   "Cape Canaveral and Kennedy": 431,
   "Vandenberg": 230,
   "Kourou": 38,
   "Jiuquan": 176,
   "Xichang": 102,
   "Taiyuan": 80,
   "All others": 298,
   "total": 1465
  }
 ],
 "decade_ports": [
  "Plesetsk",
  "Baikonur",
  "Cape Canaveral and Kennedy",
  "Vandenberg",
  "Kourou",
  "Jiuquan",
  "Xichang",
  "Taiyuan"
 ],
 "latitude": [
  {
   "name": "Plesetsk",
   "abs_lat": 62.9,
   "rotation_kmh": 763,
   "share_of_orbit_speed_pct": 2.7,
   "launches": 1686,
   "state": "Soviet Union"
  },
  {
   "name": "Baikonur",
   "abs_lat": 46.0,
   "rotation_kmh": 1163,
   "share_of_orbit_speed_pct": 4.2,
   "launches": 1494,
   "state": "Russia"
  },
  {
   "name": "Cape Canaveral and Kennedy",
   "abs_lat": 28.5,
   "rotation_kmh": 1472,
   "share_of_orbit_speed_pct": 5.3,
   "launches": 1269,
   "state": "United States"
  },
  {
   "name": "Vandenberg",
   "abs_lat": 34.6,
   "rotation_kmh": 1378,
   "share_of_orbit_speed_pct": 4.9,
   "launches": 925,
   "state": "United States"
  },
  {
   "name": "Kourou",
   "abs_lat": 5.2,
   "rotation_kmh": 1667,
   "share_of_orbit_speed_pct": 6.0,
   "launches": 329,
   "state": "French Guiana"
  },
  {
   "name": "Jiuquan",
   "abs_lat": 41.3,
   "rotation_kmh": 1258,
   "share_of_orbit_speed_pct": 4.5,
   "launches": 298,
   "state": "China"
  },
  {
   "name": "Xichang",
   "abs_lat": 28.2,
   "rotation_kmh": 1475,
   "share_of_orbit_speed_pct": 5.3,
   "launches": 234,
   "state": "China"
  },
  {
   "name": "Taiyuan",
   "abs_lat": 37.5,
   "rotation_kmh": 1328,
   "share_of_orbit_speed_pct": 4.7,
   "launches": 162,
   "state": "China"
  },
  {
   "name": "Kapustin Yar",
   "abs_lat": 48.5,
   "rotation_kmh": 1109,
   "share_of_orbit_speed_pct": 4.0,
   "launches": 101,
   "state": "Soviet Union"
  },
  {
   "name": "Sriharikota",
   "abs_lat": 13.6,
   "rotation_kmh": 1627,
   "share_of_orbit_speed_pct": 5.8,
   "launches": 100,
   "state": "India"
  },
  {
   "name": "Tanegashima",
   "abs_lat": 30.4,
   "rotation_kmh": 1444,
   "share_of_orbit_speed_pct": 5.2,
   "launches": 95,
   "state": "Japan"
  },
  {
   "name": "Mahia",
   "abs_lat": 39.3,
   "rotation_kmh": 1296,
   "share_of_orbit_speed_pct": 4.6,
   "launches": 83,
   "state": "New Zealand"
  },
  {
   "name": "Wallops MARS",
   "abs_lat": 37.8,
   "rotation_kmh": 1322,
   "share_of_orbit_speed_pct": 4.7,
   "launches": 59,
   "state": "United States"
  },
  {
   "name": "Wenchang",
   "abs_lat": 19.6,
   "rotation_kmh": 1577,
   "share_of_orbit_speed_pct": 5.6,
   "launches": 47,
   "state": "China"
  }
 ],
 "rotation_curve": [
  {
   "lat": 0,
   "rotation_kmh": 1674
  },
  {
   "lat": 5,
   "rotation_kmh": 1668
  },
  {
   "lat": 10,
   "rotation_kmh": 1649
  },
  {
   "lat": 15,
   "rotation_kmh": 1617
  },
  {
   "lat": 20,
   "rotation_kmh": 1573
  },
  {
   "lat": 25,
   "rotation_kmh": 1517
  },
  {
   "lat": 30,
   "rotation_kmh": 1450
  },
  {
   "lat": 35,
   "rotation_kmh": 1372
  },
  {
   "lat": 40,
   "rotation_kmh": 1283
  },
  {
   "lat": 45,
   "rotation_kmh": 1184
  },
  {
   "lat": 50,
   "rotation_kmh": 1076
  },
  {
   "lat": 55,
   "rotation_kmh": 960
  },
  {
   "lat": 60,
   "rotation_kmh": 837
  },
  {
   "lat": 65,
   "rotation_kmh": 708
  },
  {
   "lat": 70,
   "rotation_kmh": 573
  },
  {
   "lat": 75,
   "rotation_kmh": 433
  },
  {
   "lat": 80,
   "rotation_kmh": 291
  }
 ],
 "soyuz_example": {
  "source": "ESA, Soyuz launch vehicle page",
  "url": "https://www.esa.int/Enabling_Support/Space_Transportation/Launch_vehicles/Soyuz",
  "kourou_gto_tonnes": 3.0,
  "baikonur_gto_tonnes": 1.7,
  "gain_pct": 76,
  "kourou_lat": 5.233,
  "baikonur_lat": 46.0,
  "kourou_rotation_kmh": 1667,
  "baikonur_rotation_kmh": 1163,
  "speed_difference_kmh": 504
 },
 "vandenberg_years": [
  {
   "year": "1958",
   "vandenberg": 0,
   "us_all": 23,
   "share_of_us_pct": 0.0
  },
  {
   "year": "1959",
   "vandenberg": 8,
   "us_all": 18,
   "share_of_us_pct": 44.4
  },
  {
   "year": "1960",
   "vandenberg": 12,
   "us_all": 28,
   "share_of_us_pct": 42.9
  },
  {
   "year": "1961",
   "vandenberg": 23,
   "us_all": 41,
   "share_of_us_pct": 56.1
  },
  {
   "year": "1962",
   "vandenberg": 38,
   "us_all": 55,
   "share_of_us_pct": 69.1
  },
  {
   "year": "1963",
   "vandenberg": 35,
   "us_all": 46,
   "share_of_us_pct": 76.1
  },
  {
   "year": "1964",
   "vandenberg": 42,
   "us_all": 60,
   "share_of_us_pct": 70.0
  },
  {
   "year": "1965",
   "vandenberg": 40,
   "us_all": 66,
   "share_of_us_pct": 60.6
  },
  {
   "year": "1966",
   "vandenberg": 45,
   "us_all": 71,
   "share_of_us_pct": 63.4
  },
  {
   "year": "1967",
   "vandenberg": 38,
   "us_all": 50,
   "share_of_us_pct": 76.0
  },
  {
   "year": "1968",
   "vandenberg": 32,
   "us_all": 45,
   "share_of_us_pct": 71.1
  },
  {
   "year": "1969",
   "vandenberg": 22,
   "us_all": 35,
   "share_of_us_pct": 62.9
  },
  {
   "year": "1970",
   "vandenberg": 17,
   "us_all": 28,
   "share_of_us_pct": 60.7
  },
  {
   "year": "1971",
   "vandenberg": 19,
   "us_all": 30,
   "share_of_us_pct": 63.3
  },
  {
   "year": "1972",
   "vandenberg": 21,
   "us_all": 29,
   "share_of_us_pct": 72.4
  },
  {
   "year": "1973",
   "vandenberg": 12,
   "us_all": 22,
   "share_of_us_pct": 54.5
  },
  {
   "year": "1974",
   "vandenberg": 13,
   "us_all": 22,
   "share_of_us_pct": 59.1
  },
  {
   "year": "1975",
   "vandenberg": 14,
   "us_all": 28,
   "share_of_us_pct": 50.0
  },
  {
   "year": "1976",
   "vandenberg": 13,
   "us_all": 25,
   "share_of_us_pct": 52.0
  },
  {
   "year": "1977",
   "vandenberg": 7,
   "us_all": 24,
   "share_of_us_pct": 29.2
  },
  {
   "year": "1978",
   "vandenberg": 14,
   "us_all": 30,
   "share_of_us_pct": 46.7
  },
  {
   "year": "1979",
   "vandenberg": 6,
   "us_all": 16,
   "share_of_us_pct": 37.5
  },
  {
   "year": "1980",
   "vandenberg": 9,
   "us_all": 15,
   "share_of_us_pct": 60.0
  },
  {
   "year": "1981",
   "vandenberg": 8,
   "us_all": 19,
   "share_of_us_pct": 42.1
  },
  {
   "year": "1982",
   "vandenberg": 5,
   "us_all": 18,
   "share_of_us_pct": 27.8
  },
  {
   "year": "1983",
   "vandenberg": 11,
   "us_all": 22,
   "share_of_us_pct": 50.0
  },
  {
   "year": "1984",
   "vandenberg": 10,
   "us_all": 22,
   "share_of_us_pct": 45.5
  },
  {
   "year": "1985",
   "vandenberg": 5,
   "us_all": 18,
   "share_of_us_pct": 27.8
  },
  {
   "year": "1986",
   "vandenberg": 4,
   "us_all": 9,
   "share_of_us_pct": 44.4
  },
  {
   "year": "1987",
   "vandenberg": 5,
   "us_all": 9,
   "share_of_us_pct": 55.6
  },
  {
   "year": "1988",
   "vandenberg": 7,
   "us_all": 11,
   "share_of_us_pct": 63.6
  },
  {
   "year": "1989",
   "vandenberg": 2,
   "us_all": 16,
   "share_of_us_pct": 12.5
  },
  {
   "year": "1990",
   "vandenberg": 3,
   "us_all": 26,
   "share_of_us_pct": 11.5
  },
  {
   "year": "1991",
   "vandenberg": 5,
   "us_all": 19,
   "share_of_us_pct": 26.3
  },
  {
   "year": "1992",
   "vandenberg": 4,
   "us_all": 27,
   "share_of_us_pct": 14.8
  },
  {
   "year": "1993",
   "vandenberg": 4,
   "us_all": 25,
   "share_of_us_pct": 16.0
  },
  {
   "year": "1994",
   "vandenberg": 5,
   "us_all": 25,
   "share_of_us_pct": 20.0
  },
  {
   "year": "1995",
   "vandenberg": 6,
   "us_all": 29,
   "share_of_us_pct": 20.7
  },
  {
   "year": "1996",
   "vandenberg": 8,
   "us_all": 30,
   "share_of_us_pct": 26.7
  },
  {
   "year": "1997",
   "vandenberg": 11,
   "us_all": 35,
   "share_of_us_pct": 31.4
  },
  {
   "year": "1998",
   "vandenberg": 11,
   "us_all": 33,
   "share_of_us_pct": 33.3
  },
  {
   "year": "1999",
   "vandenberg": 11,
   "us_all": 29,
   "share_of_us_pct": 37.9
  },
  {
   "year": "2000",
   "vandenberg": 8,
   "us_all": 27,
   "share_of_us_pct": 29.6
  },
  {
   "year": "2001",
   "vandenberg": 5,
   "us_all": 19,
   "share_of_us_pct": 26.3
  },
  {
   "year": "2002",
   "vandenberg": 3,
   "us_all": 16,
   "share_of_us_pct": 18.8
  },
  {
   "year": "2003",
   "vandenberg": 6,
   "us_all": 20,
   "share_of_us_pct": 30.0
  },
  {
   "year": "2004",
   "vandenberg": 3,
   "us_all": 15,
   "share_of_us_pct": 20.0
  },
  {
   "year": "2005",
   "vandenberg": 5,
   "us_all": 10,
   "share_of_us_pct": 50.0
  },
  {
   "year": "2006",
   "vandenberg": 6,
   "us_all": 15,
   "share_of_us_pct": 40.0
  },
  {
   "year": "2007",
   "vandenberg": 4,
   "us_all": 15,
   "share_of_us_pct": 26.7
  },
  {
   "year": "2008",
   "vandenberg": 4,
   "us_all": 11,
   "share_of_us_pct": 36.4
  },
  {
   "year": "2009",
   "vandenberg": 5,
   "us_all": 20,
   "share_of_us_pct": 25.0
  },
  {
   "year": "2010",
   "vandenberg": 3,
   "us_all": 14,
   "share_of_us_pct": 21.4
  },
  {
   "year": "2011",
   "vandenberg": 6,
   "us_all": 15,
   "share_of_us_pct": 40.0
  },
  {
   "year": "2012",
   "vandenberg": 2,
   "us_all": 12,
   "share_of_us_pct": 16.7
  },
  {
   "year": "2013",
   "vandenberg": 4,
   "us_all": 18,
   "share_of_us_pct": 22.2
  },
  {
   "year": "2014",
   "vandenberg": 2,
   "us_all": 21,
   "share_of_us_pct": 9.5
  },
  {
   "year": "2015",
   "vandenberg": 2,
   "us_all": 19,
   "share_of_us_pct": 10.5
  },
  {
   "year": "2016",
   "vandenberg": 2,
   "us_all": 20,
   "share_of_us_pct": 10.0
  },
  {
   "year": "2017",
   "vandenberg": 9,
   "us_all": 29,
   "share_of_us_pct": 31.0
  },
  {
   "year": "2018",
   "vandenberg": 8,
   "us_all": 27,
   "share_of_us_pct": 29.6
  },
  {
   "year": "2019",
   "vandenberg": 3,
   "us_all": 20,
   "share_of_us_pct": 15.0
  },
  {
   "year": "2020",
   "vandenberg": 1,
   "us_all": 35,
   "share_of_us_pct": 2.9
  },
  {
   "year": "2021",
   "vandenberg": 6,
   "us_all": 43,
   "share_of_us_pct": 14.0
  },
  {
   "year": "2022",
   "vandenberg": 16,
   "us_all": 75,
   "share_of_us_pct": 21.3
  },
  {
   "year": "2023",
   "vandenberg": 30,
   "us_all": 103,
   "share_of_us_pct": 29.1
  },
  {
   "year": "2024",
   "vandenberg": 47,
   "us_all": 140,
   "share_of_us_pct": 33.6
  },
  {
   "year": "2025",
   "vandenberg": 66,
   "us_all": 177,
   "share_of_us_pct": 37.3
  },
  {
   "year": "2026",
   "vandenberg": 64,
   "us_all": 124,
   "share_of_us_pct": 51.6
  }
 ],
 "official": {
  "nasa_launch_sites": {
   "url": "https://science.nasa.gov/learn/basics-of-space-flight/chapter14-1/",
   "text": "Sitting on the launch pad near the equator, it is already moving at a speed of over 1650 km per hour relative to Earth's center. This can be applied to the speed required to orbit the Earth (approximately 28,000 km per hour)."
  },
  "nasa_downrange": {
   "url": "https://science.nasa.gov/learn/basics-of-space-flight/chapter14-1/",
   "text": "The launch site must also have a clear pathway downrange so the launch vehicle will not fly over populated areas, in case of accidents. Launches from the east coast of the United States (the Kennedy Space Center at Cape Canaveral, Florida) are suitable only for low inclination orbits because major population centers underlie the trajectory required for high-inclination launches."
  },
  "nasa_vandenberg": {
   "url": "https://public.ksc.nasa.gov/lspeducation/launch-operations/",
   "text": "The launch site at Vandenberg Space Force Base in California is preferred for spacecraft requiring a north-south orbit and is also best for missions with a polar orbit destination."
  },
  "esa_soyuz": {
   "url": "https://www.esa.int/Enabling_Support/Space_Transportation/Launch_vehicles/Soyuz",
   "text": "Soyuz-2 had improved performance and carried up to 3 tonnes into geostationary transfer orbit, compared to the 1.7 tonnes that can be launched from Baikonur, in Kazakhstan."
  },
  "esa_spaceport": {
   "url": "https://www.esa.int/Enabling_Support/Space_Transportation/Europe_s_Spaceport",
   "text": "Situated 500 km north of the equator, rockets gain extra performance thanks to a 'slingshot effect' from the speed of Earth's rotation."
  }
 },
 "cross_check_with_launches_analysis": {
  "compared_years": 70,
  "differing_years": {
   "2026": 1
  },
  "note": "The launches analysis used the GCAT update of Oct 2, 2026; launches added since then appear only in 2026."
 },
 "layer": {
  "file": "data/space/launch_sites.json",
  "spaceports": 45,
  "bytes": 4136,
  "refresh": "python3 data/analyses/scripts/space_launch_sites.py"
 },
 "checks": {
  "spaceports_add_up": true,
  "decades_add_up": true,
  "last5_add_up": true,
  "equator_speed_kmh": 1674.4,
  "vandenberg_to_la_km": 226.1
 }
}