Firm Awards · Module 3

Where the winning bid actually sat.

Every bidder on every contract award we hold — World Bank and EU — with the price they put in, where that sat against the rest of the field, and, on quality-and-cost tenders, the technical and financial scores the evaluation published. Filter down to the tenders that look like yours and read the distribution: how far under the cheapest bid winners actually priced, how wide the field spread, and how often the lowest price simply took it.

Pricing guide

Recomputed from whatever the filters leave. Two reference points, never mixed — the published ceiling, and the rest of the field.

Tenders

Click any row to open the full bid table — every firm, its price, its distance from the winner, and its scores where published.

Award date Funder Country Contract Bids Ceiling Winner vs ceiling vs lowest Spread Tech

Methodology & limits

What each funder publishes differs, and that shapes what can be asked of each row.

Two reference points, never averaged together

The ceiling is the advertised budget. The EU publishes it on TED as the estimated value; the World Bank does not publish it at all. So vs ceiling exists only on EU rows.

The field is the other bids on the same tender. The World Bank publishes every evaluated bidder's price; the EU publishes only the winner. So vs lowest and spread exist only where two or more prices were published.

A tender almost never has both. Each figure carries the basis it came from, and the pricing guide keeps them in separate columns rather than blending them into one "discount".

Which price is compared

The evaluated price where the notice gives one — that is the figure the evaluation actually ranked, after arithmetic correction and conversion to a common currency. Failing that the opening price, and last the signed price. Each bidder row states which basis was used.

Everything is converted to USD at static long-run rates, the same table Firm Awards uses. Good for ranking and for percentages; not for accounting.

Scores are winner-side

World Bank QCBS notices publish a Scores block — technical, financial, combined, rank, and the technical rubric behind it (experience, methodology, key personnel, transfer of knowledge, participation by nationals). It is published for the winning firm or joint venture only. Losing bidders get a price but almost never a score.

So "what technical score wins" is answerable; "what technical score loses" is not, from this data. Where a notice states a minimum qualifying score, that threshold is shown — it is the bar a technical offer had to clear before its price was opened at all.

This is a distribution, not a prediction

The guide reports what winning bids did, on the tenders matching your filters. It is a base rate, not a model: it has no view of your competitors, your technical offer, or the evaluation panel.

Narrow the filters until the tenders look like yours, then check the count — a median over six tenders is an anecdote. The block shows how many tenders it is built on for exactly that reason.

Coverage

World Bank contract award notices for ASEAN-11, plus EU external-aid contract award notices from TED where the place of performance or the notice text names one of those countries.

ADB is not in here yet. ADB blocks automated access to its contract-award pages, so it comes in either through the existing manual CSV path in data/awards-manual/ or through UN Global Marketplace, which republishes ADB awards.

Sources

World Bank — Contract Award notices, projects.worldbank.org, parsed per notice; every row keeps the URL of the notice it came from.

European Union — Contract award notices on TED (Tenders Electronic Daily), filtered to external-aid programmes. Each row links back to its notice.

Rebuild with node scripts/scrape-awards/index.js --backfill, node scripts/scrape-eu-awards/index.js, then node scripts/build-bid-analytics/index.js.