Ads and analytics load only if you accept.Ads and analytics cookies load only if you accept. Reject and you get no ads at all. Essential cookies keep the site working.PolicyCookie Policy ·
Newsletter
Week in Space Data, every Friday.
Methodology v5 · published 2026-10-07
How the Space Score is computed
The Space Score is a 0 to 1000 snapshot of a space company's size and activity, relative to the other companies we track. It combines size (headcount, market value and revenue, 30%), U.S. federal space contracts (20%), equity raised (15%), momentum (15%) and, for launch companies, orbital launches (20%), so it leans heavily on size. It is descriptive: not a forecast, a rating or investment advice.
The Space Score is a 0–1000 composite computed from data SpaceNexus holds. No score, sub-score or adjustment is set by hand: the rules below are the code, and the values in the breakdown are what the code produced. The current figures were computed from inputs measured 2026-10-07 03:35 UTC.
This is version 5. Every version and what it changed is in the change log. Readings are compared only within the same version.
For every company, each metric below is read from our tables and classified as measured, missing (it applies, but we do not hold the data) or not applicable (it does not fit the business).
Each measured value becomes a percentile rank (0–100) among the companies measured on that metric: the lowest value scores 0, the highest 100, ties share the average of their positions. Because ranks ignore scale, no log transform or outlier cap is needed, and a single giant cannot compress everyone else. Two adjustments follow. Genuine zeros: on the metrics where zero means none at all (space-coded federal obligations and their share, equity raised in the window, launch attempts in the last 12 months), a zero scores 0 rather than sharing a tied middle position with every other zero, and space-coded obligations under the $250K de minimis floor count as zero. Small pools: when fewer than 30 companies are measured on a metric and they are under half of the companies it applies to, each percentile p is pulled toward the middle as (n × p + 10 × 50) ÷ (n + 10), where n is the number measured, so a thin sample cannot hand out a 0 or a 100. A pool that covers nearly every company the metric applies to (the launch record covers every launch provider) is a census, not a sample, and is not shrunk. A genuine zero stays at 0.
A pillar score is the average of its measured metrics. One exception: reported revenue can raise the Scale pillar but never lower it. Scale is the larger of the average of headcount and market value and the average of all three, because only about 30 companies report revenue and a penalty for reporting it would favour companies that disclose nothing.
The total is the weighted average of the pillars that apply to the company, times 10. Not-applicable pillars are dropped and the remaining weights re-normalised. An applicable pillar with no data counts at the roster median for that pillar: the median score of every scored company measured on it (today: Scale 43.8, Government space demand 0.0, Capital access 50.0, Momentum 50.0, Flight record 43.6). A gap is scored as the typical measured company: it helps a company that would have scored below the median on that pillar and costs one that would have scored above it. The median, not the mean, because Government space demand is split in two (most measured companies score 0, the rest 66 or more), so its mean describes no company. Ignoring the gap instead would credit the company with its own average, rewarding strength on the pillars we can see. A company with no measured pillar is not scored.
A company is ranked only with data in at least 2 pillars and at least 50% of its applicable weight backed by data. Otherwise it is scored and shown here, but left out of the leaderboard and the Top 25. Confidence is High at 90% coverage or more with three or more pillars, Medium for other ranked companies, and Insufficient data for unranked ones.
A company is ranked only when our data shows measurable space activity: space-coded federal obligations over three years of at least $100M; or at least $10M that is also at least 1% of all its federal obligations; or at least $250K (the de minimis floor) that is at least 10% of its federal obligations; or an orbital launch attempt; or space revenue in the company’s own SEC annual report (its latest 10-K, 20-F or 40-F on its own CIK, or before its first annual report a Form 10, S-1 or F-1 with audited annual statements, for a fiscal year that ended within the last 2 calendar years): a full-year revenue fact tagged with a business line (not a customer, counterparty, legal entity, acquired business or related party) whose label names space and nothing else (it contains the word space, or satellite, spacecraft, launch, orbital or lunar, and none of defense, aerospace, aviation, aircraft, airborne, missile, munition, security, cyber, military, naval, government, intelligence or industrial), taking the largest such line, of at least $100M, or at least $10M that is also at least 1% of the company’s total revenue, or at least $250K that is at least 10% of it, counted only after a second check that the stored figure matches the filing; or, for a company we have searched on USAspending, space-coded federal work counting verified subcontracts: its space-coded prime obligations plus subcontracts reported under space-coded prime awards to one of its registered UEIs (every reported action summed, exact duplicates dropped, a subcontract reported above its prime award’s total obligation discarded), against all its prime obligations plus all its subcontracts over three years, passing the same three thresholds, counted only after a second check confirms the subcontract totals, and only while both the confirmed totals and today’s totals pass; or a space-segment profile sector (every sector except general defense) without evidence to the contrary. Evidence to the contrary is $25M or more of federal obligations whose codes can tell space from other work, under 10% of it space-coded, and no launch: a company with that record fails the test whatever its sector. Research and development awards coded to national defense and bought by the Department of the Air Force (which includes the Space Force), or coded to general science and technology and bought by NASA, are left out of that test, because those codes do not say whether the work is space. Space revenue, subcontracts and launches are positive evidence that the test of evidence to the contrary never overrides; that test reads prime awards only. Companies that fail are scored and listed, but not ranked.
Ranking order: total, high first. Equal totals share a rank (shown as “=8”, and the next company takes the following position: 1, =2, =2, 4). Inside a tie, rows are listed by coverage (high first) and then name (A–Z); that orders the list, it is not a ranking.
Pillar weights sum to 100%. There are no other weights, bonuses or adjustments.
Because each pillar contributes 10 × weight × pillar score (or, with no data, its roster median) ÷ the applicable weight, a change in the total splits exactly into per-pillar changes (plus under a point of rounding). The weekly movers edition uses that split, and the stored input values, to say why each company moved.
Rank range. On the current Top 25, on company profiles and on /compare, a ranked company with a pillar we could not measure also shows the ranks that gap likely allows, for example “Rank 12 (likely between 9 and 15 given the pillars we have not measured)”. We recompute its total with each such pillar at the 10th, then the 90th, percentile of the companies measured on it, hold every other company at its published total, and report the ranks those two totals would take. Those are percentile cases with every other company held fixed, not hard bounds, so the rank is likely, not certain, to fall inside them. It is display only: the score, the rank and this methodology do not change, and archived editions show no range.
2. Pillars and metrics
Scale · 30% · How large is the business today?
The best-covered pillar and the hardest to game: headcount, reported revenue and market value are held for most of the roster. It carries the largest weight for that reason.
Headcount
Measures
Employees on the company profile: the exact count when one is recorded, otherwise the midpoint of the recorded size band, or for an open-ended band such as “10,000+” its lower bound (never an extrapolation).
Formula
Percentile rank of the employee count.
Window
Latest value on the profile.
Source
SpaceNexus company profile, entered from filings, company disclosures and public sources. We do not yet record the source or date of each value.
Applies when
Applies to every company. Missing when the profile holds neither a count nor a band.
Coverage now
226 measured · 193 missing · 0 not applicable
Market value
Measures
Listed companies: market capitalisation in U.S. dollars. Private companies: the post-money valuation of the most recent funding round that disclosed one. A valuation typed onto a company profile is never used: it has no date or source on record.
Formula
Percentile rank of the dollar value.
Window
U.S. listings: the market cap from the daily quote sync, counted only when the quote is no more than 30 days old. Listings outside the U.S.: the market cap in the listing currency from the quote at the time of computation, converted to U.S. dollars at that day’s exchange rate; the note on each reading gives the currency, the rate and both dates. Private companies: a disclosed post-money valuation from a round no more than 36 months old, as of the round date shown.
Source
Yahoo Finance quotes and exchange rates, and SpaceNexus funding-round records
Applies when
Not applicable to subsidiaries and joint ventures, even when a value is stored on their profile (it belongs to the parent, or is an undated estimate), unless their own shares are listed; not applicable to a listed profile that names a parent company, because the ticker on it is the parent’s; and not applicable to state-owned or non-profit organisations with no dated round. A ticker is counted for one profile at most: if two profiles could both claim it, neither is scored on it. Missing for a listed company with no current quote or exchange rate, and for a private company whose only valuation is undated or from a round more than 36 months old.
3. Tier labels
Elite (900–1000): Averages at or above the 90th percentile of the roster across the pillars that apply to it (a pillar without data counts at the roster median).
Leader (750–899): Averages between the 75th and 90th percentile of the roster on the measured inputs.
Contender (600–749): Averages between the 60th and 75th percentile of the roster on the measured inputs.
Emerging (400–599): Averages between the 40th and 60th percentile of the roster: the middle of the pack.
Early Stage (200–399): Averages between the 20th and 40th percentile of the roster on the measured inputs.
Developing (0–199): Averages below the 20th percentile of the roster on the measured inputs, usually small or very early companies.
4. Who is scored
Every company profile we track with status active or pre-revenue (419 scored today, 147 ranked). Government agencies (profile sector: agency) are not companies and are not scored.
Held back from scoring
ball-aerospace: Acquired by BAE Systems in February 2024 and now operates as BAE Systems Space & Mission Systems. Its profile and federal-award search still use the retired name, so its inputs no longer describe the business.
aerojet-rocketdyne: A subsidiary of L3Harris Technologies, which acquired it in 2023. L3Harris is ranked, so ranking Aerojet Rocketdyne separately would count the same business twice.
terran-orbital: A subsidiary of Lockheed Martin, which acquired it in 2024. Lockheed Martin is ranked, so ranking Terran Orbital separately would count the same business twice.
spaceflight-inc: Acquired by Firefly Aerospace in 2023. Its profile still describes the independent company, so its inputs no longer describe the business.
lumen-orbit: Lumen Orbit renamed itself Starcloud. Starcloud has its own profile, so this one is a duplicate and is not ranked.
astra-space: Taken private in 2024. The valuation on file dates from its time as a listed company and no longer describes the business, so it is held out of the ranking until its record is refreshed.
outpost-space: A duplicate of the Outpost Technologies profile: the same company, with the same website (outpost.space). Outpost Technologies holds its funding and federal-award records, so this second profile is not ranked.
roscosmos: Russia’s state space agency: a state corporation that holds the government’s authority and budget for the national space programme. Government agencies are not ranked (DLR and MBRSC are held out for the same reason), and its own enterprises, such as RSC Energia and Khrunichev, are scored on their own profiles.
Display-name corrections (label only; the score is unaffected)
amazon-kuiper shown as Amazon Leo: Amazon renamed Project Kuiper to Amazon Leo in 2025.
Launch-provider attribution aliases
Launch Library 2 agency names that differ from our profile names. Every other provider is matched on its exact name.
5. Update cadence and editions
Inputs are measured and scores computed at most once a day (a scheduled run at 02:10 UTC). Every page shows when the inputs were measured, never when the page was rendered.
A daily reading of every company is stored with the methodology version, forming the Space Score history.
The quarterly Top 25 edition is named for the quarter in which its inputs were measured. It updates daily during the quarter and freezes when the quarter ends. Rank movement is shown only against a previous edition computed under the same methodology version.
Any change to a metric, weight, window or rule bumps the methodology version and is recorded in the change log below. Since version 4 a test enforces this: it fingerprints the rulebook and fails if the rules change while the version number does not.
Change log
Version 5 · 2026-10-07 · SEC space revenue and verified subcontracts as space-activity evidence
Space-activity gate: space revenue a company reports in its own SEC annual report now counts as evidence of space activity. We read the latest 10-K, 20-F or 40-F filed on the company’s own CIK (before its first annual report, a Form 10, S-1 or F-1 with audited annual statements) for a fiscal year that ended within the last two calendar years, and take the largest full-year revenue line tagged with a business line whose label names space and nothing else. That line is tested against total revenue with the gate’s existing thresholds: $100M at any share, $10M that is also 1% of revenue, or $250K that is also 10%. A line labelled “Defense and Space” or “Space and Defense” does not count, because it cannot tell space revenue from defense revenue. A subsidiary cannot use its parent’s filing.
An SEC entry counts only after a second check that the stored figure matches the filing, and every entry, confirmed or pending, is listed in the evidence register on this page with its filing, accession number and business line. Nobody can request an entry or override the label rule: the same scan and the same rule decide for every company with a CIK, and an edge case is a methodology change, never a decision about one company.
Space-activity gate: verified federal subcontracts now count beside prime awards. Subcontracts reported to USAspending.gov whose recipient is registered under one of the company’s UEIs (never a name match), under a prime award the government codes as space work, are added to the company’s space-coded prime obligations; all its subcontracts are added to all its prime obligations; and the same thresholds apply over three years. Every reported action counts, modifications and deobligations included, after exact duplicates are dropped, and a subcontract reported above its prime award’s total obligation is discarded as a reporting error. Like SEC entries, a company’s subcontract totals count only after a second check confirms them, and only while both the confirmed totals and today’s totals pass; until then they are listed in the evidence register as pending. The Government pillar still scores prime awards only.
6. Known limitations
Said plainly, from today’s figures
Government space demand: the roster median is 0, because most companies we have searched hold no space-coded federal awards. So a U.S. company we have not matched in USAspending (not searched, or similar names our matcher did not attribute) is treated like the typical company: one with no federal space work. If it does hold federal space contracts, its score understates them.
Momentum, for most companies measured on it, is the 12-month federal space trend alone. We track the job boards of 52 companies, and today 3 of them have a measurable like-for-like 90-day change in open roles (enough history on one counting basis and enough open roles); so of the 40 companies measured on Momentum, 37 are measured on the federal trend alone. One award arriving or ending can swing that trend, so Momentum is noisy.
A company listed outside the U.S. usually has Government not applicable (no U.S. federal award record) and Capital not applicable (it is listed), so unless a second pillar is measured it is scored but not ranked. Today that is 18 companies: AAC Clyde Space, APT Satellite, Creotech Instruments, Dassault Aviation, Elbit Systems, Eutelsat, Gilat Satellite Networks, Hanwha Systems, ispace inc., Korea Aerospace Industries, MDA Space, OHB SE, Safran, SES, Space42, Synspective, Telebras, Telesat.
Companies that pass the space-activity gate but are not ranked on thin data, today, with data in fewer than 2 pillars: AAC Clyde Space, Aerospacelab, AIRMO, Antaris, Applied Atomics, APT Satellite, Arabsat, Arinna, Asteroid Mining Corporation, Astrolab, Astronstone, AstroX, Aule Space, Bellatrix Aerospace, BioOrbit, Blackswan Space, Bradford Space, Cailabs, Canada Rocket Company, Capsule Corporation, Carbon Mapper, Cascade Space, Charter Space, ClearSpace SA, Constellation Space, Constellr, Copenhagen Suborbitals, Cosmoleap, Creotech Instruments, Dassault Aviation, Deep Space Energy, deltaVision, Dhruva Space, Digantara, Dispatch, ElevationSpace, Embratel Star One, ENPULSION, EtherealX, Eutelsat, Exotrail, Flexell Space, Flexitech Aerospace, FOSSA Systems, Foundational, GHGSat, Gilat Satellite Networks, GITAI, HEO, Hydrosat, Infostellar, Insera Solution, InspeCity, Interstellar Technologies, iSpace (China), ispace inc., ISPTech, JAOPS, Jiuzhou Yunjian, Kepler Aerospace, Kirkhill, Korea Aerospace Industries, Lanteris Space Systems, Leanspace, LEAP Space, LegendSpace, Letara, Lonestar Data Holdings, Longshot Space, Manastu Space, MDA Space, NanoAvionics, NewOrbit, OHB SE, Open Cosmos, Optera, OrbitAID Aerospace, Orbital Lasers, Orbital Matter, Orienspace, ORiS, Outlier Space, Oxford Space Systems, Pale Blue, Pangea Aerospace, PAVE Space, Perigee Aerospace, PierSight Space, Pulsar Fusion, Pustar Aerospace, QOSMIC, Quadsat, Ramon.Space, Reditus Space, Reflex Aerospace, Ripple Aerospace, Rocket Factory Augsburg, RSC Energia, RUAG Space, Safran, Sateliot, Satlabs Space Systems, Satlyt, Satrec Initiative, SatSure, SatVu, SES, SkyFi, Skykraft, Skynopy, Skyrora, Southern Launch, Space BD, Space Pioneer (Tianbing Technology), Space42, Spaceflux, SpaceIL, SpacePharma, Spacety, SSC, Stellar Alpina, SUiCTE, SWISSto12, Synspective, TakeMe2Space, TASI Group, Telebras, TelePIX, Telesat, Telespazio, Thales Alenia Space, The Compression Company, The Exploration Company, TiSPACE, U-Space, Ubotica, Unastella, UNIVITY, Ursa Space Systems, Virgin Galactic, Vyoma, Warpspace, Wyvern, Xoople, Zenk Space, Zero 2 Infinity; with under 50% of their applicable weight backed by data: Aethero, Agile Space Industries, Antares Industries, Array Labs, Astro Digital, Beyond Reach Labs, Citra Space, Diffraqtion, Endeavor Optical Networks, Infinite Orbits, Juno Propulsion, Kapta Space, Lux Aeterna, Magdrive, mPower Technology, Northwood Space, NovaWurks, Observable Space, Orbital, Orbite, OroraTech, Quindar, Ravee Optics, Samara Aerospace, Skybound Medtech, Sophia Space, Xona Space Systems, Zeno Power; with no measured pillar at all, so “Not scored”: Aldoria, Archangel Lightworks, ArcSpace, ArkEdge Space, Aspect Aerospace, Astradyne, ATMOS Space Cargo, Basalt, BlueStar Optical Domain, Chang Guang Satellite Technology, Chuanyuezhe, Circuits Integrated Hellas, DCUBED, Deep Blue Aerospace, EDGX, Emposat, ExLabs, GalaxySpace, Geespace, HeXing Optical Link, Hongqing Technology, Indra Space, Innovative Space Carrier, ISISPACE, JG Starcom, JP Donovan, Kick Space Technologies, LC60, LiveEO, Look Up Space, MaiaSpace, Mantis Space, Marlan Space, Maverick Space Systems, MinoSpace, Miwei Technology, Nayuta Space, Neo Space Group, NordSpace, Reaction Dynamics, Sanyark Space, Satleo Labs, SEOPS, Solafune, Space Epoch, SpaceSail (Yuanxin Satellite), Spark Space, StarRF, Starry Development, Sybilla Technologies, TerraByte AI, TerraSpark, Tianyu Xingkong, Trusted Space, Unseenlabs, Venturi Space, Weiguang Qihang, Xingce Weilai, Xingchen Daohe, Xingweixun, Xingyi Lianxin, Xiphera, Yiwei Yuhang, Z-Trak Space, Zenno Astronautics. Each one’s breakdown says which inputs are missing and why.
Evidence register
The space-activity gate’s SEC and subcontract evidence, entry by entry. Space revenue is read from the XBRL data of each company’s own annual report by the same scan for every company with a CIK; an entry counts only once a second check has confirmed that the stored figure matches the filing. Subcontracts are read from USAspending.gov by registered UEI only, and a company’s subcontract totals count only once a second check has confirmed them, and only while they still match. Nothing here changes a score: it decides only whether a company can be ranked.
Space revenue in SEC annual reports
Astra Space (Pending confirmation, not counted)
Business line “Space Products”: space revenue $3.9M of $3.9M total revenue, fiscal year ending 2023-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001814329, accession 0000950170-24-045209; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with srt:ProductOrServiceAxis = astr:SpaceProductsMember.
Comtech Telecommunications (Pending confirmation, not counted)
Business line “Satellite And Space Segment Communications”: space revenue $269.3M of $499.5M total revenue, fiscal year ending 2025-07-31. Meets the gate’s thresholds.
Form 10-K, CIK 0000023197, accession 0000023197-25-000080; fact us-gaap:Revenues with us-gaap:StatementBusinessSegmentsAxis = cmtl:SatelliteAndSpaceSegmentCommunicationsMember.
EchoStar (Pending confirmation, not counted)
Business line “Broadband and Satellite Services”: space revenue $1,456.1M of $15,005.0M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001415404, accession ; fact us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax with us-gaap:StatementBusinessSegmentsAxis = sats:BroadbandAndSatelliteServicesMember.
7. The exact queries
These are the statements the scorer runs against our PostgreSQL database, verbatim. Funding rounds are read one by one and our code then keeps only equity rounds, using the same test as the funding tracker. Federal awards are read one by one and our code then classifies each as space-coded or not, using the rule in the Government space demand metric above.
Company inputs
select
c.slug, c.name, c.sector, c.country, c."isPublic" as "isPublic", c.ticker, c.exchange,
c."ownershipType" as "ownershipType", c."parentCompany" as "parentCompany",
c."employeeCount"::float8 as "employeeCount", c."employeeRange" as "employeeRange",
c."marketCap"::float8 as "marketCap", c."lastVerified" as "lastVerified",
c.valuation::float8 as "profileValuation",
coalesce(rv.rows, '[]'::json) as "reportedRevenueRows",
pv.val as "roundValuation", pv.date as "roundValuationDate",
(fac.status = 'searched') as "federalSearched",
coalesce(fac."recipientsSeen", 0) as "federalRecipientsSeen",
coalesce(fac."recipientsMatched", 0) as "federalRecipientsMatched",
coalesce(fr.kinds, '[]'::json) as "fundingRoundKinds",
js_start."activeJobs" as "openRolesStart", js_start.date as "openRolesStartDate",
js_end."activeJobs" as "openRolesLatest", js_end.date as "openRolesLatestDate",
jrs.since as "openRolesBasisSince"
from "CompanyProfile" c
left join "FederalAwardCoverage" fac on fac."companyId" = c.id
left join lateral (
-- every company-reported annual figure on record; the loader picks one per
-- fiscal year with selectReportedRevenue() (src/lib/space-score-data.ts):
-- duplicates, conflicting figures and rows of unknown currency are settled
-- there by a published rule, never by the order Postgres returns them in
select json_agg(json_build_object(
'id', r.id, 'year', r.year, 'revenue', r.revenue::float8, 'source', r.source,
'notes', left(coalesce(r.notes, ''), 200), 'createdAt', r."createdAt"
) order by r.year desc, r.id) as rows
from "RevenueEstimate" r
where r."companyId" = c.id and r.revenue is not null and r.revenue > 0
and r."confidenceLevel" = 'reported' and r.quarter is null
) rv on true
left join lateral (
select f."postValuation"::float8 as val, f.date
from "FundingRound" f
where f."companyId" = c.id and f."postValuation" is not null and f."postValuation" > 0
and (f.source is null or f.source <> 'self_reported' or f."reviewStatus" = 'editor-approved') and coalesce(f."reviewStatus", '') not in ('self-reported-pending', 'self-reported-rejected')
order by f.date desc limit 1
) pv on true
left join lateral (
-- every published round's kind, at any date: the loader counts the rounds
-- that pass countsTowardCapitalRaised() (equity only), and that count
-- decides whether the Capital pillar applies; the capital SUM comes from
-- SPACE_SCORE_FUNDING_SQL
select json_agg(json_build_object('roundType', f."roundType", 'seriesLabel', f."seriesLabel")) as kinds
from "FundingRound" f where f."companyId" = c.id
and (f.source is null or f.source <> 'self_reported' or f."reviewStatus" = 'editor-approved') and coalesce(f."reviewStatus", '') not in ('self-reported-pending', 'self-reported-rejected')
) fr on true
left join lateral (
-- the latest change to the basis the company's roles are counted on: the
-- space-roles rule applied, a new job board joining a series already under
-- way, or the snapshot's source label changing (HIRING_BASIS_SINCE_SQL in
-- src/lib/jobs/hiring-basis-sql.ts, the twin of hiringBasisChanges()); the
-- hiring window restarts on that day, so a board joining is never growth
select greatest(
-- 1. rule-changed
(select max(l."createdAt")::date from "DataRefreshLog" l
where l.module = 'jobs-coverage'
and l.details like '%"kind":"relevance-changed"%'
and l.details like '%"companyProfileSlug":"' || c.slug || '"%'),
-- 2. board-joined: a board whose first posting came after the series began
(select max(b.first_seen::date + 1) from (
select min(j."createdAt") as first_seen from "SpaceJobPosting" j
where j."companyProfileId" = c.id
and j.source in ('greenhouse', 'lever', 'ashby', 'workday', 'clearcompany', 'pinpoint', 'bamboohr', 'rippling', 'usajobs')
and j."paidAt" is null and j."postedByUserId" is null
group by j.source
) b
where b.first_seen::date > (select min(s0.date) from "CompanyJobSnapshot" s0 where s0."companyProfileId" = c.id)),
-- 3. source-label-changed
(select max(x.date) from (
select s1.date, s1.source,
lag(s1.source) over (order by s1.date) as prev,
row_number() over (order by s1.date) as rn
from "CompanyJobSnapshot" s1 where s1."companyProfileId" = c.id
) x
where x.rn > 1 and x.source is distinct from x.prev)
) as since
) jrs on true
left join lateral (
select s."activeJobs", s.date from "CompanyJobSnapshot" s
where s."companyProfileId" = c.id and s.date >= (now() - interval '90 days')::date
and s.date >= coalesce(jrs.since, date '1900-01-01')
order by s.date asc limit 1
) js_start on true
left join lateral (
select s."activeJobs", s.date from "CompanyJobSnapshot" s
where s."companyProfileId" = c.id
order by s.date desc limit 1
) js_end on true
where c.status in ('active', 'pre-revenue')
order by c.slug
8. Every company’s breakdown
Pillar values are 0–100; “no data” counts at that pillar’s roster median; “n/a” is dropped; a company with no measured pillar shows “Not scored”. Choose a company for every metric’s raw value, percentile and the reason any input is missing.
Emposat · Not scored (no measured pillar) · not ranked · Insufficient data · 0% of applicable weight backed by data
Not ranked: Data in 0 pillars; at least 2 are needed to rank.
Every input behind Emposat’s Space Score
Pillar (weight)
Metric
Value
Percentile
Status / note
Scale (30%)
No data: counts at the roster median, 43.8
Headcount
–
–
Missing: No employee count or size band on the profile.
Market value
–
–
Missing: Private, and no valuation has been disclosed.
Reported revenue
–
–
Missing: No company-reported revenue figure.
Government space demand (20%)
Not applicable: dropped
Space-coded federal obligations (3 years)
This is not investment advice. The Space Score is a descriptive composite, not a forecast or a recommendation. Found a wrong input? Tell us and we correct the underlying record, never the score.
Coverage now
78 measured · 305 missing · 36 not applicable
Reported revenue
Measures
The most recent annual revenue the company itself reported (10-K XBRL facts or an annual report), in U.S. dollars. Estimates are never used. One figure per fiscal year: when our records hold more than one and they disagree, the figure backed by an SEC filing accession number is used. The one exception is a quarter read as a year: when the filed figure is more than three times above or below the prior year’s filed figure, and the other figure is within three times of the filed figures for the years on both sides, the other figure is used. Rows entered by hand from annual reports record no filing accession number and no currency; for a company outside the U.S. such a row is not used, because its currency is not known.
Formula
Percentile rank of the dollar value. Corroborating: it can raise the Scale pillar but never lower it. Scale is the average of headcount and market value, or the average of all three when revenue’s percentile is higher. Only about 30 companies report revenue, nearly all of them large listed groups, so a smaller company’s revenue ranks low among them; without this rule, publishing revenue would leave it below an identical company that publishes nothing.
Window
Most recent fiscal year, no older than two calendar years before the computation date.
Missing whenever there is no reported figure, which is normal for private companies. A profile that does not own its listing (a subsidiary or business unit carrying its parent’s ticker) does not use SEC-filed revenue, which is the parent’s.
Coverage now
29 measured · 390 missing · 0 not applicable
Government space demand · 20% · How much SPACE work is the U.S. government buying from it?
Federal obligations are money actually committed by a customer, published award by award on USAspending.gov. Only awards the government itself codes as space work count, so a diversified contractor cannot rank here on IT, munitions or services. Weighted below Scale because it only sees U.S. federal buyers.
Space-coded federal obligations (3 years)
Measures
Total obligated dollars on prime federal awards (contracts and assistance) whose base obligation date falls in the window and which are coded by the government itself as space work: a Product and Service Code in group 18 (space vehicles) or AR (space R&D), or code 1555 (space vehicles) or V126 (space transportation/launch), or one of the service forms of the space-vehicle codes (W018, J018, K018, L018, N018, H118, H218, H318, H918: leasing, maintenance and repair, modification, technical representative, installation, quality control, testing and inspection services for space vehicles); or NAICS 927110 (space research and technology) or 517410 (satellite telecommunications); or, for grants, which carry no codes, an assistance-listing programme title containing the word “space”. NAICS 336414/336415/336419 (“guided missile and space vehicle” manufacturing) is deliberately excluded because it mixes missiles with spacecraft. Indefinite-delivery vehicles are excluded because their orders are counted individually. Known gap: since fiscal 2021 the government codes research and development by budget function rather than by subject, and only civil space flight has a code of its own (AR). Space Force and other military space R&D is coded as national defense R&D (codes beginning AC), and NASA codes most of its small-business research awards as general science and technology R&D (codes beginning AJ). Nothing in those codes says whether the work is space, so it is not counted here, and space startups funded mainly by R&D awards, such as LeoLabs and Katalyst Space, read lower than their space work would justify. The ranking gate does not treat such awards as evidence against space activity when the buyer is one whose R&D is mostly space: national defense R&D bought by the Department of the Air Force, which includes the Space Force, and general science R&D bought by NASA. The same codes from any other buyer (the Navy, the Army, DARPA and others) still count as non-space work.
Formula
Percentile rank of the dollar total. A total under the $250K de minimis floor counts as zero (the amount is still shown), and a zero takes percentile 0 rather than sharing a tied middle position with every other zero: about two thirds of searched companies hold no space-coded awards, so before v4 a single dollar lifted a company from the 33rd to the 66th percentile.
Capital access · 15% · Is private capital still backing it?
Recent capital raised is investors voting with money. Applies to private companies; listed and state-owned companies raise through channels our round records do not capture, so they are not scored on it.
Capital raised (24 months)
Measures
Sum of disclosed amounts across equity funding rounds dated in the window: priced rounds of any stage, convertible notes, bridges and extensions. Debt and credit facilities, grants, acquisitions, tender offers and secondary sales, IPOs and SPAC mergers are not counted. Undisclosed round sizes add nothing: they are never guessed. A round a company reported about itself counts only after an editor approves it.
Formula
Percentile rank of the dollar total. A company with a counted round on record but none in the window has a genuine $0, which takes percentile 0. A company that raised in the window but whose rounds there state no amount is missing, not $0: it raised an unknown sum. When only some rounds in the window state an amount, only those are added and the reading says so.
Window
Trailing 24 months.
Source
SpaceNexus funding-round records (SEC Form D filings, company announcements, cited press). Most rounds carry a link to their source; a few older records have no source recorded.
Applies when
Applies to private companies with at least one counted round on record: an equity round of the kinds above, at any date. Not applicable to listed companies (public-market raises are not recorded as rounds) or to state-owned, subsidiary and non-profit organisations. Missing for a private company with no counted round on record, including one whose only rounds are debt, grants, owner funding or other rounds that do not count: those say nothing about whether investors are backing it.
Coverage now
200 measured · 121 missing · 98 not applicable
Momentum · 15% · Is it growing right now?
Direction rather than size: the change in open roles on the company’s own job board and the change in space-coded federal obligations year on year. The share price is not used (removed in v4): it measures investor sentiment, not the company’s activity.
Open-role change (90 days)
Measures
Percentage change in open roles on the company’s own applicant-tracking board between the earliest daily snapshot inside the window and the latest.
Formula
Percentile rank of (latest − earliest) ÷ max(earliest, 1).
Window
Trailing 90 days; the two snapshots must be at least 28 days apart and one of them must show at least 5 open roles. Only like-for-like counts are compared: the window restarts on the day of the change whenever the basis of a company’s count changes, which is when the space-roles rule is applied to it, when a further job board of its starts syncing (the day after that board’s first posting, so a board joining is never read as growth), or when its snapshots change source. The input is then missing until 28 days of history exist on the new basis.
Missing for companies whose job board we do not track, or whose tracked history is too short. For defense primes and other mixed employers (Northrop Grumman, Boeing, RTX, KBR, Leidos, Leonardo, Anduril, Hermeus, Hadrian), only space roles count: a role counts when its title names space work. That rule applies from September 26, 2026 (the date each employer switched is listed on /jobs#coverage); for an employer already tracked before then, the input restarts on its switch date and is missing until 28 days of history exist on the new basis.
Coverage now
3 measured · 416 missing · 0 not applicable
Space-coded federal trend
Measures
Space-coded obligations in the last 12 months compared with the 12 months before.
Formula
Percentile rank of ln((last 12m + $250k) ÷ (prior 12m + $250k)); the $250k floor stops a first small award reading as infinite growth.
Flight record · 20% · For launch providers: how often does it fly, and does it succeed?
The most direct execution evidence we hold. Applies only to companies with an orbital launch attempt in our launch record; for everyone else the pillar is not applicable and its weight is redistributed.
Orbital launch attempts (12 months)
Measures
Orbital launches that lifted off (successes and failures; scrubs excluded) attributed to the company as launch provider. Suborbital flights are excluded: New Shepard, HASTE (Rocket Lab’s suborbital Electron variant, recognised by its launch name because the launch record files it under Electron), SpaceShipTwo, and Starship test flights before Flight 14 on 2026-09-28, which SpaceX flew on suborbital trajectories.
Formula
Percentile rank of the count, among launch providers. A provider with no attempt in the window has a genuine zero, which takes percentile 0.
Applies to companies with at least one orbital launch attempt since our launch record begins (1 January 2025).
Coverage now
22 measured · 0 missing · 397 not applicable
Launch success rate (12 months)
Measures
Share of those attempts that fully succeeded, smoothed so a single flight cannot read as a perfect or zero record. A partial failure (Launch Library 2: the vehicle flew but the mission did not fully succeed) counts as an attempt and not as a success.
Formula
Percentile rank of (successes + 1) ÷ (attempts + 2).
Thresholds used above: hiring change needs 28 days between snapshots and 5+ open roles; the federal trend uses a $250K floor; space-coded obligations under $250K count as zero; metrics measured for fewer than 30 companies, and for under half of those they apply to, are shrunk toward 50 with a weight of 10.
“China Aerospace Science and Technology Corporation” → casc: LL2 long name for CASC.
“ExPace” → casic: CASIC commercial-launch subsidiary (Kuaizhou); attributed to CASIC.
“Russian Federal Space Agency (ROSCOSMOS)” → roscosmos: LL2 name for Roscosmos.
“Northrop Grumman Space Systems” → northrop-grumman: Northrop Grumman launch business (Minotaur, Antares).
“Orienspace Technology” → orienspace: LL2 long name.
“Space Pioneer” → space-pioneer: Profile name adds the legal name (Tianbing Technology).
Both are additional ways to pass the gate, never ways to fail it, and the test of evidence to the contrary does not override them: no company ranked under version 4 is unranked by version 5. No score total changes, because the gate decides only who is ranked, not anyone’s score.
The current quarter’s Top 25 table built under version 4 is kept on record under its own key before version 5 first writes the quarter; the closed Q3 2026 edition is not touched. Movement is shown only between readings of the same version, so the first version 5 weekly edition compares against nothing until a version 5 reading at least five days old exists.
Version 4 · 2026-10-01 · Missing data, zeros, small pools and the share price
A pillar that applies but has no data counts at the roster median of that pillar (the median over every scored company measured on it), not at a fixed 50. Most searched companies hold no space-coded federal awards, so the typical measured company sat well below 50 and a gap was a reward: on the last version 2 board, companies we had never searched on USAspending averaged 525 against 481 for searched ones. We use the median, not the mean, because the Government pillar is split in two: most measured companies score exactly 0 and the rest score 66 or more, so its mean (about 25) describes no company. Its median is 0, so a company we could not search is treated like the typical searched company, which holds no federal space work.
Reported revenue can raise the Scale pillar but never lower it. Only about 30 companies report revenue, mostly large listed groups, so a smaller company’s revenue ranked low among them: on the last version 2 board, 28 of the 30 scored lower for reporting it (AST SpaceMobile by 98 points, Planet by 60, Rocket Lab by 46) than they would have by publishing nothing.
Space-coded federal obligations under $250K over three years count as zero, for both the dollar total and the space share, and a genuine zero (no space-coded awards, no equity raised in the window, no launch in the last 12 months) takes percentile 0 instead of a tied middle position. Before, $1 of space-coded awards lifted a company from the 33rd to the 66th percentile, and a $5K all-space award book read as a 100% space share.
Version 3 · 2026-09-30 · Audit corrections to the inputs
Launch records count orbital attempts only: New Shepard, HASTE (Rocket Lab’s suborbital Electron variant), SpaceShipTwo and Starship test flights before Flight 14 are suborbital and no longer count.
Capital raised counts equity rounds only, using the funding tracker’s own test: debt and credit facilities, grants, owner funding, acquisitions, secondaries and public-market deals are excluded, and only an equity round on record makes the Capital pillar apply.
Self-reported funding rounds count only after an editor approves them, and paid or user-posted job listings never reach the hiring input.
The government rule recognises the service forms of the space-vehicle product codes (W018, J018, K018, L018, N018, H118, H218, H318, H918).
Subsidiaries ranked beside their parents, and duplicate or stale profiles, are held out of the ranking with the reason shown.
Version 2 · 2026-09-23 · Computed from sourced data
The hand-maintained table was replaced by a computed composite: five weighted pillars, each metric a percentile rank among the companies measured on it, an applicable pillar with no data counted at 50, ranking only with data in at least 2 pillars and half the applicable weight, and a space-activity gate.
Changed on 2026-09-25 without a version bump, which our own rule forbids: a partial launch failure stopped counting as a success, and the hiring window started restarting on the day the way a company’s roles are counted changed. Readings before and after 25 September are both labelled version 2. The rulebook test added in version 4 exists to stop this happening again.
Version 1 · until 2026-09-23 · Hand-maintained table (retired)
Scores were a table of hand-set numbers. Readings made under it carry methodology version 1 in our history and are never compared with later readings.
Scale measures the whole company. A diversified group (Lockheed Martin, Honeywell, Safran) is scored on its full headcount, revenue and market value, not on its space business alone, because none of our sources splits them out. Government space demand counts space-coded awards only, and the space-activity gate keeps companies with no measurable space activity out of the ranking: those are the corrections for this.
The space-activity gate can only use what we measure. A company in the general defense sector whose space work we cannot see (not searched on USAspending, headquartered outside the U.S., or with its awards under a legal name we do not attribute) is scored but not ranked, even when it is a real space business. Since version 5 the gate also reads space revenue in the company’s own SEC annual report and verified subcontracts, but a company that reports space only inside a combined line such as “Defense and Space”, files no SEC annual report (most companies listed outside the U.S.), or has no registered UEI on file still cannot show its space work that way. The fix is better input data, not an exception for the company.
A company can pass the space-activity gate and still go unranked on thin data: ranking needs data in at least 2 pillars and at least 50% of its applicable weight backed by data. A joint venture or subsidiary has no market value or venture rounds of its own, and a company headquartered outside the U.S. with no U.S. federal award has Government not applicable, so such a company can be left with data in only one pillar. Which companies this affects today is listed above, from the current figures.
Firefly Aerospace (Pending confirmation, not counted)
Business line “Spacecraft Solutions Revenue”: space revenue $131.2M of $159.9M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001860160, accession 0001193125-26-116309; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with srt:ProductOrServiceAxis = fly:SpacecraftSolutionsRevenueMember.
Gilat Satellite Networks (Pending confirmation, not counted)
Business line “Satellite Networks”: space revenue $281.4M of $451.7M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 20-F, CIK 0000897322, accession 0001178913-26-000929; fact us-gaap:Revenues with us-gaap:StatementBusinessSegmentsAxis = gilt:SatelliteNetworksMember.
Lockheed Martin (Pending confirmation, not counted)
Business line “Space”: space revenue $13,029.0M of $75,048.0M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0000936468, accession 0001628280-26-004195; fact us-gaap:Revenues with us-gaap:StatementBusinessSegmentsAxis = lmt:SpaceMember.
Mercury Systems (Confirmed)
Business line “Space”: space revenue $78.0M of $983.6M total revenue, fiscal year ending 2026-07-03. Meets the gate’s thresholds.
Form 10-K, CIK 0001049521, accession 0001049521-26-000045; fact us-gaap:Revenues with srt:ProductOrServiceAxis = mrcy:SpaceMember; confirmed 2026-10-07.
Moog Inc. (Confirmed)
Business line “Space”: space revenue $474.5M of $3,860.6M total revenue, fiscal year ending 2025-09-27. Meets the gate’s thresholds.
Form 10-K, CIK 0000067887, accession 0001628280-25-054103; fact us-gaap:Revenues with us-gaap:EquitySecuritiesByIndustryAxis = mog:SpaceMember; confirmed 2026-10-07.
Northrop Grumman (Pending confirmation, not counted)
Business line “Space Systems”: space revenue $10,771.0M of $41,954.0M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001133421, accession 0001133421-26-000003; fact us-gaap:Revenues with us-gaap:StatementBusinessSegmentsAxis = noc:SpaceSystemsMember.
Redwire (Pending confirmation, not counted)
Business line “Space Segment”: space revenue $209.8M of $335.4M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001819810, accession 0001819810-26-000029; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with us-gaap:StatementBusinessSegmentsAxis = rdw:SpaceSegmentMember.
Rocket Lab (Pending confirmation, not counted)
Business line “Space Systems”: space revenue $402.8M of $601.8M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001819994, accession 0001819994-26-000013; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with srt:ProductOrServiceAxis = rklb:SpaceSystemsMember.
Satellogic (Pending confirmation, not counted)
Business line “Space Systems”: space revenue $1.7M of $17.7M total revenue, fiscal year ending 2025-12-31. Below the gate’s thresholds.
Form 10-K, CIK 0001874315, accession 0001874315-26-000013; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with srt:ProductOrServiceAxis = satl:SpaceSystemsMember.
Sidus Space (Pending confirmation, not counted)
Business line “Space Related Products And Services Including Technology Hosting”: space revenue $0.3M of $3.4M total revenue, fiscal year ending 2025-12-31. Below the gate’s thresholds.
Form 10-K, CIK 0001879726, accession 0001493152-26-014547; fact us-gaap:Revenues with srt:ProductOrServiceAxis = SIDU:SpaceRelatedProductsAndServicesIncludingTechnologyHostingMember.
Viasat (Pending confirmation, not counted)
Business line “Space And Mission Systems Products”: space revenue $330.9M of $4,640.3M total revenue, fiscal year ending 2026-03-31. Meets the gate’s thresholds.
Form 10-K, CIK 0000797721, accession 0001193125-26-248290; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with srt:ProductOrServiceAxis = vsat:SpaceAndMissionSystemsProductsMember.
Voyager Space (Pending confirmation, not counted)
Business line “Space Solutions”: space revenue $47.6M of $166.4M total revenue, fiscal year ending 2025-12-31. Meets the gate’s thresholds.
Form 10-K, CIK 0001788060, accession 0001628280-26-016543; fact us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax with us-gaap:StatementBusinessSegmentsAxis = voyg:SpaceSolutionsMember.
Subcontracts under space-coded prime awards (three years)
No subcontract under a space-coded prime award has been recorded yet.
Launch record
select
e.agency,
count(*)::int as "attemptsOnRecord",
count(*) filter (where e."launchDate" >= now() - interval '365 days')::int as "attempts12m",
-- Full successes only: a partial failure is stored as completed with the LL2
-- label in feedStatus, and is an attempt, not a success (the same test as
-- isPartialFailureLabel in src/lib/launch-outcome.ts; 2026-09-25).
count(*) filter (where e."launchDate" >= now() - interval '365 days' and e.status = 'completed' and coalesce(e."feedStatus", '') !~* 'partial')::int as "successes12m"
from "SpaceEvent" e
where e.status in ('completed', 'failed')
and e.rocket is not null
-- orbital attempts only: no suborbital orbit, no suborbital-only vehicle,
-- no Starship test flight before the first orbital one
and coalesce(e."orbitType", '') !~* '^sub'
and e.rocket !~* '^(new shepard|haste|spaceshiptwo|spaceship two)'
-- HASTE flies under rocket 'Electron': read the vehicle from the name too
and trim(split_part(coalesce(e.name, ''), '|', 1)) !~* '^(new shepard|haste|spaceshiptwo|spaceship two)'
and not (e.rocket ~* '^starship' and e."launchDate" < '2026-09-28')
and e."launchDate" >= '2025-01-01'
and e."launchDate" <= now()
group by e.agency
Funding rounds
select
c.slug,
f.amount::float8 as amount,
f.date,
f."roundType" as "roundType",
f."seriesLabel" as "seriesLabel",
c."isPublic" as "isPublic"
from "FundingRound" f
join "CompanyProfile" c on c.id = f."companyId"
where (f.source is null or f.source <> 'self_reported' or f."reviewStatus" = 'editor-approved') and coalesce(f."reviewStatus", '') not in ('self-reported-pending', 'self-reported-rejected')
and f.date >= now() - interval '24 months'
and c.status in ('active', 'pre-revenue')
Federal awards
select
c.slug,
a.amount::float8 as amount,
a."actionDate" as "actionDate",
a."pscCode" as "pscCode",
a."naicsCode" as "naicsCode",
a."cfdaProgramTitle" as "cfdaProgramTitle",
a."awardingAgency" as "awardingAgency",
a."awardingSubAgency" as "awardingSubAgency"
from "FederalAward" a
join "CompanyProfile" c on c.id = a."companyId"
where a."countsTowardTotals"
and a.amount is not null
and a."actionDate" >= now() - interval '3 years'
and a."actionDate" <= now()
and c.status in ('active', 'pre-revenue')
SEC space revenue (gate only)
select
c.slug,
s.cik,
s.form,
s.accession,
s."fiscalYearEnd" as "fiscalYearEnd",
s."memberLabel" as "memberLabel",
s."spaceRevenue"::float8 as "spaceRevenue",
s."totalRevenue"::float8 as "totalRevenue",
s.currency,
s."fxRate"::float8 as "fxRate",
s."fxDate" as "fxDate"
from "SecSpaceRevenue" s
join "CompanyProfile" c on c.id = s."companyId"
where s."confirmedAt" is not null
and c.cik is not null
and ltrim(c.cik, '0') = ltrim(s.cik, '0')
and c.status in ('active', 'pre-revenue')
order by c.slug, s."fiscalYearEnd" desc
Federal subcontracts (gate only)
select distinct
c.slug,
s."subawardNumber" as "subawardNumber",
s."primeAwardId" as "primeAwardId",
s."actionDate" as "actionDate",
s.amount::float8 as amount,
s."primePsc" as "primePsc",
s."primeNaics" as "primeNaics",
s."primeCfdaTitle" as "primeCfdaTitle",
s."primeTotalObligation"::float8 as "primeTotalObligation"
from "FederalSubaward" s
join "CompanyProfile" c on c.id = s."companyId"
where s."actionDate" >= now() - interval '3 years'
and s."actionDate" <= now()
and (s."subRecipientUei" = c."samUei" or s."subRecipientUei" = any(c."samUeiAliases"))
and c.status in ('active', 'pre-revenue')
Confirmed subcontract totals (gate only)
select
c.slug,
f."spaceTotal"::float8 as "spaceTotal",
f."allTotal"::float8 as "allTotal",
f."confirmedAt" as "confirmedAt"
from "FederalSubawardConfirmation" f
join "CompanyProfile" c on c.id = f."companyId"
where c.status in ('active', 'pre-revenue')
–
–
Not applicable: Headquartered outside the U.S. with no U.S. federal award attributed to it.
Space-coded share of federal obligations
–
–
Not applicable: Headquartered outside the U.S. with no U.S. federal award attributed to it.
Capital access (15%)
No data: counts at the roster median, 50.0
Capital raised (24 months)
–
–
Missing: Raised an equity round in the last 24 months, but no amount was disclosed, so the total is unknown (never guessed, and not counted as zero).
Momentum (15%)
No data: counts at the roster median, 50.0
Open-role change (90 days)
–
–
Missing: Job board not tracked.
Space-coded federal trend
–
–
Not applicable: Headquartered outside the U.S. with no U.S. federal award attributed to it.
Flight record (20%)
Not applicable: dropped
Orbital launch attempts (12 months)
–
–
Not applicable: No orbital launch attempt in our record.
Launch success rate (12 months)
–
–
Not applicable: No orbital launch attempt in our record.
Space Score pillar values for every scored company
The Space Score ranks companies relative to each other on public data we hold. It describes; it does not rate, forecast or recommend. It is not a credit rating and not investment advice. Full disclaimer
Missing when we have not searched USAspending for the company (for example, a name too generic to match safely), and also when the search found recipients with similar names but our matcher attributed none of them: a zero there would not be trustworthy. Not applicable to a company headquartered outside the United States with no U.S. federal award attributed to it, whether or not it was searched and whether or not the search found similar names: the pillar measures U.S. federal demand.
Coverage now
179 measured · 25 missing · 215 not applicable
Space-coded share of federal obligations
Measures
Space-coded obligations divided by all of the company’s federal obligations in the same window: how much of its government business is space.
Formula
Percentile rank of the share (0–1). When space-coded obligations are under the $250K de minimis floor the share counts as zero, so a tiny all-space award book (for example $5K of $5K) no longer reads as 100%. A zero takes percentile 0.
Applies when the company has any visible federal obligations in the window; otherwise not applicable (a share of nothing). Missing under the same rule as above.
Not applicable when neither 12-month period reaches the $250K de minimis floor the Government metrics use (no federal space business to trend: a first $203K award against nothing is not growth), and to a company headquartered outside the United States with no U.S. federal award attributed to it. Missing when a U.S. company has not been searched.
Coverage now
39 measured · 20 missing · 360 not applicable
Missing for a launch provider with no attempt in the last 365 days (its attempt count still scores zero).
Coverage now
20 measured · 2 missing · 397 not applicable
A metric measured for fewer than 30 companies, when those are under half of the companies it applies to, has each percentile p shrunk toward 50, as (n × p + 10 × 50) ÷ (n + 10), so a pool of 14 tracked job boards can no longer hand out a 0 or a 100. The launch metrics cover every launch provider, so they are not shrunk.
The 90-day share-price return is no longer an input. It measured investor sentiment rather than the company’s activity, and for many listed companies it was the only Momentum input. A company with no other Momentum data now has the pillar missing, counted at the roster median. A consequence: 11 listed companies, mostly outside the U.S., no longer have enough measured pillars to rank (on the 30 September inputs: Safran, Korea Aerospace Industries, MDA Space, SES, Eutelsat, Telesat, OHB, Synspective, AAC Clyde Space, Gilat Satellite Networks and Virgin Galactic). They are still scored and listed, with the reason shown.
A company with no measured pillar has no score at all and shows “Not scored”, rather than a score of 0 with the lowest tier.
An equity round in the last 24 months whose size was not disclosed is no longer read as $0 raised. When a company raised in the window but no round there states an amount, Capital raised is missing; when some rounds state an amount, only those are added, and the reading says so.
Space-activity gate: a company now needs space-coded federal obligations of $100M at any share of its federal work, or $10M that is also at least 1% of its federal obligations, or at least $250K (the de minimis floor) that is also at least 10% of them (before, $10M was enough at any share). Research and development awards coded AC (national defense) and bought by the Department of the Air Force, which includes the Space Force, or coded AJ (general science and technology) and bought by NASA, say nothing about whether the work is space, so they are no longer counted as evidence against space activity. The $250K de minimis floor applies to the space-coded figures.
Market value: subsidiaries and joint ventures have no market value of their own, and neither does a listed profile that names a parent company, because the ticker on it is the parent’s: such a profile is not scored on that ticker (Hanwha Systems, whose own shares trade separately from its parent’s, is the one listed exception). When two profiles that each claim a ticker as their own share it, neither is scored on it, so a ticker never counts twice. Market caps of companies listed outside the U.S. are converted to U.S. dollars at that day’s exchange rate. Undated valuations, and valuations from rounds more than 36 months old, are not used.
Reported revenue: one figure per fiscal year, taking a figure backed by a filing first, so duplicate or conflicting rows can no longer decide the value by the order the database returns them.
Roster: the Outpost Space profile (a duplicate of Outpost Technologies) and Roscosmos (Russia’s state space agency) are not ranked, each with the reason shown.
The 12-month federal space trend is not applicable when neither 12-month period reaches the $250K de minimis floor, the same threshold the Government pillar uses: a first $203K award against nothing no longer reads as strong growth while the Government pillar counts it as zero.
Equal totals share a rank (shown as =8) everywhere, including the weekly edition, the quarterly Top 25 and this page; coverage and then name only order the rows inside a tie.
Headcount from an open-ended size band (such as 10,000+) is the band’s lower bound, and the reading says so.
A test now fingerprints the whole rulebook (metrics, weights, rules, thresholds, code lists, roster exclusions, aliases, input rules, queries and the scorer’s output on a fixed test roster) and fails unless a change ships with a new version number and an entry on this list.
Government space demand scores U.S. federal prime awards only: no other governments, no subcontracts (since version 5 the space-activity gate reads verified subcontracts, but the pillar does not score them, and subcontract reporting is known to be incomplete), and no classified work (much NRO and some Space Force spending never appears on USAspending.gov). Space-coding follows the government’s own codes and is a conservative floor: space work filed under a non-space code (for example the mixed “guided missile and space vehicle” NAICS codes) is not counted.
Our award matcher prefers a missed award to a wrong one. Companies whose names are too generic to search safely are not searched, and some companies’ federal work sits under legal names we do not yet attribute (for example Raytheon’s and Collins Aerospace’s awards appear under RTX and Rockwell Collins entities). Where the search saw similar-named recipients but attributed none, the metric is treated as missing rather than zero; where it saw none at all, a zero is recorded.
Headcount and undated profile valuations are maintained on company profiles and can lag the company by months. Reported revenue exists only for companies that publish it, which excludes most private companies.
The hiring metric covers only companies whose applicant-tracking boards we snapshot daily, and needs 28 days of like-for-like history and 5 or more open roles, so for most companies it is missing (today’s counts are above).
The launch record begins on 2025-01-01. Launches are attributed to the provider named by Launch Library 2; subsidiary brands are attributed to the parent we profile (listed below). Blank-provider launches are not attributed.
A subsidiary or joint venture, or a listed profile that names a parent company, has no market value of its own and Capital raised does not apply to it: the ticker on such a profile is the parent’s (Collins Aerospace and Raytheon both carry RTX), so neither is scored on RTX’s market value. Its Scale rests on its own headcount and on revenue it reports itself, never on the parent’s SEC filings.
A pillar with no data counts at the roster median, which is an estimate, not a measurement: for a company with a gap, part of its total describes the typical measured company rather than the company itself. The gap helps a company that would have scored below the median on that pillar and costs one that would have scored above it. The Data column and every breakdown show how much of each score is measured, and ranking requires at least half of the applicable weight to be measured.
Reported revenue can only raise the Scale pillar, never lower it. That favours the roughly 30 companies that report revenue over those that do not; the alternative we replaced, a penalty for reporting, was worse.
Small-pool shrinkage switches off at 30 companies measured, or when they reach half of the companies the metric applies to, so a pool crossing either line loses it at once: the extremes of that metric jump by 500 ÷ (n + 10) percentile points, where n is the number measured (12.8 for a pool growing from 29 to 30, 20.8 for a 14-company pool reaching half coverage, more for smaller pools).
Every metric is a percentile rank within the tracked roster, so a company’s score can move when other companies’ data changes, and it says nothing about companies we do not profile.
Not used, because we do not hold them reliably: satellite fleet counts (our satellite-asset table is empty), patents, news mentions (company tagging covers too few companies), and insider or 5%-holder filings (held for listed companies only, and not a measure of the business).
The score is descriptive. It is not a forecast, a credit rating or investment advice.