GovTribe

Defense budget data

How to read DoD budget programs and justification narratives in GovTribe: thousands of dollars, budget books versus fiscal years, funding kinds, and one program across books.

GovTribe's defense budget data comes from the Department of Defense President's Budget books for FY2025 through FY2027: the Comptroller's summary exhibits and the services' and defense agencies' justification books. Four rules decide whether an answer built from it is right: money is in thousands of dollars, a budget book is not a fiscal year, funding kinds must not be added together, and one program spans several books. This guide applies to defense budget programs and defense budget justifications.

Quick model

ConceptMeaningWhere it appears
Budget programOne budget line, such as a program element or procurement line item, across every book that carried it.Search defense budget programs
Justification narrativeThe R-2, P-40, OP-5, or DD-1391 a book prints for one program, or the Drug Interdiction publication.Search defense budget justifications
Budget bookOne President's Budget cycle, identified by its publication_fiscal_year, such as 2027 for the FY2027 budget.Both data types
Fiscal yearThe year an amount is for. One book prints several.fiscal_year in funding rows and on narratives
Disposition kindWhat an amount is: actuals, enacted, request, a total, or a military construction stage.disposition_kind in funding_trend and the funding_thousands filter

Money is in thousands of dollars

Every amount is in thousands of US dollars, exactly as the books print it. 100000 means $100 million, and 1000000 means $1 billion. This applies to every field, filter, sort, and aggregation whose name ends in _thousands, to funding_trend and request_by_cycle, and to the camelCase *Thousands keys inside a justification's funding table. Multiply by 1,000 before reporting an amount in dollars.

Program funding leaves out line items the books mark Non-Add or not in total obligation authority (TOA). Those memo lines repeat money already counted in another line, so funding_trend, request_by_cycle, the funding_thousands filter and sort, and the funding aggregations all skip them.

Budget books and fiscal years

Each President's Budget book prints several fiscal years for each program. The FY2027 book, for example, prints FY2025 actuals, the FY2026 enacted level, and the FY2027 request. So the same fiscal year appears in more than one book, often with a different amount and kind in each.

QuestionUse
What did a book request for its own budget year?request_by_cycle, or funding_thousands with only publication_fiscal_year.
How did the request for one program change from book to book?request_by_cycle across its publication_fiscal_years.
What was enacted for a past year?funding_thousands with the later book, that fiscal_year, and disposition_kind: "Enacted".
Which narratives were published in one book?publication_fiscal_years on Search defense budget justifications.

A book can carry a program without printing a request for it, for example when it shows only prior-year actuals and the enacted level. request_by_cycle then has no entry for that book. Check funding_trend before reporting a zero request.

Funding kinds

funding_trend holds one row per book, fiscal year, and disposition kind, and the funding_thousands filter selects one of them. disposition_labels keeps the book's own column wording, such as Discretionary Request or PB Request with CR Amounts.

KindMeaning
ActualsPrior-year actual obligations.
EnactedThe appropriation enacted for a year already funded.
RequestThe amount requested in the book. For a military construction project, which prints no request, its Appropriation row counts as the request in request_by_cycle and the funding_thousands default.
ReconciliationFunding from a budget reconciliation act, printed in its own column.
TotalThe year's roll-up of the other kinds.
Authorization, Authorization of Appropriation, Appropriation, Total Obligation AuthorityThe stages a military construction project's funding passes through. A construction project prints these instead of a request.

Never add rows of different kinds together. A year's Total already includes its request, enacted, and reconciliation amounts, so adding Total to them counts the money twice, and the construction stages describe the same money at different steps. When you total across programs, use the funding_thousands_by_service, funding_thousands_by_account, or funding_thousands_by_code_type aggregations: they sum the single row the funding_thousands filter selects. With the default Request kind, that total includes construction projects through their appropriation. Pass disposition_kind: "Appropriation" to select only appropriation rows.

One program across books

A defense budget program is one record across every book that carried it, listed in publication_fiscal_years. Its code identifies it the way the books do.

Code typeProgramCode format
PERDT&E program element, from the R-1The program element, such as 0603176C.
BLIProcurement line item, from the P-1{account}-{budget sub-activity}-{line item}, such as 2031A-01-9670A00005.
SAGO&M or revolving-fund sub-activity group, from the O-1 or RF-1{account}-{budget activity}-{budget sub-activity}-{sub-activity group}.
BSAMilitary personnel budget sub-activity, from the M-1{account}-{budget activity}-{budget sub-activity}.
CPMilitary construction project, from the C-1The construction project number.

Each book's justification for a program is a separate narrative record that links back to the program. Request defense_budget_justifications on a program to list them, or filter narratives by defense_budget_program_ids. Programs also link to the major defense programs they fund, by the Major Defense Acquisition Program code the books print or by the program's weapon-system designator.

Agencies and services

service is the military department column a book files a record under: Army, Navy, MarineCorps, AirForce, SpaceForce, or DefenseWide. Defense-Wide justification narratives link to their defense agency, such as MDA, DARPA, or SOCOM, through federal_agency, so resolve the agency with Search federal agencies and filter narratives with federal_agency_ids. Programs from the summary exhibits carry the military department or the Department of Defense instead.

Coverage and limits

  • GovTribe covers the FY2025, FY2026, and FY2027 President's Budget books and adds a new set once per budget cycle.
  • The books are not hosted publicly in GovTribe. Cite a narrative with its source: the book title, the file name, and where in the file the narrative starts. govtribe_url is null on both data types because they have no GovTribe page yet.
  • DD-1391 location_state values use USPS codes for states and territories, and the DoD country codes the C-1 construction exhibit prints overseas, such as JA for Japan and KR for Korea. Those country codes are not ISO codes; GY is Germany and UK is the United Kingdom. A country the C-1 does not list keeps the value the form prints, in capitals, so it can appear under more than one value. Check top_location_states_by_doc_count before filtering on such a country. Facility category codes appear with and without a hyphen.
  • Contractor and manufacturer names in a narrative's cost analysis and procurement history are kept exactly as each book prints them, so one organization can appear under more than one spelling.