Guide

Government tender search, and the coverage question nobody answers

Every government tender an alert service emails you came from a free public portal. The value was never the data — it is that the data lives in a dozen places with a dozen search boxes. Here is what aggregating it actually involves, and the question worth asking any tender service before you pay for one.

By Stipple Research9 min readUpdated 28 August 2026
Useful next steps

If you are learning this topic for the first time, these Stipple pages help you move from reading to checking, verifying, or building.

Key takeaways
  • Every government tender in a paid alert service originates from a free public portal. What you are buying is aggregation, filtering and delivery — not access.
  • The corpus holds 1,153 open tenders from 14 sources across five tiers: federal, national, state, council and health.
  • An empty search result is ambiguous. It can mean nothing matched, or it can mean the source that would have matched was unreachable — and those need to be told apart.
  • So the source registry is public: every source, how it is accessed, what its robots.txt permits, and its status on the last run.
  • Some portals sit behind login walls and some refuse automated access outright. Both are named rather than quietly omitted.
  • Coverage is stated on every search, so an empty result means “no match in what we searched” and never “no such tender exists”.
  • Search is free and needs no key. Matching a tender against what a company actually does is the part that costs.
Evidence path
  1. 01

    Why the data is scattered

    Start with the material.

  2. 02

    What aggregation actually costs

    Add one more signal.

  3. 03

    The empty-result problem

    Add one more signal.

  4. 04

    What we cannot reach

    Add one more signal.

  5. 05

    Matching versus alerting

    Add one more signal.

  6. 06

    Using it

    Make a careful call.

01

Why the data is scattered

Short answer

Because each government publishes its own. There is no single Australian tender register, and there was never meant to be.

Federal opportunities are published federally. Each state runs its own portal. Councils publish separately again, sometimes through a shared platform and sometimes on their own website. Universities and health services publish independently. New Zealand has its own national service, which is free and structured and entirely separate.

None of that is dysfunction — each of those bodies is meeting its own transparency obligation, and meeting it well. The consequence is simply that a supplier who could plausibly bid across three tiers has to check a dozen places, each with a different search box, a different category scheme and a different idea of what a closing date field means.

That is the actual problem an aggregator solves. It is a boring problem and it is a real one, and it is worth being clear that the value is in the collecting rather than in the data — because the moment a service implies the data itself is exclusive, it has started misrepresenting what you are paying for.

TierWho publishesIn the corpus
FederalThe national procurement portalIncluded
National (NZ)New Zealand’s government tender service325 tenders
StateEach state and territory separatelyNSW 101, VIC 33, QLD 31, WA 20, TAS 18, ACT 16
CouncilLocal government, individually or via shared platformsIncluded
HealthHealth services and districtsIncluded
02

What aggregation actually costs

Short answer

Not the fetching. The cost is in reconciling fourteen sources that disagree about categories, dates and what counts as open.

One source publishes a closing date with a time zone and another publishes a date alone. One uses a standard category taxonomy, another uses its own labels, a third uses free text. Some mark a tender closed; others simply stop listing it. A tender can appear on both a state portal and an aggregating platform, with different reference numbers and slightly different titles.

So the work is normalising: one date format, one jurisdiction scheme, one notion of open, and a fingerprint that recognises the same tender arriving twice from two places. None of that is visible in the product and all of it is where the effort goes.

There is a deliberate omission worth naming. The corpus has no location filter, because location is populated on a small minority of rows while jurisdiction is populated on all of them. A location filter would look useful and would silently hide most of the corpus from anyone who used it — a filter that quietly removes what it cannot classify is worse than no filter.

03

The empty-result problem

Short answer

An empty result has two possible meanings, and a search that cannot tell them apart is worse than useless — it is confidently wrong.

You search for civil works closing this month and get nothing back. Either there genuinely are none, or the source that would have carried them failed on the last run and its rows are missing. Those are opposite conclusions and the naive interface renders both as an empty list.

For a supplier the difference is a missed bid. For an agent calling this as a tool the difference is worse, because the agent will report "no matching tenders" with the same confidence in both cases and nothing downstream can distinguish them.

So every search returns coverage: which sources were searched, and which returned nothing. An empty result means no match in what we searched — never that no such tender exists. That phrasing is deliberate and it is load-bearing.

04

What we cannot reach

Short answer

Some portals require a login and some refuse automated access. The registry names them rather than quietly leaving them out.

