CoolFace
Datasetpublic

juliensimon/spacecraft-database

Spacecraft Database Credit: NASA/JPL-Caltech Part of a dataset collection on Hugging Face. Dataset description Comprehensive database of spacecraft sourced from Wikidata — satellites, probes, space stations, and more — spanning the entire history of the Space Age. From the earliest Sputnik satellites to modern mega-constellations and deep space probes, this dataset catalogs spacecraft across seven decades of spaceflight. Each record includes launch and… See the full description on the dataset page: https://huggingface.co/datasets/juliensimon/spacecraft-database.

sourceHugging Facecc0-1.0updated 2d agoView on Hugging Face
0likes67downloads
Dataset Card

Spacecraft Database

<div align="center"> <img src="banner.jpg" alt="Voyager spacecraft artist concept" width="400"> <p><em>Credit: NASA/JPL-Caltech</em></p> </div>

Part of a [dataset collection](https://huggingface.co/collections/juliensimon/orbital-mechanics-datasets-69c24caca4ab3934c9856994) on Hugging Face.

Dataset description

Comprehensive database of spacecraft sourced from Wikidata — satellites, probes, space stations, and more — spanning the entire history of the Space Age.

From the earliest Sputnik satellites to modern mega-constellations and deep space probes, this dataset catalogs spacecraft across seven decades of spaceflight. Each record includes launch and decommission dates, operating agency, manufacturer, orbital regime, mass, and associated mission where available.

The dataset draws on Wikidata's structured knowledge base using the spacecraft class (Q40218) and all its subclasses. It is maintained by the WikiProject Spaceflight community and updated as new spacecraft are launched and documented.

This dataset is suitable for tabular classification tasks.

Schema

ColumnTypeDescriptionSampleNull %
wikidata_idstrWikidata entity ID (e.g. 'Q48371'); stable URI used for cross-referencing enrichment sourcesQ808110.0%
namestringSpacecraft name as recorded in Wikidata (e.g. 'Hubble Space Telescope', 'Sputnik 1', 'Starlink-1234')Sputnik 10.0%
launch_datestrISO 8601 UTC launch date in YYYY-MM-DD format; null if the spacecraft has not yet launched or date is unknown1957-10-0416.1%
operatorstringAgency or organization operating the spacecraft (e.g. 'NASA', 'ESA', 'SpaceX', 'Roscosmos'); null if not recorded in WikidataSoviet Union68.5%
manufacturerstringOrganization that built the spacecraft bus (e.g. 'Boeing', 'Lockheed Martin', 'Airbus'); null if not recordedS.P. Korolev Rocket and Space Corpora...73.0%
orbit_typestringOrbital regime (e.g. 'LEO', 'GEO', 'heliocentric', 'lunar orbit', 'deep space'); null if orbital data not available in Wikidatalow Earth orbit82.7%
mass_kgFloat64Total spacecraft mass in kilograms at launch; null for ~90% of entries where Wikidata has no mass recorded83.679.3%
missionstringAssociated mission name linked in Wikidata (e.g. 'Apollo program', 'Mars Science Laboratory'); null if no mission link recordedSputnik programme79.9%
launch_yearfloat64Year of launch derived from launchdate; null if launchdate is null; useful for time-series aggregation1957.016.1%

Quick stats

  • 8,898 total spacecraft in the database
  • 7,461 spacecraft with a known launch date
  • 1,838 spacecraft with a recorded mass
  • 472 distinct operators
  • 28 distinct orbital regimes
  • Date range: 1957-10-04 to 2039-01-01
  • Top operators: National Aeronautics and Space Administration (279), United States Air Force (156), Roscosmos State Corporation (129), Indian Space Research Organisation (114), European Space Agency (92)
  • Top orbital regimes: geostationary orbit (596), low Earth orbit (400), Sun-synchronous orbit (245), medium Earth orbit (70), polar orbit (43)

Usage

python
from datasets import load_dataset

ds = load_dataset("juliensimon/spacecraft-database", split="train")
df = ds.to_pandas()
python
from datasets import load_dataset

ds = load_dataset("juliensimon/spacecraft-database", split="train")
df = ds.to_pandas()

# Spacecraft by operator
print(df["operator"].value_counts().head(10))

# Spacecraft by orbital regime
print(df["orbit_type"].value_counts().head(10))

# Launches per year
import matplotlib.pyplot as plt
df["launch_year"].dropna().astype(int).value_counts().sort_index().plot(kind="bar", figsize=(14, 4))
plt.xlabel("Year")
plt.ylabel("Spacecraft Launched")
plt.title("Spacecraft Launches Per Year")
plt.tight_layout()
plt.show()

# Heaviest spacecraft
heaviest = df.nlargest(10, "mass_kg")[["name", "operator", "mass_kg", "orbit_type"]]
print(heaviest)

Data source

https://www.wikidata.org/

Related datasets

If you find this dataset useful, please consider giving it a like on Hugging Face. It helps others discover it.

About the author

Created by Julien Simon — AI Operating Partner at Fortino Capital. Part of the Space Datasets collection.

Citation

bibtex
@dataset{spacecraft_database,
  title = {Spacecraft Database},
  author = {Simon, Julien},
  year = {2026},
  url = {https://huggingface.co/datasets/juliensimon/spacecraft-database},
  publisher = {Hugging Face},
  note = {Derived from Wikidata contributors, https://www.wikidata.org/}
}

License

CC0-1.0