Catalog / Knowledge, Search & RAG / KNOW-017

Public tender & funding opportunity discovery and matching

Continuously scan public procurement notices and grant/funding calls, match them against a company's or organisation's profile, and deliver a ranked, explained shortlist of opportunities.

Quick win: proven, manageable effort, first results within weeks, low regulatory risk.

Parts needed to run it yourselfAgents & automationLanguage modelSearch & RAG

Public contracts and grants are published across hundreds of portals in many languages, and most companies find only a fraction of what would fit them. AI matches each notice or call against a structured company profile, ranks it, explains why it fits and flags blocking criteria such as deadline, region or minimum turnover. It is the bidder/applicant-side front end of the bid process; writing the response is LANG-006 and analysing the tender documents is DOC-015.

Problem & value

  • Today: bid managers and funding consultants poll TED, national portals (in Germany oeffentlichevergabe.de, DTVP, Vergabe24, state portals), the Förderdatenbank and the EU Funding & Tenders Portal, filter by CPV code or keyword and read long notices. Keyword and CPV filters miss relevant notices because buyers choose CPV codes inconsistently and describe needs in free text.
  • AI value: semantic matching on the notice text (not only codes), multilingual matching of cross-border notices, explained ranking, automatic extraction of deadline/lot/value/criteria, and learning from "relevant / not relevant" feedback. The decision to bid stays with a human.
  • Figures: this file deliberately gives no benefit percentages; vendors publish hit-rate claims without independent evidence. Measure your own baseline (see KPIs). Note that the TED search API is anonymous for published notices, so the data basis for building your own is free [1].

Variants

  • Tender monitoring for suppliers (SMB/Mittelstand): profile = products, references, regions.
  • Funding/grant radar: for companies (innovation grants, Förderdatenbank programmes), research institutes (Horizon Europe calls), municipalities and NGOs. Förderdatenbank covers federal, Länder and EU programmes [2].
  • Consortium partner search: match calls to partner profiles (universities, SMEs).
  • Buyer-side market scouting (public sector): find suppliers/past awards for market research.
  • Consultancies and Fördermittelberater: one pipeline, many client profiles.
  • Private use: subsidies for households (energy renovation, e-mobility, education grants) matched to a personal situation; same pipeline, smaller data.

How it works

  1. sources (TED API, national portals, Förderdatenbank, EU F&T portal, foundations)
  2. ingestion (API / feeds / scraping; eForms XML
  3. normalised JSON; dedup across portals)
  4. enrichment (language detection, translation, extract deadline, lots, CPV, region, value, criteria)
  5. profile building (company website, references, certificates
  6. structured profile + embedding)
  7. hybrid retrieval (BM25 + dense embeddings)
  8. reranker
  9. LLM fit explanation + eligibility check
  10. alert / digest
  11. human go/no-go
  12. hand-off to proposal (LANG-006, DOC-015)
  13. feedback loop (relevant / irrelevant) tunes thresholds and profile
  • Retrieval: multilingual embeddings are important because EU notices come in 24 languages; BGE-M3 offers dense, sparse and multi-vector retrieval in 100+ languages under MIT licence [4].
  • LLM role: extraction of hard criteria (eligibility, reference requirements) and a short justification per hit; never a silent filter that drops notices without logging the reason.
  • Human-in-the-loop: go/no-go and any legal reading of eligibility; weekly review of the "borderline" bucket to avoid blind spots.

Data preparation

Needed are two data sets: the external notices (TED / eForms, national portals, funding databases) and your own company profile. The notices arrive as structured XML or JSON and need little cleaning beyond de-duplication across portals and language detection. The real work is the profile, which in an SMB is scattered across the website, old bids and reference letters in the DMS or on file shares, certificates as scans, and the heads of two or three bid managers.

Typical gaps: references without CPV or NACE codes, outdated certificates, no written exclusion criteria (minimum turnover, regions, co-funding) and no record of past go/no-go decisions.

Preparation steps: - Write a one-to-two-page structured profile (services, CPV/NACE codes, regions, references, certificates, no-go rules); this is the single most valuable artefact. - Export past bids with outcome (won, lost, not bid) as a first gold set (see PREP-016 and PREP-018). - OCR old reference letters and certificates (PREP-006), tag them with metadata (PREP-010). - Keep the profile in one owned place with a named maintainer (PREP-004).

