Every comparison of public procurement across borders rests on an assumption so basic it is almost never stated: that the numbers being compared are in the same units. In a record covering dozens of countries that assumption is simply false, and the failure mode is not a small distortion. It is an error of several orders of magnitude, arriving silently, in a column that looks perfectly ordinary.
What the column actually holds
A month of notices sampled across the record contains thirty-one distinct currencies. Euros are the largest group at 44% and US dollars the second at 28%, but the tail is where the danger sits: Taiwanese dollars, Peruvian soles, Czech koruna, Georgian lari, Bhutanese ngultrum, Bahamian and Barbadian dollars. Each value is stored as the number the source published, next to a three-letter code, with no conversion and no reference rate. That is the correct way to store it — converting on ingest would bake in whatever rate happened to apply that day and lose the original figure — but it means the value column is not a quantity. It is a quantity plus a unit, and only one of the two is ever read.
Two currencies carry seventy per cent of a month of notices. The remaining thirty per cent is spread across twenty-nine more, and that tail is where every cross-market total goes wrong.
| Currency | Notices in the month | Share |
|---|---|---|
| EUR | 1,779 | 44% |
| USD | 1,124 | 28% |
| TWD | 256 | 6% |
| PEN | 177 | 4% |
| GBP | 158 | 4% |
| CZK | 119 | 3% |
| GEL | 57 | 1% |
| BTN | 54 | 1% |
| BSD | 36 | 1% |
| BBD | 31 | 1% |
| …and 21 more | — | — |
How the error appears
The failure is not subtle when it lands. A ranking of the largest tenders closing this fortnight, built without filtering by currency, returned a Ugandan contract at the top with a value that read as ten trillion euros — because Ugandan shillings run at roughly four thousand to the euro and the number was taken at face value. Colombian pesos behave the same way, and so does anything denominated in a unit worth a fraction of a euro cent. The result is not a mildly wrong ordering. It is a table in which every low-denomination currency outranks every high-denomination one, sorted by the strength of the currency rather than the size of the contract.
What honest cross-market comparison requires
There are two defensible approaches and one common mistake. The mistake is converting silently at whatever rate is handy and presenting the result as comparable. The first defensible approach is to restrict the comparison to a single currency and say so, which is what this publication does — every money figure across markets here is euro-denominated, and the euro-only filter is stated rather than assumed. The second is to convert explicitly, at a named rate on a named date, and publish the rate alongside the figure so a reader can undo it. Either is fine. What is not fine is a total that spans currencies, because such a total has no unit at all and therefore no meaning, however carefully the rest of the analysis was done.
A total that spans currencies has no unit, and therefore no meaning — however careful the rest of the analysis.
WHY IT MATTERS
Any cross-border procurement figure should carry its currency treatment on the face of it: single-currency and stated, or converted at a named rate on a named date. Totals that quietly span thirty-one currencies rank contracts by the weakness of the local unit, which is why the largest tender in an unfiltered global table is almost always denominated in something worth very little. The wider point is about trust rather than arithmetic — a market comparison that does not say how it handled currency has not told the reader enough to check it, and in a record spanning dozens of countries that omission is the difference between analysis and decoration.
Data: Otnox — live procurement intelligence across 56 markets. Basis: currency codes across a one-month sample of published notices, 2026-07-01..2026-07-26.