Skip to content

Methodology

From public documents to
usable pricing intelligence.

Every price on Hubstake comes from a document a public agency already published. We extract, standardise and organise it so you can find comparable construction pricing quickly — with a direct link back to the original.

Observations
2,621,060
individual line items with pricing
Canonical items
188,879
standardised across all sources
Source documents
45,339
bids, contracts and cost reports
Parties
3,109
owners, contractors and agencies

Our process

A transparent,
five-step process.

We turn complex public records into a clean, standardised and searchable database of construction pricing.

Read the full method

1

Discover

We watch the public document repositories of the City of Fort Worth, TxDOT and FDOT for newly published public-works records — construction contracts, Community Facilities Agreement bid proposals, final pay estimates and change orders. Only records the agency has already posted online are used.

2

Extract

Each document is read page by page and every bid-item line is pulled out with its description, unit, quantity, unit price and extended value, together with the page number it appeared on.

3

Canonicalise

The same work is described differently on every document. Lines are normalised by product, specification and unit — “6" PVC water main” and “6 INCH PVC WATER PIPE” resolve to one canonical item — and the text as printed is kept alongside so you can judge the match.

4

Reconcile

Quantity × unit price must equal the extended value printed on the document. Rows that do not reconcile are quarantined and never published. Prices far outside the expected band for an item are reviewed by hand before release.

5

Publish

Surviving rows are aggregated into a median, a p25–p75 range and a quarterly series, then published with a deep link back to the page of the document each row came from.

From source documents
to insight.

A single, traceable pipeline from public records to comparable pricing. Sample rows are real items from the index.

Source documents

Bid tabulation
Contract
Final pay

Normalised rows

ItemUnitMedianState
RC Pipe (CL III)(24 in)LF$117TX
MobilizationLS$75,000AL, CA, FL, KS, MI, NC, SC, TX, VA
CementTon$200AL, KS, MI, TX
Asphalt Concrete FrictionTN$205FL

Usable insight

RC Pipe (CL III)(24 in) — median by quarter

Data sources and segments

Records already published online by public agencies in Alabama, Arkansas, California, Florida, Kansas, Michigan, North Carolina, Oregon, South Carolina, Texas and Virginia:

  • City of Fort Worth city secretary repository
  • TxDOT bid tabulations, all 26 districts
  • FDOT bid tabulations, 8 districts
  • KDOT monthly bid-tab files and ODOT Bid Data Program workbooks
  • Community Facilities Agreements and final pay estimates

View full coverage

How the numbers are calculated

Prices come straight from the documents and are standardised for comparison:

  • Units of measure (LF, CY, TON, EA)
  • Item descriptions, canonicalised conservatively
  • Median and p25–p75 by linear interpolation
  • Approval date and geography attached to every row

The exact definitions

Data quality

Every row passes the same checks before publication:

  • Quantity × unit price reconciles with the printed extended amount
  • Contract totals reconcile with the winner’s printed total
  • Unit consistency within a canonical item
  • Receipt link points at the page, not just the file

Our quality standards

Coverage by category

Other
723,288
Traffic
564,394
Paving
441,143
Structures
218,242
Drainage
162,531
Earthwork
110,862
General Conditions
97,151
Street Lighting
74,667

Data sources

Hubstake indexes public-works bids, contracts and change orders from 12 agencies: the City of Fort Worth city secretary Laserfiche repository, a searchable archive of public-works procurement documents, change orders and bid analyses going back to 2023; TxDOT bid tabulations covering all 26 Texas districts; FDOT bid tabulations; KDOT monthly bid-tab files; and the ODOT Bid Data Program workbooks — all published by the agencies themselves.

Where an agency publishes every bidder, only the winning bid is indexed, so a median here is what was actually contracted rather than what was offered.

Every price is a real observation from a real project: contract line items, change-order line items and bid-tab entries. We do not estimate, interpolate or source-match. We count what is there.

Hubstake only uses records that agencies have already posted online. No public-records requests, no vendor registrations, no private or scraped commercial sources.

Segments

  • Developer (CFA) — Community Facilities Agreements: infrastructure a developer prices and builds, then dedicates to the city. 14,924 observations.
  • City contract — construction contracts and change orders the city lets directly. 4,065 observations.
  • TxDOT — Texas state highway bid tabulations, winning bids across all 26 districts. 153,834 observations.
  • FDOT — Florida state highway bid tabulations, winning bids. 43,708 observations.

