I downloaded all of Greece’s no-bid “direct awards” (απευθείας αναθέσεις) between 2023–2025, published on Diavgeia.gov.gr, which account for more than a million records, worth . Then I investigated them in a systematic way, with two goals:
Summary
Here are the three big takeaways:
Every time a public entity (e.g. a ministry, a town hall, a public hospital, …) spends money, it has to publish a record of the decision on a public website called Diavgeia (“clarity”).
How does the state actually buy things? For most purchases it has to run an open tender: it advertises what it needs, competing suppliers put in their bids, and a committee picks a winner. That competition is what keeps the price honest, but it is slow and heavy on paperwork.
For smaller purchases, though, the law allows a shortcut: the (απευθείας ανάθεση). Here the buyer does not have to run a tender at all. It can choose a supplier itself and sign off on the price.
That freedom only goes so far, though: a direct award is allowed only below fixed legal thresholds. For supplies (προμήθειες), services (υπηρεσίες) and studies (μελέτες) the legal threshold is €30,000 before VAT; for construction works (έργα) it is €60,000. Below the threshold, one signature is enough; above it, the buyer owes the full tender.
Each direct award get uploaded on Diavgeia as a together with the associated , free for anyone to download via an API. Conceptually, it is a remarkably open government-spending record, although as I explain later, there is a lot of room for improvement, especially when we take into account that .
I pulled every direct award from Diavgeia, more than a million decisions across 2023, 2024 and 2025, and loaded them into a database I could query.
I first looked at 2025, the most recent completed year, to get a first understanding of the data.
Figures as of July 2026. Diavgeia changes daily, so the exact counts will shift depending on when you download them.
I then looked at the same aggregated figures for 2023 and 2024, and put all three years side by side:
| Year | Direct awards | Public bodies | Suppliers | Apparent spend |
|---|---|---|---|---|
| 2023 | 376,148 | 2,114 | 43,560 | €17.7B |
| 2024 | 342,271 | 1,743 | 39,720 | €12.4B |
| 2025 | 341,240 | 1,544 | 37,576 | €16.3B |
| Total | 1,059,659 | 2,335* | 72,516* | €46.4B |
* For public bodies and suppliers, the total counts each one once across 2023–2025. A body or supplier active in several years is not double-counted, so these totals are deliberately not the sum of the three years. Direct awards and apparent spend are straight sums. Apparent spend carries the same caveats as the 2025 figures above.
I then created some histograms to visually understand the data. The results were very surprising…
Switch the category or year. Whatever you pick, the shape barely changes.
All direct awards in 2025, by value (€1,000 bands)
Diavgeia direct awards, All, 2025: 197,508 records with a net amount, median €2,500.
Footnotes:
1 The y-axis is capped so the spikes near the threshold stay readable. The busiest low-value bands run off the top.
2 Amounts should be net of VAT, but a large share of records store the gross (VAT-inclusive) figure here instead. More on that later.
3 The axis stops at €80,000; 3,374 awards fall above it, far past the €30K–€60K legal thresholds for a direct award, and most likely data errors.
Initial insights
A legitimate direct award legally cannot exceed €30,000 (or €60,000 for construction works / έργα), so you would expect award values to taper off smoothly and stop at the threshold. The Diavgeia data tells a different story: a spike right below the line, a VAT-grossed spike just above it, and a long tail of awards that should not be there at all.
Note: simplified illustration, not the actual data, but close to its real shape.
Direct awards pile up right below the legal thresholds.
Intuitively, you would expect award values to follow a smooth, downward-sloping curve: lots of small purchases, steadily fewer large ones. For the most part the Diavgeia data does exactly that: there are more awards worth €0–5K than €5–10K, more €5–10K than €10–15K, and so on up the scale. But right at the legal threshold that smooth decline snaps into a sharp spike, far more awards at €29,000–30,000 than just above. That is counter-intuitive, and it is no fluke: the same spike shows up in every category and in every year from 2023 to 2025. Whatever produces it is systematic, and has been running for years.
A second spike sits at ~€37,000 (and ~€74,000 for works), exactly the threshold × 1.24, the Greek VAT rate.
For most purchases a direct award is no longer legal above €30,000 (construction works have a higher €60,000 cap), so past the line the chart should fall to almost nothing. Instead a second, smaller spike appears, at about €37,000, which is the €30,000 threshold plus 24% VAT.
These are the same awards sitting just under the line, only recorded with the VAT left in rather than stripped out, so a net €30,000 price shows up as a €37,200 gross figure (more on how, just below).
Even setting those patterns aside, the records are so riddled with manual-entry errors that no human could review them by hand.
Nearly every record on Diavgeia is keyed in by hand, into a free-text form with , so the structured data is full of mistakes. Each one is a typing slip, not wrongdoing, but together they make the data almost impossible to take at face value.
Why does this matter for oversight?
With the API metadata in this state, it becomes very difficult, and at times impossible, for a human to review the direct awards at all.
When the amount, the supplier or the category is missing or mistyped, the basic checks an auditor would run (total the spend, rank the biggest buyers, group like purchases, follow one supplier across awards) quietly return the wrong answer. Add the volume arriving every day, and manual review stops being merely slow; it becomes impossible.
That is why two things are needed: AI to screen the records, catching what a human team no longer can, and validation at the point of entry, so the errors never get in to begin with.
AI-powered analysis
To know whether an award is reasonable you have to open the actual document and read what was bought, from whom, and for how much. No person can do that tens of thousands of times. So I created an AI tool to do it, and reviewed the results.
Hypothesis
A detailed analysis of the official documents attached to each direct award, combined with the associated company data from Γ.Ε.ΜΗ. (Greece’s business registry), will surface suspicious activity, signs of possible waste, fraud or abuse of public funds.
The AI tool analyses the direct awards in the following way:
Read the signed PDF
The AI tool opens the behind each record, not just the , and reads all the relevant details: what was actually bought, the price, the agreed scope of work, whether the government committee signed off unanimously or some members objected to the award, and more.
Assign an initial suspicion score
The AI analyses the API metadata and everything inside the official PDF, then scores the direct award by how “suspicious” the record seems, against a scoring guideline I developed.
Update the score with company data from Γ.Ε.ΜΗ.
Some patterns only show once you know who the supplier is. The AI looks the supplier’s tax ID (ΑΦΜ) up in Γ.Ε.ΜΗ. and reads the company’s data there (when it was set up, the range of activities it is registered for, the people and addresses behind it, and more) and nudges the suspicion score up or down accordingly.
Summarise the award, and explain the score
Finally, for every record the AI writes a short, plain-language summary of what was bought, from whom and for how much (so you never have to read the Greek PDF), together with the reason for the score it gave. Every result links straight back to the original public document, so anyone can check the reasoning.
I then reviewed the most suspicious direct awards flagged by the AI tool inside a custom-made dashboard I built:
Key findings
The detailed, record-by-record analysis the AI tool ran was easily able to flag awards of suspicious activity, each one a lead that deserves a thorough, human investigation, and it showed consistent patterns of possible waste, fraud or abuse of public funds. None of these is a verdict; each is a lead for review.
I group the suspicious activity the AI surfaced into three key themes:
Direct awards that look like waste of public funds.
The award looks like a waste of public funds and deserves a thorough investigation. These awards typically look normal from a high level (the API metadata raise no alarms), and only once you look inside the signed document, and combine it with company information from Γ.Ε.ΜΗ., does the award start to look suspicious.
1aThe award’s price is unintuitively high compared with what the work or goods should plausibly cost.
1bThe direct award is granted for vague deliverables (e.g. vague consulting services) that make the cost hard to justify.
Why does this harm Greek society?
Every euro overpaid, or spent on something a public body had no business buying, is a euro that never reaches a school, a clinic or a road that genuinely needed it. One award barely moves the needle; the same habit, repeated across thousands of awards, quietly drains budgets that are already stretched, and signals to honest suppliers and citizens alike that careful spending is optional.
Suspicions over the specific supplier selected for the direct award, or even the broader selection process.
The content of the direct award seems sensible, but the specific supplier selected to complete the task seems like a suspicious choice.
2aThe supplier is a brand-new firm, registered just days or weeks before they were given their first direct award.
2bThe buyer’s own board committee voted against the award, and their public statement explaining their objection raises concerns about the selection process for the award.
Why does this harm Greek society?
When the winner is a shell with no staff, a firm tied to the people deciding the award, or a “contest” run between companies that share an office, the public is no longer getting the best supplier. It is getting the best-connected one. The work may be over-priced, half-delivered, or quietly passed on to someone else, while the genuine businesses that could have done it are shut out. Each such award also chips away at the basic trust that public money is spent on merit rather than relationships.
Direct awards structured in a way to avoid an open tender, while often setting the highest price possible.
The specific patterns we often observed to raise suspicion for these cases:
3aThe award value looks engineered to land as close to the legal threshold (€30,000) as arithmetically possible.
3bOne project split into several smaller direct awards that each stay under the legal threshold, but collectively exceed it.
A further pattern stood out that I’ve chosen not to detail here: a number of individual buyers and suppliers place a consistently high share of their direct awards, 30% or more, in the narrow band just below the €30,000 legal limit. I’ve withheld the names here to avoid causing unnecessary reputational damage to specific entities; the details are available on request.
Why does this harm Greek society?
This pattern raises the likelihood that an award goes to a less qualified supplier who has the right (political) connections, rather than the best one for the job. Over time it can create a feedback loop: capable firms that lack those connections lose out again and again, and eventually go out of business, even though they could deliver the same work at better quality and a lower price than those who keep winning the awards.
These are the shapes that recurred most as the tool read through the awards, not an exhaustive list, and weighted toward where I looked hardest (the threshold). Some patterns I haven’t yet paired with a public example; where I have, it links to a real Diavgeia record.
Each case behind the links above is a real record. Company and public-body awards link to their Diavgeia page; for an award to a private individual the source is withheld in this public version (available on request). As throughout, these are counter-intuitive leads for a human to review, not accusations, and quite possibly with perfectly legitimate explanations.
Why it matters
Economic inefficiency
Every euro overpaid, or spent on something a public body had no real reason to buy, is a euro that does not reach a school, a clinic or a road that genuinely needed it. A single award barely registers; the same habit, repeated at scale, steadily drains budgets that are already stretched.
Lack of meritocracy
When an award is shaped to land just under the threshold, or quietly steered to a particular supplier, the work tends to go to the firm with the right relationship rather than the one offering the best price or the best quality. Repeated across thousands of awards over years, that slowly squeezes out the capable companies that lack the connections, some of which could have done the same job for less, until they stop bidding, or close. The state is left buying from a shrinking pool of the best-connected rather than the best-qualified.
Loss of trust in the institutions
When the winner is a brand-new shell with no staff, a firm tied to the people deciding the award, or the outcome of a “contest” between companies that share an office, citizens are no longer getting the best supplier, only the best-connected one. Repeated at scale, that erodes the public’s in meritocracy, and by association, in the quality of Greek institutions themselves. This last cost reaches well beyond any single contract: the quality of a country’s institutions is one of the most important determinants of its long-run prosperity, a link established by Acemoglu, Johnson and Robinson, who won the 2024 Nobel Prize in Economics for this work.
What to change
None of this needs a new law or a new portal. Greece already publishes a great deal of its spending; the gap is in the quality of what gets published, and in whether anyone reads it. It comes down to the same three actions I sketched at the very start, two AI tools and a small team to act on what they surface. Together they would amount to a Diavgeia 2.0: the same portal, finally trustworthy and actually read. Each action below comes with a couple of concrete steps.
AI-powered automation: create an AI tool that can analyse every past award, and every new one as it is uploaded.
This is essentially the tool I already built for this piece. The AI-powered analysis already does the hard part, handing back a ranked shortlist of leads, each with a suspicion score and a plain-language reason. A similar version of this tool can be created, and by using open-source models, run locally, can be scaled to the entire Diavgeia dataset, at effectively zero significant costs (I tested exactly this on a sample of ~500 records; see the appendix).
1aReview every past award. Use the AI tool to read every award Diavgeia has published since 2010, not just the recent window this piece sampled, and analyse the historic trends, turning years of records into a complete, ranked map of where the money, and the risk, actually sit.
1bRun it on every new upload. Integrate the tool into Diavgeia so each award is read and scored the moment it is uploaded, enabling humans to review the most suspicious leads, rather than get lost in the tens of thousands of records uploaded daily.
Minimising manual data entry: create another AI tool that populates the API metadata automatically, reading each PDF as it is uploaded, to replace the error-prone manual entry done by clerks.
That screening is only as good as the data beneath it, and today a clerk types the API metadata by hand from the signed document, which is why so many records are incomplete or plainly wrong. A second tool fixes it at the source: it reads the PDF and fills the amount, supplier, ΑΦΜ (tax ID), dates and scope straight into the API metadata, so the clerk confirms a pre-filled form instead of retyping it.
2aPopulate new records as they arrive. As each award is uploaded, the tool reads its PDF and pre-fills the API metadata, and the obvious errors, a gross figure dropped into the net amount field or a missing ΑΦΜ, are caught at the door rather than published.
2bBackfill the historic record. Run the same reader over the awards already filed to fill the missing amounts and suppliers and to flag the gross-for-net figures behind the €37,000 spike, so the last three years stop being a field of gaps and become something anyone can actually search, trust and analyse.
A small task-force: to investigate the leads the AI flags, to keep fine-tuning Diavgeia 2.0, and to make the open-tender process itself easier and faster.
The tools produce leads and clean data; people still have to act on them. A handful of reviewers is enough to close the loop and keep the whole system honest.
3aInvestigate the shortlist of suspicious direct awards flagged by the AI tool. Work down from the highest-scoring leads and the biggest buyers, where the patterns move the most public money.
3bKeep fine-tuning Diavgeia 2.0. Feed what each investigation turns up back into the tools so their scoring and extraction keep sharpening.
3cConsolidate input from public bodies and suppliers on the existing pain points of the open-tender process, and identify actionable recommendations to make it more efficient. The goal is to make it easier and faster for public bodies to go through the open-tender process, instead of having to split contracts into multiple direct awards.
Conclusion
To recap, I investigated Greece’s direct awards (απευθείας αναθέσεις) in a systematic way. The goal was:
I started by downloading all of them: more than 1 million records published on Diavgeia (the public transparency portal) between 2023 and 2025.
A first analysis & visualisation of the data provided 3 initial insights:
Taking into account the 3 insights uncovered from the initial high-level analysis, I hypothesised that a record-by-record analysis of the official documents attached to each direct award would surface a systematic pattern of waste, fraud or abuse of public funds.
To test this hypothesis, I analysed thousands of real documents, with the help of AI: opening the signed PDF behind each award, pulling the company’s details from Γ.Ε.ΜΗ. (the company registry), and assigning a suspicion score to each of them.
This detailed analysis surfaced 3 recurring themes:
These findings imply that the current process for assigning direct awards has, in many cases, a clear negative impact on Greek society. The pattern steers public work to the best-connected firm rather than the best-qualified or the best-priced, which is clearly inefficient from an economic perspective. The second-order implication of this pattern is that society loses in meritocracy, and by association, in the quality of Greek institutions themselves. This last implication is critical for the broader Greek economy, as the quality of a country’s institutions is one of the most important determinants of its long-run prosperity.
The hopeful part is that the status quo can be improved quickly, leveraging the latest AI capabilities. I suggest 3 key actionable recommendations:
None of this needs a new law or a new portal. The same Diavgeia that surfaced every pattern in this piece could just as easily be what catches them. For now the record is good enough to raise the questions and not yet good enough to answer them, and closing that gap is well within reach.
And this is only the beginning. This piece looked at a single kind of decision, the direct award, and read only a small fraction of even those in detail, limited by what one person could analyse. Yet direct awards are a small corner of what Greece publishes: in 2025 alone, Diavgeia had more than 6.2 million decisions uploaded, of which only about 340,000 were direct awards.
| Year | All Diavgeia decisions | Direct awards | Direct-award share |
|---|---|---|---|
| 2023 | 6,108,577 | 376,148 | 6.2% |
| 2024 | 5,833,068 | 342,271 | 5.9% |
| 2025 | 6,222,295 | 341,240 | 5.5% |
All-type totals come from Diavgeia’s OpenData API; the direct-award (Δ.1) counts are the same ones used throughout this piece. Both count published decisions issued in each calendar year.
So if these findings read as discouraging, the wider picture is the opposite. The same approach that surfaced these patterns in one narrow corner could be pointed at the rest of the portal, the tenders, the public hires, the grants, the contract changes, and at the roughly six million decisions that arrive every year. The problems are real, but the opportunity is far larger, and for the first time the tools to act on it are within reach.
Appendix A
Everything in this piece comes out of a single public source, and you need no account, no API key, and no one’s permission to pull it yourself. Diavgeia (the government transparency portal) exposes an unauthenticated OpenData search endpoint that hands back the same structured records I worked from, as JSON. Here is the exact recipe I used to turn it into a local database of every direct award.
https://diavgeia.gov.gr/luminapi/opendata/search.json, which you filter to Δ.1 (the direct-award decision type) over a date range. A real, runnable first call is …/search.json?type=Δ.1&from_issue_date=2025-01-01&to_issue_date=2025-02-01&size=500&page=0. It answers as JSON: an info block with the total count, then a decisions array. By default the endpoint returns only published decisions (status=Αναρτημένη), which already excludes any award later revoked.from_issue_date and to_issue_date, not from_date / to_date. The short names are accepted and return a 200, but they filter the publication date rather than the issue date, so you get a differently bounded (often empty) set. Second, a single query silently covers at most about six months; ask for a whole year and you still get a 200, but it stops half-way. So I walk the year in twelve one-month windows. Because the upper bound is read as 00:00 Athens time (a half-open interval), I set each window’s to_issue_date to the first day of the next month, so the month’s last calendar day is not dropped.size=500 (the maximum) and start at page=0, incrementing until a page returns fewer than 500 records, that is the last page of the month. 2025 alone holds roughly 341,000 Δ.1 records, so expect to page through a lot of them; a half-second pause between calls keeps it polite, and I never hit a rate limit.organizationId. The full roster of 5,400+ public bodies comes from one call to https://diavgeia.gov.gr/luminapi/opendata/organizations.json?size=15000, which maps each uid to a readable name (plus its supervising ministry and ΑΦΜ). A handful of renamed or retired bodies are missing from that dump; for those I look the uid up one at a time at …/opendata/organizations/{uid}.json.ada); the buyer (organizationId); the decision type (decisionTypeId, always Δ.1); the issue date (issueDate, as Unix milliseconds); the amount, which lives inside extraFieldValues as a single (optional) awardAmount field (labelled “Ποσό”, meant to be net of VAT); the supplier’s name and ΑΦΜ (from extraFieldValues.person); the CPV procurement codes (extraFieldValues.cpv); the free-text subject; and the documentUrl pointing at the signed PDF. Be ready for the amount to be missing, about 42% of 2025’s records carry none.documentUrl links straight to its PDF (the human-readable page is https://diavgeia.gov.gr/decision/view/{ada}). I fetch these only for the awards I actually mean to read.decisions.db), with the organisation catalogue in a sidecar table joined on the uid, plus small log tables recording what was fetched and which decisions were revoked. After that it is ordinary SQL: sum each buyer’s awards by month, rank suppliers by how often they land just under a threshold, and so on. The whole 2025 corpus (about 341,000 awards, 1,544 active buyers, 37,576 distinct supplier ΑΦΜs, €16.3 billion of apparent spend) fits comfortably in one file on a laptop. (The headline 1.06 million awards and ~€46 billion of apparent spend elsewhere in this piece is the same pull extended across 2023–2025.)Or, if that sounds like an afternoon you would rather skip: paste this entire recipe into Claude (Opus 4.8, with its 1 million-token context window) and you should be up and running in a few hours.
Appendix B
The analysis in this piece ran on a paid, state-of-the-art model (Opus 4.8), the right call for accuracy but costly to run across a whole national dataset. So I also tested a free alternative: I re-scored a sample of about 500 direct awards with GLM 5.2, one of the newest open-source models, and compared it against Opus on the same records.
The two broadly agreed. The open model’s average suspicion score was 3.0, against Opus’s 3.2 on the same scale. They scored within a single point of each other on two out of three records, and within two points on 87% of them. Most useful for a real filter, the open model caught more than nine in ten of the awards Opus rated most suspicious.
Better still, because an open model can be fine-tuned, its accuracy can be pushed higher still by training out specific blind spots.
The point is the cost. GLM 5.2 is open-source, so it can be run on an organisation’s own hardware with no per-record fee, and pointed at every award the portal has ever published, and every new one as it arrives, at effectively zero marginal cost.
Appendix C
To judge a supplier rather than a single award, I matched each vendor’s tax ID (ΑΦΜ) against Γ.Ε.ΜΗ. (the General Commercial Registry, Greece’s company registry). The same data is public, and the cross-check is reproducible: here is how to pull a company’s registry profile yourself, starting from nothing but an ΑΦΜ read off a Diavgeia award.
api_key then arrives by email, to be sent as a raw api_key request header on every call, not a Bearer token. The default budget is modest, about eight requests a minute (I asked them to raise mine to roughly thirty). The full method list, schemas and a try-it-yourself console live in the Swagger API docs (a shared api-docs-key lets you poke at it before you register), with more in the technical documentation.opendata-api.businessportal.gr, and a lookup is a single GET /companies?afm=<ΑΦΜ> with your api_key header attached. The search response already carries the full record, so you rarely need the follow-up GET /companies/<αριθμός Γ.Ε.ΜΗ.> detail call.429. There is no rush here: this is a slow read of public records, not a scrape.Appendix D
The EU’s Open Data Maturity (ODM) assessment is an annual exercise, run by data.europa.eu (the Publications Office of the European Union), that measures the progress of European countries in promoting and facilitating the availability and reuse of public-sector information. Its methodology evaluates developments in open data across four thematic dimensions: policy, portal, quality and impact. Maturity in these four dimensions is aggregated into a single overall score that shows a country’s open-data maturity.
In the 2025 edition, Greece came last in the union: 27th of 27 EU member states, and well below the EU average. A year earlier it ranked 26th.
| Open-data maturity | 2024 | 2025 |
|---|---|---|
| Greece | 56.2% | 61.2% |
| EU-27 average | 83% | 86% |
| Greece’s rank in the EU-27 | 26th of 27 | 27th of 27 |
Overall Open Data Maturity scores from the EU’s 2025 assessment and Greece’s country factsheets (2025, 2024), published by data.europa.eu. The report sorts countries into maturity clusters rather than printing a 1–27 list, so the rank is Greece’s position by overall score among the EU-27.
The benchmark covers all of Greece’s public-sector data, not Diavgeia alone, and it points the same way this piece does. Greece has had the mandate and the portal since Diavgeia launched in 2010, yet it ranks last in the EU on how mature its open data actually is. The full figures and methodology are in the 2025 Open Data Maturity report.
Appendix E
A quick reference for the Greek terms and code names that recur through this piece, so a reader can dip in without hunting back for where each was first defined.
diavgeia.gov.gr/doc/<ΑΔΑ> link.