Tools: n8n or a script for feeds, Paperless-ngx or the DMS for OCR. Data preparation is roughly 10 to 15 percent of the total effort; source maintenance matters more than data cleaning.

Implementation paths

Which path for whom

  • SMB: Path A, because mature EU-hosted portals (e.g. DTVP) already offer alerts and AI search profiles at subscription prices and the process is standard.
  • Enterprise: Path B, because several business units need their own profiles, CRM integration and a shared pipeline into bid management.
  • Developer: Path C, because TED data is open and a small stack (BGE-M3, OpenSearch, n8n) runs on HW1 and can serve many client profiles.
  • Public: Path B on a sovereign EU or German cloud, because funding and tender profiles feed internal procurement and grant processes and sovereignty requirements apply.
  • Private: Path A, because free public databases such as the Förderdatenbank cover the need without any own infrastructure.
  • Procurement platforms with alerts and AI search profiles: DTVP (Deutsches Vergabeportal, German) offers tender search, e-mail alerts and an AI assistant ("Argos") that builds search profiles from a company's service portfolio [5]. Comparable German/EU services include Vergabe24, subreport, Ausschreibungs-Dienst and TED-based aggregators; verify current AI features per vendor.
  • Funding search: Förderdatenbank des Bundes (free, public) and regional funding banks; paid Fördermittel-Radar services from consultancies.
  • Choose A when: DACH/EU public sector is a side channel, you have no developers, and a keyword profile plus semantic ranking is enough. Check data hosting (EU), portal coverage (Länder, below-threshold notices) and whether alerts include explanations.

Path B — Build on cloud APIs

  • Data: TED Search API (no key needed for published notices) [1]; EU Funding & Tenders portal search endpoints; national portals' open-data or feed access where available (check each portal's terms before scraping).
  • Models: EU-hosted embedding + LLM APIs (Mistral, or Azure OpenAI / Google Vertex / AWS Bedrock in EU regions, or Claude via EU-region offerings) with structured outputs for criteria extraction.
  • Orchestration: n8n / Power Automate for scheduling, dedup and Teams/Slack/email alerts; Postgres+pgvector or OpenSearch for hybrid search.
  • Choose B when: you need your own profile logic, CRM integration (AGENT-007) or several client profiles (consultancy).

Path C — Self-host (open source)

  • Models: BGE-M3 for retrieval [4], a multilingual reranker (bge-reranker family), a small/mid open LLM (Qwen, Mistral, Llama class) for extraction and explanations, served by vLLM or Ollama.
  • Stack: OpenSearch or Qdrant/pgvector, n8n, and your own crawlers. OpenTED shows how TED data can be archived and made analysable with open tooling [3].
  • Hardware: HW1 suffices (CPU embeddings for tens of thousands of notices; 7–8B LLM quantised on CPU/small GPU for short summaries); HW2 for faster multilingual LLM extraction.
  • Choose C when: profile data is sensitive (strategy, pricing) or you serve many clients.

Path D — Custom training

Rarely needed. A fine-tuned bi-encoder or classifier on your own labelled history (bids you submitted and won/lost, hits marked irrelevant) can improve ranking once you have several hundred labelled decisions. Prefer prompt tuning and threshold calibration first.

State of the art (2026)

  • Hybrid retrieval + reranking + LLM explanation has replaced pure CPV/keyword filters at leading vendors; multilingual dense models cover EU languages well enough for first-pass matching.
  • Structured data: since the EU eForms standard, TED notices come as structured data, making field-level filtering (value, lots, award criteria) reliable; legacy and national-only notices remain messy text.
  • Agents can run daily scans, read attached tender documents and pre-fill a bid/no-bid sheet (DOC-015); funding calls with narrative eligibility rules remain harder than tenders.
  • Limits and failure modes: missed notices from portals without API; LLM misreading of eligibility ("only SMEs", "only consortia of three countries"); stale deadlines after corrigenda; portal terms forbidding scraping; hit-rate claims by vendors are mostly unaudited. Always show the source link and the deadline, and re-check the original notice before acting.

