How Embeddings Turn Your Product Catalogue Into a Tender Radar
July 26, 2026 · 7 min read
Imagine a medical-gas manufacturer missing a hospital oxygen-plant tender in a neighbouring country because the notice never says "oxygen plant." It said "PSA generation unit, 93% concentration, with redundant compressor train." Their keyword alert was set to "oxygen" and "medical gas." The buyer used the engineering term. The alert stayed silent. The bid closed. A competitor won work worth more than that manufacturer's entire annual marketing budget, and nobody on the team ever saw the notice.
This is the quiet failure mode of keyword search in public procurement. The words you sell with are almost never the words a buyer writes a tender with. Embeddings fix this by matching on meaning instead of letters.
Why keyword alerts keep missing your best tenders
Public buyers across the major portals (the EU's TED, Brazil's PNCP, the UN's UNGM, the World Bank pipeline, and dozens of national systems) do not write to be found by suppliers. They write to be legally precise. The result is a vocabulary gap that keyword matching cannot cross:
You can patch this with longer and longer keyword lists. In practice those lists become unmanageable: too narrow and you miss the engineering-term tenders, too broad and you drown in irrelevant cleaning-contract noise. There is no setting that gets both right, because the problem is not the keywords. It is that letters are the wrong unit of comparison.
What an embedding actually is
An embedding is a list of numbers (a vector) that represents the meaning of a piece of text. A modern embedding model reads "PSA generation unit, 93% concentration" and "medical oxygen plant" and places both at nearly the same point in a high-dimensional space, because it learned, from enormous amounts of text, that they describe the same thing. "Birthday cake catering" lands far away.
Once text is a vector, "is this tender relevant to this product?" becomes a geometry question: how close are the two vectors? The standard measure is cosine similarity, a score that runs from roughly 0 (unrelated) to 1 (essentially the same meaning). No shared keyword is required. The model matches the concept.
That single shift is what turns a static catalogue into a live radar.
From catalogue to radar: how the pipeline works
The mechanics are less mysterious than they sound. The flow has four stages.
1. Vectorise your catalogue, once. Each product line becomes a short descriptive passage: what it is, what it does, the specs and standards it meets, the sectors it serves. A medical-gas line might read "oxygen concentration plant, PSA technology, 93% to 95% purity, EN ISO 7396-1 pipeline standard, for hospitals and clinics." We embed each passage into a vector and store it. This is your fingerprint, and it changes only when your offer changes.
2. Vectorise every incoming tender. As notices arrive from the portals (TED publishes well over half a million notices a year, so this is a real volume problem), each one is embedded the same way. Title, object, technical annexes, CPV codes: all of it feeds the vector.
3. Score the fit. Each tender vector is compared against each product vector with cosine similarity. The highest-scoring product determines the tender's relevance to you. A tender that mentions your exact specification scores high even with zero shared keywords; a generic catering notice scores low even if it happens to contain the word "oxygen" in a first-aid clause.
4. Rank and threshold. Scores let you sort by fit and cut off the long tail. Instead of 4,000 raw notices, you see the 20 that actually look like your business, ordered by how well they match.
The crucial property: this is recall-friendly. The PSA-versus-oxygen tender that keyword alerts missed scores high here, because the model knows the two phrases mean the same thing.
Crossing the language barrier for free
The most underrated benefit is multilingual matching. Modern embedding models are trained across many languages and map equivalent meanings to nearby vectors regardless of language. "Oxygen plant" in English, "central de oxigénio" in Portuguese, and "central de oxígeno" in Spanish land in roughly the same region of vector space.
For an exporter this is transformative. You describe your catalogue once, in one language. The system then matches it against:
No translated keyword lists. No per-country maintenance. The meaning carries across the border on its own, which is exactly what an exporter scanning Africa, Latin America, the Middle East, and Europe needs.
Why scoring beats a yes or no flag
A binary "match found" alert tells you nothing about whether to spend a morning on the document. A similarity score, paired with a short AI explanation of why it matched, lets a bid manager triage in seconds rather than minutes.
A practical setup looks like this:
Tune the thresholds to your appetite. A consultant covering several clients can set them generously; a focused SME can run them tight. Either way the score is a dial, not a wall, which is the opposite of a keyword list that you can only ever lengthen.
A short honest caveat: embeddings are very good at relevance, not at hard eligibility rules. A tender can be a perfect semantic match and still be closed to you on turnover thresholds, certifications, or geography. The score gets the right tenders in front of you fast. A human (or a follow-on eligibility check) still makes the call to bid.
How trinta puts this to work
This is the engine under the trinta feed. You load your catalogue once, we vectorise it, and from then on every new notice across the portals we track is embedded, scored against your products, and ranked. Instead of searching, you open a daily feed of matched tenders, each with a fit score and a one-line reason it surfaced, in your language, drawn from sources in several others.
The PSA-versus-oxygen miss that opened this piece is precisely the kind of tender a meaning-based radar catches and a keyword alert never will. The goal is simple: stop hunting through portals, and start reading a short list that already knows what you sell.
Frequently asked questions
What is an embedding in tender matching?
An embedding is a numerical representation of text that places similar meanings close together in mathematical space. In tender matching, both a supplier's catalogue and each published notice become embeddings, so the system compares meaning rather than wording. This is what lets a differently-phrased or differently-languaged notice match a product it genuinely fits.
How do embeddings handle multiple languages?
Multilingual embedding models place equivalent meanings from different languages near each other in the same space, so a catalogue described in English can match a notice published in French or Portuguese without translating either. For markets like Africa and Latin America, where the largest buyers do not publish in English, this is what makes coverage practical.
Why score tenders instead of flagging them yes or no?
Because relevance is a gradient, not a binary. A score lets a team triage by working down from the best fit and stopping when the day runs out, which is how bid capacity actually gets allocated. A yes or no flag forces the threshold decision to be made once, in advance, for every future notice.
Share this article
Reference
Related articles
Portugal BASE.gov Tenders: The Complete Supplier's Guide
5 min read
Brazil PNCP Explained: The National Procurement Portal Under Lei 14.133
5 min read
What Are CPV Codes and How to Use Them to Find Tenders
7 min read
France Public Procurement: How to Find Tenders on BOAMP and PLACE
7 min read
How LLMs Read Tender Documents: Extraction in Practice
5 min read
Answer Engines and Procurement: How AI Search Changes Tender Discovery
5 min read