Hangar

Research tool, not investment advice. Contract values are not revenue. Every figure links to the government announcement it came from.

Methodology

Hangar turns the Department of War's daily contract announcements into a table of awards per company. This page explains where the numbers come from, what is and isn't counted, and what the data cannot tell you.

Source

Each business day around 5 p.m. Eastern, the Department of War publishes every contract worth $7.5 million or more at war.gov/News/Contracts, as plain paragraphs of text. War.gov blocks automated readers, and Hangar does not try to get around that. Instead it reads the copies saved by the Internet Archive, which usually appear within a day. Every award on this site links to both the official page and the archived copy it was read from.

So far: 680 daily announcements (2024-01-02 to 2026-11-06), 13,985 records.

How awards are counted

CategoryWhat it meansIn totals?
DefiniteA stated award amount for one company: a new contract, a modification or an order.Yes, as "definite"
PotentialA ceiling, maximum, estimate, or indefinite-delivery (IDIQ) contract: what the government could order. Often far more than is ever spent.Yes, separately, as "potential"
Shared poolOne amount split among several companies ("will compete for each order of the $X contract"). Each company's share is unknown.No (4,779 records)
RepeatThe same paragraph announced again on a later day.No (104)
CorrectionFixes an earlier announcement.No (245)
Needs reviewThe headline company or amount may be wrong: a typo in the source, no amount stated, or a single amount over $10 billion not yet confirmed by a person.No (246)

Contract value is not revenue. A contract is paid out over months or years, options may never be exercised, and IDIQ ceilings are upper limits. Use these numbers to see what was won and when, not to estimate a quarter's sales.

How the text is read

A program reads each paragraph by explicit rules, never by guessing: the company is the subject of "was / is being / has been awarded"; the amount is the first figure after it, or a figure in a fixed later phrasing such as "The total value of this contract is $X". When a rule doesn't apply cleanly, the field is left empty and the record is marked needs review instead of being filled in. Every rule is tested against real paragraphs from the source. The code and full dataset are open source.

How companies are matched to stocks

Announcements name the legal entity that signed the contract, often a subsidiary ("Sikorsky Aircraft Corp.", "Electric Boat"). A list of name rules maps these to the parent's ticker, with dates where ownership changed (for example, Aerojet Rocketdyne counts as L3Harris only from July 28, 2023). Joint ventures are never assigned to a ticker, because their value is split between owners in ways the announcement doesn't state. Rules marked "(verify)" come from general knowledge and are being checked against each parent's subsidiary list in its SEC 10-K filing.

