The Concrete Index, 2004 → today
2019 = 100One number, two signals, indexed to 2019
The Concrete Index is a geometric blend of two trailing-twelve-month measures of new public construction work reaching the market: the dollar value of new awards and the count of new awards. Renewals and extensions are dropped by selection method, and single megaprojects of $500M and above are excluded, so the reading tracks genuinely new demand rather than one large commitment. Both components are taken relative to their 2019 baseline and combined as 100 × √[(value ÷ value-2019) × (count ÷ count-2019)], so 2019 reads 100 and the geometric mean keeps either side from running the number on its own. That baseline is the average of the twelve trailing-twelve-month readings dated January through December 2019, not the 2019 calendar-year total; because every reading looks back a full year, the base draws on award activity from February 2018 onward. Basing the series on the same trailing-twelve footing as every other point on the line is what keeps the comparison like for like. It is computed live from City Record award notices, deduplicated to one record per procurement on the pin so the same award is never counted twice.
The real trend, adjusted for cost
MATERIALS & LABOR · 2019 = 100The headline index counts dollars as the City spends them. But a 2026 dollar buys less concrete and fewer crew-hours than a 2019 dollar did. Discounting each award by the month's construction-cost level separates real construction bought from price paid, and the two have parted company.
Construction cost since 2019
2019 = 100WPUSI012011), kept national because construction materials trade in national markets. Labor is New York State construction average hourly earnings of production and nonsupervisory employees, not seasonally adjusted (SMU36000002000000008, monthly back to 2004), the State-localized twin of the prior national series. Monthly, no interpolation; the most recent month or two are forward-filled at the last published value until BLS posts them, and New York publishes one month behind the national figure. The blended deflator that drives the adjusted index weights these 60% materials, 40% labor.Nominal vs cost-adjusted
2019 = 100When the City buys
×AVG MONTHHow the pipeline converts
PHASE ADVANCEMENT| Phase | Projects tracked | Advanced | Held in phase |
|---|
How project budgets grow
MEDIAN · BY AGENCYHow fast the City pays a contract down
DATED SET · MONTHS SINCE REGISTRATIONDoes the agency pay ahead of or behind schedule
DATED SET · AGENCY MEANSAnalysis · Methodology & definitions
SERIES NOTESThe Concrete Index
For each month since 2004, the index combines trailing-twelve-month value and trailing-twelve-month count of new construction awards (renewals excluded by selection method; awards of $500M and above excluded so single megaprojects don't move the cycle reading). Award notices are first deduplicated to one record per procurement (the City Record pin, keeping the largest published amount), the same rule the “Awarded” page uses, so the same award is never counted twice. The two components are expressed relative to their 2019 baselines and blended geometrically; 2019 = 100. Each baseline is the mean of the twelve trailing-twelve-month readings dated in 2019, a mean of overlapping year-long windows reaching back to February 2018, rather than the calendar-year 2019 sum. The two bases differ by a few percent, so the level of the series depends on which one is used; this page uses the trailing-twelve base throughout, including in the cost-adjusted variant. Dollars are nominal; the index reads demand activity rather than inflation-adjusted volume.
Why this differs from the “Awarded” page total. The trailing-twelve award figure on the “Awarded” page sums every construction award in the window after the per-procurement dedupe, including renewals and awards of $500M and above. This index deliberately strips renewals and megaprojects out to isolate the cycle in genuinely new work. Both numbers are computed on the same deduplicated universe and are correct for their purpose, so the two pages will show different trailing-twelve totals by design.
Cost adjustment
The nominal index counts dollars at face value, so it cannot tell rising prices from rising volume. The adjusted series deflates it. Two Bureau of Labor Statistics price series carry the cost signal: materials, the national producer price index for inputs to construction industries, goods (WPUSI012011); and labor, New York State construction average hourly earnings of production and nonsupervisory employees, not seasonally adjusted (SMU36000002000000008). Materials stays national because construction inputs trade in national markets, while labor is localized to New York because construction wages are set regionally. The labor series uses the production-and-nonsupervisory definition because it reaches back to 2004, matching the award record, and is the methodological twin of the national series it replaced. Localizing the labor leg ties the deflator to New York wage growth rather than the national average. Where the two diverge, the cost-adjusted index reads above the all-national blend when New York wages have run slower since 2019 and below it when they have run faster.
Each series is rebased to its own 2019 twelve-month average = 100, then blended into one monthly deflator weighted 60% materials and 40% labor, a split that reflects the materials-heavy mix of the City's general construction work while still carrying the wage signal. Because both series are monthly, the deflator needs no interpolation; the most recent one or two months are forward-filled at the last published value until BLS posts them, and those points are flagged in the data. Every award month's new-award value is divided by that same month's deflator before the trailing-twelve sum, so a 2021 award and a 2025 award are each discounted by the cost level that actually prevailed when the City committed the money, not by a single blanket factor. The cost-adjusted index then applies the same geometric blend with award count, holding the count component unchanged. By construction the 2019 real total equals the 2019 nominal total, which the page uses as an internal check.
Caveats. The labor leg is measured for New York State, but the materials leg is national, so the deflator still approximates local materials cost rather than measuring it. Award value is a floor on real activity, since the published amount is the award notice, not the final registered contract. The 60/40 weighting is a deliberate approximation of input mix, not a measured cost build-up. The nominal index remains the headline reading; the adjusted series is a separate, disclosed view, and its latest months inherit the forward-filled cost values noted above; New York labor publishes one month behind the national materials figure, so the most recent month is forward-filled.
Seasonality
For each complete calendar year, each month's share of that year's new-award value is computed; the profile shows the median share across years, scaled so 1.0 equals an average month. Medians keep single unusual years from distorting the profile.
Pipeline conversion
Projects are matched across consecutive capital plan snapshots (roughly four months apart) by agency and FMS ID, pooled over the two most recent transitions. A project "advances" when its delivery phase moves forward in the sequence pending → pre-design → design → procurement → construction → close-out. Projects that leave the dataset between snapshots are not counted.
Budget escalation
Projects present in both the earliest available plan snapshot (May 2023) and the most recent one, with budgets above $1M in both, are matched by agency and FMS ID. Escalation is each project's total-budget growth across that span; the headline figure is the median. Budget growth blends scope changes with cost escalation. The public record doesn't separate the two, so neither does this page.
Dated payment timing
Two sections read a separate, same-origin dataset, /data/contract-search.json (the file the “Contracts” page uses), falling back to a bundled sample if the live file is absent. It holds registered construction contracts, each carrying its scope description and the City's procurement identification number, both searchable on that page; only those with confirmed Checkbook NYC disbursements carry dated payment timing, and only those are used here. The payment curve averages percent of contract value paid at each whole month since registration across the dated set, with the three agencies holding the most dated contracts overlaid; the contract set behind each month changes as contracts enter and finish, so the line is a population average rather than one contract's path, the horizon is capped at 60 months, and dollars are nominal. The schedule-pace scatter plots each agency's mean schedule-elapsed against its mean paid-to-date; schedule elapsed is start-to-today over start-to-end, clamped to 0 to 150 percent, and the end date is the registered or planned end, not actual completion, so the read is directional rather than a measure of completion. Both sections require at least eight dated contracts per agency before an agency is shown.
Sources
Award history: City Record Recent Contract Awards (qyyg-4tf5), 2003→present. Capital plan: Capital Projects Dashboard (fb86-vt7u), snapshots May 2023→present. Both on NYC Open Data, queried live on every page load. Construction cost: BLS series WPUSI012011 (national materials) and SMU36000002000000008 (New York State construction labor, NSA), 2004→present, fetched server-side by the nightly archive and read here from a same-origin snapshot.