Spending Trends

Federal Contract Spending Trends (1962–2025)

Federal Contract Spending Trends (1962–2025) shows how federal contract spending changes across the visible time series in FPDS-derived procurement data.

The latest visible point is 2025 at 780.15.

Federal Contract Spending Spending Trends Spending Series Series

Updated 03/20/2026

Latest Period
2025
780.15
Visible Change
780.15
Peak Period
2025
780.15
Trend Direction
Up
Unknown

Analysis

The latest visible point is 2025 at 780.15.

Why it matters: Use this page to evaluate how federal contract spending levels shift over time and identify inflection points.

Methodology: The query returns a structured time series, detects a period column and a primary numeric metric, and computes visible-series statistics such as latest value, peak, low, and overall change.

Commentary

Federal Contract Spending Trends (1962–2025) tracks federal contract spending over time in FPDS-derived data.

Key takeaway: The latest visible point is 2025 at 780.15.

Analyst note: This page is best used for directional review, turning points, and quick comparison against related time windows or scopes.

Trend Chart

This chart plots Federal Contract Spending over the visible time series returned by the query.

Query Used

-- Federal Contract Spending Trends (1962–2025)
SELECT
    fiscal_year,
    spending_billion_usd,
    award_count,
    avg_award_size,
    spending_billion_usd
        - lagInFrame(spending_billion_usd) OVER (ORDER BY fiscal_year) AS yoy_change,
    round(
        if(
            lagInFrame(spending_billion_usd) OVER (ORDER BY fiscal_year) = 0,
            NULL,
            (
                spending_billion_usd
                / lagInFrame(spending_billion_usd) OVER (ORDER BY fiscal_year)
                - 1
            ) * 100
        ),
        2
    ) AS yoy_growth_pct
FROM
(
    SELECT
        fiscal_year,
        round(sum(obligated_amount) / 1000000000, 2) AS spending_billion_usd,
        count() AS award_count,
        round(sum(obligated_amount) / count(), 0) AS avg_award_size
    FROM
    (
        SELECT
            if(
                toUInt8(substring(content__award__relevantContractDates__signedDate, 6, 2)) >= 10,
                toUInt16(substring(content__award__relevantContractDates__signedDate, 1, 4)) + 1,
                toUInt16(substring(content__award__relevantContractDates__signedDate, 1, 4))
            ) AS fiscal_year,
            content__award__dollarValues__obligatedAmount AS obligated_amount
        FROM fpds.data
        WHERE
            contract_type = 1
            AND content__award__relevantContractDates__signedDate != ''
            AND toUInt16(substring(content__award__relevantContractDates__signedDate, 1, 4)) >= 1962
    )
    WHERE fiscal_year BETWEEN 1962 AND 2025
    GROUP BY fiscal_year
)
ORDER BY fiscal_year ASC

Trend Table

This table shows the structured time series returned by the query.

Fiscal Year Spending Billion Usd Award Count Avg Award Size Yoy Change Yoy Growth Pct
1962 0.00 1 5696246
1965 0.00 1 77000 0
1967 0.00 2 36481 0
1970 0.00 1 12164 0
1972 0.00 1 333682 0
1973 0.00 1 91809 0
1974 0.04 2 23778650 0.04
1975 0.00 1 88000 -0.04 -100
1976 2.26 46 49300619 2.26
1977 0.33 8 41477462 -1.93 -86
1978 12.39 44 281801810 12.06 3654
1979 86.62 371375 233262 74.23 599
1980 103.27 506876 203755 16.65 19
1981 123.21 474463 259691 19.94 19
1982 138.79 534244 259800 15.58 12
1983 140.00 383153 365401 1.21 0
1984 156.11 392100 398154 16.11 11
1985 178.54 408866 436681 22.43 14
1986 172.56 401230 430083 -5.98 -4
1987 171.34 407831 420143 -1.22 -1
1988 176.60 387489 455774 5.26 3
1989 147.29 321544 458094 -29.31 -17
1990 152.50 365470 417276 5.21 3
1991 170.89 415026 411761 18.39 12
1992 157.29 483617 325240 -13.6 -8
1993 144.03 413876 348005 -13.26 -9
1994 171.67 437871 392064 27.64 19
1995 176.73 522464 338276 5.06 2
1996 193.74 586723 330215 17.01 9
1997 176.63 495758 356285 -17.11 -9
1998 185.66 500401 371037 9.03 5
1999 189.24 517585 365636 3.58 1
2000 207.09 568780 364102 17.85 9
2001 223.29 615910 362552 16.2 7
2002 264.31 795283 332355 41.02 18
2003 324.69 1135037 286061 60.38 22
2004 336.02 1914145 175547 11.33 3
2005 388.68 2851773 136297 52.66 15
2006 427.65 3726190 114771 38.97 10
2007 466.34 4011360 116256 38.69 9
2008 538.02 4397524 122347 71.68 15
2009 536.30 3351269 160030 -1.72 -1
2010 535.59 3376050 158645 -0.71 -1
2011 534.55 3231526 165419 -1.04 -1
2012 515.84 2952307 174727 -18.71 -4
2013 459.43 2319396 198082 -56.41 -11
2014 441.29 2333961 189076 -18.14 -4
2015 432.13 4182322 103324 -9.16 -3
2016 464.55 4624608 100454 32.42 7
2017 502.62 4716249 106573 38.07 8
2018 546.76 5407966 101104 44.14 8
2019 579.78 6297351 92069 33.02 6
2020 658.83 6050113 108897 79.05 13
2021 634.64 6187323 102572 -24.19 -4
2022 681.91 6426392 106112 47.27 7
2023 747.99 6459068 115805 66.08 9
2024 742.04 6440077 115223 -5.95 -1
2025 780.15 6333564 123178 38.11 5

How This Trend Is Built

Measure how a selected procurement metric changes across time.

Query structure

  • The query selects a time dimension used as the x-axis for the trend.
  • It calculates or returns a numeric metric for each visible period.
  • The result is interpreted as a chronological series for trend analysis.
  • The metric focuses on obligated dollars or a directly related spending aggregate.

Included fields

  • fiscal_year — Defines the chronological unit used for the trend series.
  • spending_billion_usd — Defines the main value plotted and analyzed over time.
  • award_count — Provides additional numeric context that can support interpretation.
  • avg_award_size — Provides additional numeric context that can support interpretation.
  • yoy_change — Provides additional numeric context that can support interpretation.
  • yoy_growth_pct — Provides additional numeric context that can support interpretation.

How to use this trend

  • trend direction analysis
  • time-series review
  • federal procurement timing analysis
  • spending trajectory review
  • budget pattern review

Computed Metrics

Series Points
58
First Visible Point
1962
Mean
281.00
Median
182.10
Max
780.15
2025
Min
0.00
1962
Volatility
228.31
228.31
Rows Returned
58

Series Extremes

Largest Increase
79.05
2019 → 2020 · 13.63%
Largest Decrease
-56.41
2012 → 2013 · -10.94%

Related Pages

Method Notes

  • Trend interpretation is based on the returned query result set ordered by the detected period column.
  • Change metrics compare the first visible point and the latest visible point in the series.
  • Volatility is based on the standard deviation of the visible numeric series.

Use FPDS Query for deeper trend analysis

Go beyond the published time series with custom SQL, broader filters, saved queries, and deeper procurement analysis across agencies, vendors, industries, states, contract structures, and competitive segments.

Continue from this trend page into full FPDS Query workflows with deeper filtering, custom SQL, saved queries, and broader market comparison.