Skip to content

Search RFP.co

Pages across the product, solutions, opportunities and resources.

Type to search. Press Enter to open the full results page.

Start free trial
Research

How the numbers are produced, before any are published

Periodic analysis of procurement activity — volumes, categories, timelines and competition — with the data source and the method stated so the figures can be checked.

Procurement is one of the most comprehensively published datasets in government and one of the easiest to count wrongly. This page sets out what our analysis will cover and — more usefully today — the specific ways public procurement data misleads anybody who adds it up without reading the footnotes.

The standard every figure has to meet

  • The source is named, and it is a public one

    Every figure traces to a dataset a reader can download — federal award and solicitation data, state and local portals, or our own record of what those portals published. A number sourced to "our data" without a way to check it is a number asking to be taken on trust.

  • The population is stated before the finding

    Which buyers, which instruments, which window, and what was excluded. Most disagreements about procurement statistics are disagreements about the denominator, and stating it first ends them.

  • The method is reproducible from the description

    If a reader with the same source cannot get the same answer from what is written, the description is incomplete. That includes the deduplication rule, which changes the count more than any other choice.

  • Coverage gaps are stated as gaps

    No corpus of public procurement is complete. Portals behind registration walls, buyers who publish only as PDF, and postings with no machine-readable form are all absent, and an analysis that does not say so is claiming a completeness nobody has.

  • Counts are not predictions

    What was published is a measurement. What will be published is a forecast, and the two are labelled differently no matter how confident the trend looks.

Nothing is published here yet

The corpus is being built continuously, and an analysis of a partial corpus is an analysis of our collection schedule rather than of procurement. When the first edition lands it will carry its source, its population and its method — and this page is the commitment to that, made before there is anything to defend.

What the analysis will cover

Forthcoming

Volume and seasonality

Published solicitations by tier of government and by month, against the fiscal calendars that actually drive them — which are not the same calendar in any two tiers.

Forthcoming

Response windows

How much time buyers give, measured from publication to closing and from publication to the question deadline. The second is the one that decides whether a bid is workable.

Forthcoming

Competition

How many offers solicitations attract, where that is published, and how it varies by instrument, category and buyer size.

Forthcoming

Set-asides

The share of published opportunity restricted by designation, and how that differs between what is set aside and what is ultimately awarded.

Forthcoming

Recompete pressure

Contracts approaching the end of their term, with option years accounted for — the pipeline that exists before anything is solicited.

Forthcoming

Publication practice

How buyers actually publish: formats, notice periods, amendment frequency, and how much of it is machine-readable at all.

How procurement data misleads people who count it

These are properties of the public datasets rather than of any product, and they are the reason two competent analysts produce different totals from the same download. Anybody doing their own analysis will meet all of them.

The trap, What goes wrong, What to do instead
The trapWhat goes wrongWhat to do instead
Obligations read as spendingFederal award data records what was obligated, not what was paid. Totals built from obligations describe commitments, and outlays follow on a different schedule.Say which one you are counting, in the sentence that carries the number.
Modifications counted as awardsAward data carries one row per action, and a contract amended twelve times contributes thirteen rows. Counting rows inflates both the count and the value.Aggregate to the base award, then decide separately whether modifications belong in the total.
Ceilings read as revenueA multiple-award vehicle publishes a ceiling covering every holder. Reading it as the winner’s revenue overstates by the number of holders, and the work is competed again as task orders.Treat vehicle awards and task orders as different populations. Never add them.
Industry codes taken as fixedThe code assigned to a solicitation is the buyer’s judgement, it varies between buyers for identical work, and it changes across classification revisions.Group by code for browsing; do not build a time series on one without accounting for revisions.
Aggregator copies counted twiceThe same solicitation appears on a buyer’s portal, a state system and one or more aggregators, with different titles and sometimes different dates.Deduplicate on buyer, solicitation number and closing date before counting anything, and say which copy won.
Missing dates filled inA closing date published without a time is not a midnight deadline, and inferring one produces a spurious cluster at the end of every day.Keep absence as absence, and exclude records missing the field you are measuring.
Fiscal years assumed to agreeThe federal year ends 30 September; most states end 30 June; local buyers vary. A calendar-year chart hides the seasonality that actually drives publication.Segment by tier before looking for a seasonal pattern, or the two cancel each other out.

Award data and solicitation data are also different populations with different coverage. A great deal of published opportunity never produces a published award, and a great deal of published award was never a published opportunity.

Where the underlying data comes from

Federal solicitation and award data is published centrally and is the most complete tier by a wide margin. State procurement is published per state, in formats ranging from a structured feed to a page of links. Local procurement — cities, counties, districts and authorities — is the largest tier by number of buyers and the least consistently published, and it is where a corpus is built rather than downloaded.

That asymmetry is itself a finding worth stating whenever a chart is broken down by tier: an apparent difference in volume between federal and local is partly a difference in how comprehensively each tier publishes.

Reference

What is in the corpus

What a record holds, how duplicate postings across portals are matched into one, and what it is safe to conclude from an absence.

Reference

The dates that drive the cycle

Fiscal years, question deadlines and option years — the calendar behind the seasonality any volume analysis will find.

Common questions

When does the first report publish?

There is no date on this page, deliberately. The corpus is still growing, and an analysis run too early measures our collection schedule rather than procurement activity.

Why publish the method before any findings?

Because the method is the part that can be checked, and committing to it before there is a result to defend is the only time that commitment costs anything. It is also the more useful half for anybody doing their own analysis.

Can I cite figures from RFP.co?

When there are figures to cite, each will carry its source, its population and its method, and citation is welcome on those terms. Until then there is nothing here to quote, which is the point of saying so.

Why is federal data so much more complete than local?

Because federal publication is centralized and mandated, while local publication is thousands of buyers each choosing their own portal, format and notice period. The difference in the data is largely a difference in publishing practice rather than in activity.

What is the single most common error in procurement analysis?

Counting rows in award data. A contract modified a dozen times contributes a dozen extra rows, so both the count and the total value inflate — and the inflation is invisible unless you aggregate to the base award first.

Related

RFP database

Search open solicitations by agency, category and due date.

RFP calendar

Closing dates, pre-bid meetings and question deadlines.

Analytics

Pipeline, win rate and where responses actually lose.

RFP glossary

Procurement terms, defined plainly.

See what you are not bidding on.

Connect a source, describe what your company does, and look at the opportunities that come back before deciding whether any of this is worth your time.