All 99 name rules
RuleTickerStatusFromToEvidence
^lockheed martin\bLMTpubliccompany name
^sikorsky\bLMTpublicLMT 10-K Exhibit 21
^rtx\bRTXpubliccompany name
^raytheon\bRTXpublicRTX 10-K Exhibit 21
^pratt and whitney\bRTXpublicRTX 10-K Exhibit 21
^collins aerospace\bRTXpublicRTX 10-K Exhibit 21
^rockwell collins\bRTXpublicRTX 10-K Exhibit 21
^northr[ou]p grumman\bNOCpubliccompany name
^general dynamics\bGDpubliccompany name
^electric boat\bGDpublicGD 10-K Exhibit 21
^bath iron works\bGDpublicGD 10-K Exhibit 21
^national steel and shipbuilding\bGDpublicGD 10-K Exhibit 21
^gulfstream aerospace\bGDpublicGD 10-K Exhibit 21
^l3harris\bLHXpubliccompany name
^aerojet rocketdyne\bLHXpublic2023-07-28LHX 8-K (acquisition closed July 2023)
^l3 technologies\bLHXpublic2019-06-29LHX 10-K Exhibit 21 (verify)
^wescam\bLHXpublicLHX 10-K Exhibit 21 (verify)
^boeing\bBApubliccompany name
^insitu\bBApublicBA 10-K Exhibit 21
^aurora flight sciences\bBApublicBA 10-K Exhibit 21
^huntington ingalls\bHIIpubliccompany name
^hii\bHIIpubliccompany name
^newport news shipbuilding\bHIIpublicHII 10-K Exhibit 21
^ingalls shipbuilding\bHIIpublicHII 10-K Exhibit 21
^general electric\bGEpubliccompany name
^ge aerospace\bGEpubliccompany name
^ge aviation\bGEpubliccompany name
^transdigm\bTDGpubliccompany name
^data device\bTDGpublicTDG 10-K Exhibit 21 (verify)
^breeze eastern\bTDGpublicTDG 10-K Exhibit 21 (verify)
^whippany actuation\bTDGpublicTDG 10-K Exhibit 21 (verify)
^arkwin\bTDGpublicTDG 10-K Exhibit 21 (verify)
^aerocontrolex\bTDGpublicTDG 10-K Exhibit 21 (verify)
^adams rite aerospace\bTDGpublicTDG 10-K Exhibit 21 (verify)
^esterline\bTDGpublicTDG 10-K Exhibit 21 (verify)
^howmet\bHWMpubliccompany name
^kratos\bKTOSpubliccompany name
^textron\bTXTpubliccompany name
^bell textron\bTXTpubliccompany name
^leidos\bLDOSpubliccompany name
^booz allen hamilton\bBAHpubliccompany name
^science applications international\bSAICpubliccompany name
^caci\bCACIpubliccompany name
^parsons (government services|corp)\bPSNpubliccompany name
^kbr\bKBRpubliccompany name
^aerovironment\bAVAVpubliccompany name
^mercury (systems|mission systems)\bMRCYpubliccompany name
^curtiss wright\bCWpubliccompany name
^bwx\bBWXTpubliccompany name
^bwxt\bBWXTpubliccompany name
^oshkosh\bOSKpubliccompany name
^teledyne\bTDYpubliccompany name
^flir\bTDYpublic2021-05-14TDY 8-K (acquisition closed May 2021)
^heico\bHEIpubliccompany name
^moog\bMOG.Apubliccompany name
^hexcel\bHXLpubliccompany name
^v2x\bVVXpubliccompany name
^amentum\bAMTMpublic2024-09-27AMTM 8-K (merger with Jacobs CMS closed Sept 2024; verify)
^amentum\b—private2024-09-26
^leonardo drs\bDRSpublic2022-11-29company name
^rada technologies\bDRSpublic2022-11-29DRS 10-K Exhibit 21 (verify)
^drs (sustainment|network|naval|laurel|training|rada|systems|signal|daylight)\bDRSpublic2022-11-29DRS 10-K Exhibit 21 (verify)
^vertex aerospace\bVVXpublic2022-07-05VVX 10-K Exhibit 21 (verify)
^honeywell international\bHONpubliccompany name
^accenture federal services\bACNpublicACN 10-K Exhibit 21 (verify)
^cae (usa|inc)\bCAEpubliccompany name
^elbit systems of america\bESLTpubliccompany name
^palantir\bPLTRpubliccompany name
^fluor\bFLRpubliccompany name
^rocket lab\bRKLBpubliccompany name
^viasat\bVSATpubliccompany name
^ducommun\bDCOpubliccompany name
^woodward\bWWDpubliccompany name
^general atomics\b—private
^anduril\b—private
^(space exploration technologies|spacex)\b—private
^sierra nevada\b—private
^bechtel\b—private
^johns? hopkins\b—private
^peraton\b—private
^am general\b—private
^castelion\b—private
^impulse space\b—private
^torch technologies\b—private
^systems planning and analys[ie]s\b—private
^guidehouse\b—private
^deloitte\b—private
^ernst and young\b—private
^world wide technology\b—private
^charles stark draper\b—private
^bae systems\b—foreign_listed
^saab\b—foreign_listed
^rolls royce\b—foreign_listed
^thales\b—foreign_listed
^airbus\b—foreign_listed
^austal\b—foreign_listed
^serco\b—foreign_listed
^kongsberg\b—foreign_listed
^leonardo\b—foreign_listed

Backlog, revenue and materiality

A $500 million award is huge for Kratos and a rounding error for Lockheed Martin. To show that, each company page charts two figures from the company's own SEC filings, and each definite award is shown as a percentage of them.