Shared resources & combinations

  • Same stack (embedding-text + reranker + vector-db + search-engine): KNOW-001 enterprise search, KNOW-007 patent search, KNOW-015 deep research. One hybrid-search cluster serves all.
  • Downstream: DOC-015 (read tender documents, extract requirements), LANG-006 (draft proposal or grant application), AGENT-007 (sales/CRM follow-up), ANOM-020 (market-level screening of tender data by authorities, the buyer-side counterpart).
  • Funder side: DOC-031 screens proposals; KNOW-017 is its applicant-side mirror.
  • Building blocks: crawler/ingestion service, translation, profile store, n8n workflows.

Effort, cost & KPIs

  • Path A: hours to days to set up profiles; subscription pricing varies by vendor.
  • Path B: 2–6 weeks for ingestion, matching and alerts; ongoing API cost is small relative to bid-team time; most effort in source maintenance.
  • Path C: 1–3 months incl. crawlers; small server or workstation.
  • KPIs: recall against a manually curated gold set of past relevant notices, precision of the top 10, share of alerts rated relevant, time from publication to alert, bids submitted and win rate from discovered opportunities, hours of manual scanning saved.

People & change

Who and when: Management decides the target markets and budget at the start. The department lead (sales or bid management) owns the profile and the go/no-go rule; end-users (bid writers) test the shortlist in the pilot. IT is needed only for Path B/C integration, legal-compliance for the eligibility reading.

Works council: Usually not required, because the system processes public notices and company data, not employee behaviour. §87(1) no. 6 BetrVG would only apply if usage per employee were logged and evaluated; configure it so it is not. If work processes in bid management change noticeably, inform an existing works council in good time (§90(1) no. 3 BetrVG). In the public sector the staff council (Personalrat) is informed in the same way.

Data protection: Contact persons in notices are personal data; check with the DPO, and conclude an AVV (Art. 28 GDPR) with every hosted vendor. A DPIA is normally not needed.

AI literacy: Art. 4 AI Act requires measures that support staff AI literacy; a one-hour session on reading fit scores and their limits is enough here (GUIDE-006).

Communication and pilot: Start with one bid manager and three months of past notices; compare against the manual search (GUIDE-009).

Concerns: "Will we miss tenders?" Address with a weekly review of the borderline bucket and logged reasons. The human always decides on go/no-go; see GUIDE-008.

Risks, regulation & compliance

  • EU AI Act: minimal risk for the bidder-side use case; no Annex III category applies to a company ranking notices. AI literacy (Art. 4) applies. Becomes different if a public authority uses similar scoring to decide on access to benefits or grants (see DOC-031; may touch Annex III) [6].
  • GDPR: notices mostly contain company data, but contact persons and award data about sole traders are personal data; consultancies holding client profiles need a processing agreement.
  • Procurement law: AI finds opportunities but does not change bidding rules (GWB/VgV, UVgO, EU directives, deadlines, eligibility). Missing a deadline or wrongly reading an exclusion ground is the real legal risk; keep the human check.
  • Terms of use: respect portal terms, robots rules and database rights when crawling; prefer official APIs and open data.
  • Fairness and conflicts: avoid sharing client profiles across clients; log why items were ranked or dropped.

Getting started

  1. Write a one-page profile: services, CPV/NACE codes, regions, size limits, references, no-go topics.
  2. Collect 30–50 notices/calls you would have wanted in the last year as a gold set.
  3. Try a Path A service (e.g. DTVP's search profile assistant) and compare with the gold set.
  4. If gaps remain, pull TED notices through the anonymous API and test hybrid retrieval with BGE-M3.
  5. Add a feedback button ("relevant / not") and review monthly; connect hits to DOC-015 and LANG-006.

Sources

  1. TED developer documentation (Search API, anonymous access) — https://docs.ted.europa.eu/api/latest/index.html
  2. Förderdatenbank des Bundes (federal, Länder and EU funding programmes) — https://www.foerderdatenbank.de/FDB/DE/Home/home.html
  3. OpenTED (open archive/analysis of TED data) — https://github.com/OpenTED/opented
  4. BGE-M3 model card (100+ languages, 8192 tokens, MIT, dense/sparse/multi-vector) — https://huggingface.co/BAAI/bge-m3
  5. DTVP Deutsches Vergabeportal (alerts, AI assistant Argos) — https://www.dtvp.de/
  6. Regulation (EU) 2024/1689 (AI Act) — https://eur-lex.europa.eu/eli/reg/2024/1689/oj
  7. Bund e-Vergabe / Bekanntmachungsservice entry point — https://www.bescha.bund.de/