How the numbers are calculated

The median is the middle observation for an item. The typical range is the 25th to 75th percentile — the middle half of observations, computed by linear interpolation. The full range is the lowest and highest accepted observation. Quarterly trend points are the median of observations whose document approval date falls in that quarter; quarters with no observation are not plotted.

Sample depth is a plain-language label on the observation count: Deep (10 or more), Moderate (5–9), Thin (3–4), Very thin (2), Single (1).

Geography is the state and county printed on the source document. TxDOT and FDOT print a county; the index carries one for 37.9% of observations. Neither agency prints a city, so the index has no city field and does not infer one. A contract spanning several counties is counted once in each.

No weighting by quantity, no seasonal adjustment, no inflation indexing. What you see is what the documents say.

Data quality

  • Arithmetic reconciliation — quantity × unit price must match the extended value printed on the document. Lump-sum lines are reconciled against the printed lump sum instead.
  • Contract-level reconciliation — accepted lines must sum to the winning bidder’s printed contract total. A contract that fails is quarantined whole.
  • Unit consistency — all prices within a canonical item are expressed in the same unit. Items with the same name but a different unit stay separate and link to each other.
  • Receipt-link accuracy — every observation links to the page of the source document, not just the document.

Coverage by category

CategoryItemsObservations
Other49,847723,288
Traffic37,082564,394
Paving25,861441,143
Structures22,448218,242
Drainage11,129162,531
General Conditions8,96197,151
Water7,66651,389
Street Lighting7,18074,667
Landscaping6,26967,481
Sanitary Sewer5,53437,015
Earthwork4,294110,862
Erosion Control2,60872,897

Full coverage breakdown

Update cadence

The index is republished whenever a new batch of documents is processed. The beta is not on a guaranteed schedule, and the two states are not equally current:

  • Texas — documents from Apr 25, 2023 to Sep 22, 2026.
  • Michigan — documents from Dec 5, 2014 to Sep 4, 2026.
  • California — documents from Jan 7, 2015 to Aug 27, 2026.
  • Virginia — documents from Jan 27, 1998 to Aug 26, 2026.
  • North Carolina — documents from Jan 15, 2013 to Aug 18, 2026.
  • Oregon — documents from Jan 7, 2021 to Aug 13, 2026.
  • Arkansas — documents from Jan 20, 2010 to Aug 12, 2026.
  • South Carolina — documents from Jan 14, 2014 to Aug 11, 2026.
  • Kansas — documents from Jan 20, 2021 to Aug 1, 2026.
  • Alabama — documents from Jul 30, 1999 to Jun 26, 2026.
  • Florida — documents from Jan 31, 2024 to Dec 3, 2025.

The site was last rebuilt on Sep 25, 2026. The coverage page shows the rebuild date alongside the document dates, so you can see how current the data actually is before you rely on it.

Limitations and beta status

Hubstake is in beta. In the current release:

  • Coverage is 12 agencies — ALDOT, ARDOT, Caltrans, City of Fort Worth, FDOT, KDOT, MDOT, NCDOT, ODOT, SCDOT, TxDOT, VDOT — not every jurisdiction in either state.
  • 132,346 of 188,879 items rest on a single observation. Those medians are one number from one document, not a market rate.
  • The TxDOT and FDOT layers are winning bids only. Losing bids are published by both agencies but are not index prices, so they are not ingested.
  • There is no city-level geography, because the source documents do not print one.
  • Coverage is not equally current across states: the newest Florida document in the index is dated Dec 3, 2025, the newest Texas document Sep 22, 2026.

Full caveats are in the data disclaimer.

Export and access

Every item page carries the full observation table with a link to the source document on each row, and a CSV export of that table — the free Lookup plan exports up to 50 rows at a time; see pricing for higher limits. There is no public bulk endpoint. If you need a dataset rather than a lookup, tell us what you need.

Questions

Reach us at [email protected], or through the contact page. We are happy to discuss methodology, coverage or custom data requests.

Latest updatesLatest indexed document: Sep 22, 2026Last data rebuild: Sep 25, 2026New documents are added as agencies release them.