Coverage by company
TickerFigureStatusTag (why)PeriodsGaps
LMTRPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-27
LMTrevenuereportedRevenues (latest fiscal year (to 2025-12-31); RevenueFromContractWithCustomerExcludingAssessedTax stops at 2019-12-31)7: 2019-12-31 to 2025-12-31
RTXRPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-30
RTXrevenuereportedRevenueFromContractWithCustomerExcludingAssessedTax (latest fiscal year (to 2025-12-31); Revenues stops at 2024-12-31)5: 2021-12-31 to 2025-12-31
NOCRPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-30
NOCrevenuereportedRevenues (only revenue tag reported)7: 2019-12-31 to 2025-12-31
GDRPOreported, with gapsRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)3: 2023-12-31 to 2025-12-31no XBRL value between 2023-12-31 and 2024-12-31; no XBRL value between 2024-12-31 and 2025-12-31; not tagged in the 10-Q filed 2026-04-29 or later
GDrevenuereportedRevenues (both tags cover the same fiscal years; the first-listed tag is used)7: 2019-12-31 to 2025-12-31
LHXRPOreported, with gapsRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)21: 2020-01-03 to 2026-07-03no XBRL value between 2020-01-03 and 2021-01-01; no XBRL value between 2021-01-01 and 2021-12-31; not tagged in the 10-Q filed 2026-10-29 or later
LHXrevenuereported, with gapsRevenueFromContractWithCustomerExcludingAssessedTax (only revenue tag reported)7: 2019-06-28 to 2025-01-03not tagged in the 10-K filed 2026-02-12 or later
BARPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-30
BArevenuereportedRevenues (latest fiscal year (to 2025-12-31); RevenueFromContractWithCustomerExcludingAssessedTax stops at 2019-12-31)7: 2019-12-31 to 2025-12-31
HIIRPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-30
HIIrevenuereportedRevenues (only revenue tag reported)7: 2019-12-31 to 2025-12-31
GERPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-30
GErevenuereportedRevenues (only revenue tag reported)7: 2019-12-31 to 2025-12-31
TDGRPOnot reported in XBRL
TDGrevenuereportedRevenues (latest fiscal year (to 2025-09-30); RevenueFromContractWithCustomerExcludingAssessedTax stops at 2024-09-30)7: 2019-09-30 to 2025-09-30
HWMRPOnot reported in XBRL
HWMrevenuereportedRevenueFromContractWithCustomerExcludingAssessedTax (only revenue tag reported)7: 2019-12-31 to 2025-12-31
KTOSRPOreportedRevenueRemainingPerformanceObligation (standard tag for remaining performance obligations)31: 2019-03-31 to 2026-09-27
KTOSrevenuereportedRevenueFromContractWithCustomerExcludingAssessedTax (only revenue tag reported)7: 2019-12-29 to 2025-12-28

Pitches and their timestamps

The pitches are opinions written by Hangar's author, separate from the data. A track record is only worth something if it can't be rewritten, so each pitch is locked three ways:

  1. Git history. Pitches are files in the public code repository, so GitHub records when each was pushed.
  2. Fingerprint. The first time the daily job sees a pitch, it records a SHA-256 fingerprint of the text and the date. Changing a single character changes the fingerprint; the site's tests then fail and the site stops updating until the text is put back. New thoughts can only be added as dated "Update" or "Closed" notes, each with its own fingerprint.
  3. Independent copy. Once a pitch page is live, the Internet Archive is asked to save it. Its dated copy is held by a third party.

A pitch's own date may be at most 3 days before it was first published, so it can't be backdated. Pitches show no stock returns (see why); each links to Yahoo Finance prices since the pitch date, and the "What happened since" section shows Hangar's own data after that date. A pitch is personal opinion, not investment advice, and states whether the author held the stock.

Missing days

37 of 716 business days have no announcement in the archive. These days are shown as missing, never as zero awards. The longest gap, October 1 to November 11, 2025, matches the federal government shutdown; announcements resume on November 12, 2025, the day it ended. That explanation is likely but has not been confirmed from an official source.

What this data can't tell you

Why there is no price data here

The free stock-price services we checked (Tiingo, Massive/Polygon, Alpha Vantage) license their free data for personal use only and do not allow showing it, or returns calculated from it, on a public website. Hangar follows those terms, so it shows no prices and no price reactions. Each award instead links to that stock's daily prices around the announcement date on Yahoo Finance, so you can look for yourself. Announcements are posted after the market closes, so the first trading day that can react is the next one.

The one exception is the pitches: an author may write into a pitch the prices they looked up themselves (an entry price, the prices behind a valuation, a price target), each with its date. Hangar's code never downloads a price.

Not investment advice

Hangar is a student research project. It reports what the government announced; it does not recommend buying or selling any security. Check the source before relying on any number.