A public source registry lists every source: what it is, how it is accessed, what its robots.txt permits, how many tenders we hold from it, and its status on the last run. It is free to read and needs no key.

It includes the sources we do not have. Portals behind authentication walls are named as such. Sources whose robots.txt refuses automated access are named as refused rather than fetched anyway — a robots file is a request, and ignoring it to improve a coverage number is the kind of decision that is invisible until it is not.

This is the opposite of how coverage is normally marketed. The instinct is to publish the count and leave the gaps unstated, because a named gap reads as a weakness. It reads that way right up until somebody loses a bid to a tender that was never in the feed, at which point an unstated gap becomes a much larger problem than a stated one.

05

Matching versus alerting

Short answer

Keyword alerts move the filtering work onto you. Matching against what a company actually does is a different job, and it is the one that costs.

The standard product is a keyword or category alert: pick your terms, receive everything that matches. It works, and its failure mode is volume — the categories are broad, so the inbox fills with tenders that share a label and nothing else, and the filtering you were paying to avoid lands back on your desk.

The alternative is to read what a company actually says it does and rank open tenders against that, returning the capabilities a tender needs that the company states, and the requirements it asks for that the company does not mention. That is a shortlist with reasons attached rather than a feed.

The honest framing of such a score: it is relative fit among the results returned, not a probability of winning. Nothing in a tender notice can tell you about incumbent relationships, pricing, or the twenty other bidders. A score that implied otherwise would be selling certainty about a competitive process it cannot see.

Search is free and needs no key. Matching costs, because it reads a website and runs a scoring pass — and being clear about which half is which is part of not overselling either.

06

Using it

Short answer

Search free over REST, read coverage before you conclude anything, and treat a match score as a shortlist rather than a ranking of your chances.

SEARCH IS FREE AND UNAUTHENTICATED. Filter by jurisdiction — AU, NZ, or a specific state — plus tier, category, closing date and free text. It is a plain REST endpoint, so an agent can call it as a tool without an integration.

READ COVERAGE FIRST, especially when the result is empty. The coverage block is the difference between "there are none" and "we could not see them", and it is the only part of the response that can tell you which one you are looking at.

CHECK THE SOURCE REGISTRY when a source matters to you. If your work comes from one particular state portal, it takes one call to see whether it is in the feed, when it last ran, and whether it can be read at all.

AND GO TO THE ORIGINAL BEFORE YOU BID. The corpus carries the notice and a link; it is not the tender documents, and a summary is not a specification. The aggregation exists to find the opportunity, not to replace reading it.

Questions

Frequently asked questions

Is government tender data free?

Yes. Every government tender in any paid alert service originates from a free public portal — federal, state, council or New Zealand’s national service. What a paid service sells is aggregation, filtering and delivery, not access to data you could not otherwise reach.

How many tenders and sources are covered?

1,153 open tenders from 14 sources across five tiers: federal, national, state, council and health. Australia and New Zealand, with New Zealand contributing 325 and the Australian states listed individually.

What does an empty search result mean?

No match in what was searched — never that no such tender exists. Every search returns coverage naming which sources were searched and which returned nothing, because an empty list caused by a failed source and an empty list caused by genuine absence are opposite conclusions.

Which sources are missing?

The source registry names them. Portals behind login walls appear as such, and sources whose robots.txt refuses automated access appear as refused rather than being fetched anyway. Publishing the gaps is more useful than publishing a larger number.

Why is there no location filter?

Because location is populated on only a small minority of rows while jurisdiction is populated on all of them. A location filter would look useful and would silently hide most of the corpus from anyone who used it.

What does a tender match score mean?

Relative fit among the results returned — not a probability of winning. A tender notice contains nothing about incumbent relationships, pricing or who else is bidding, so any score implying odds would be selling certainty about a process it cannot see.

Sources

Sources and further reading

  1. 01API reference — /v1/tenders, /v1/tenders/sources and /v1/tenders/match
  2. 02Search open tenders in the browser
  3. 03How document fraud detection works — checking the documents a bid produces

Educational guidance, not a forensic certification. Detection technologies and standards change; review material decisions against current evidence.

Search the open tenders

Free, no key. Filter across Australian and New Zealand government sources by jurisdiction, tier and closing date — with the coverage stated on every result, so an empty answer tells you which kind of empty it is.

Open tender search