Procedures & timing ¡ This guide was generated with the help of an AI system. Its legal references were checked against the official EU texts listed under Sources on . Next review due by , or sooner if the law changes. EU rules only. Not legal advice.
Short answer. The Common Procurement Vocabulary (CPV) is the EUâs single list of codes for what public buyers purchase. The Directive requires it wherever procurement refers to a nomenclature (Article 23), and every contract notice must give CPV codes, lot by lot (Annex V part C, point 5). For a bidder, the codes are the most reliable search filter, because theyâre the same in every language. But theyâre a blunt tool. The list was last revised in 2008: no codeâs wording mentions âcloudâ or âchargingâ, and drones appear only as âunmanned aerial vehiclesâ. That doesnât stop buyers buying these things. It means they code them under broader headings, and you canât find them by their modern name. Buyers choose codes themselves, and not always the one you would. Follow a handful of codes at the level of a class or category, not single leaf codes, and back them up with keyword searches.
EU law ¡ How a CPV code is built
The main vocabulary is a tree of 8-digit codes with a ninth check digit (Regulation 2195/2002, Annex I):
| Level | Digits that count | Example |
|---|---|---|
| Division | First 2 | 90000000-7 Sewage, refuse, cleaning and environmental services |
| Group | First 3 | 90900000-6 Cleaning and sanitation services |
| Class | First 4 | 90910000-9 Cleaning services |
| Category | First 5 | 90911000-6 Accommodation, building and window cleaning services |
| Further precision | Last 3 | 90911200-8 Building-cleaning services |
The digit after the hyphen only checks the others and adds no meaning. TEDâs expert search takes the 8 digits without it: 90910000 works, 90910000-9 is rejected. There are 45 divisions. We counted 9,454 codes in the main vocabulary of the consolidated text.
The supplementary vocabulary. Letter-and-number codes can add detail about the material or use of whatâs being bought, such as AA02-4 âAluminiumâ. Theyâre optional, and we donât use them in the searches on this page.
How old the list is. The current list comes from Regulation 213/2008. Since then, the list itself has been changed once: Regulation 2022/943 corrected the Croatian and Estonian wording of one code. (Regulation 596/2009 changed only the procedure for revising it.) The English list hasnât changed since 2008.
EU law ¡ Where the codes have legal effect
- In the notice. A contract notice must give the CPV codes, and for a procurement in lots, the codes of each lot (Annex V part C, point 5). In eForms, the notice has a main classification code (BT-262), âthe code from the classification that best characterises the purchaseâ, and may add additional classification codes (BT-263).
- For the light regime. The social and other specific services that follow the lighter rules of Articles 74 to 76, with their higher âŹ750,000 threshold, are defined in Annex XIV by CPV codes, for example education and training services from 80000000-4 to 80660000-8. So the code can tell you which rules apply (see EU procurement procedures).
Practice ¡ How the codes behave in TED search
- A parent code finds its children. We tested it: in TEDâs expert search,
classification-cpv = 90910000returned exactly the same notices asclassification-cpv = 9091*. You donât have to list every code under a class. - Additional codes count too.
classification-cpvsearches the main code and the additional codes. For cleaning (9091), contract notices published from January to September 2026 numbered 7,873 byclassification-cpv, and 6,637 by the main code of the procedure alone (main-classification-proc), when we ran both through the TED Search API on 11 October 2026. A notice where cleaning is only part of the contract may appear only under an additional code. - Codes are the same in every language. Unlike keywords, a code means the same thing in a Finnish notice and a Portuguese one.
Practice ¡ Choosing your codes
A made-up example. A facilities company offers office cleaning, window cleaning and minor maintenance of building installations.
- Start from what you sell, then find where buyers put it. Its core is 90910000-9 Cleaning services. That class already includes 90911300-9 Window-cleaning services and 90919200-4 Office cleaning services.
- Add neighbouring branches buyers use for the same work. Bundled contracts are often coded as 79993000-1 Building and facilities management services. The maintenance side sits under 50700000-2 Repair and maintenance services of building installations. And 98341130-5 Janitorial services is in another division altogether.
- Check by looking at real notices. Run the search, open a dozen contract award notices in your field, and note the codes the buyers actually used. Add any that keep coming up.
- Stay at class or category level. A search on one 8-digit leaf code misses every notice coded one level up, such as a buyer who chose 90910000-9 rather than 90919200-4.
- Keep supplies separate. Cleaning products are 39830000-9, a supply code. Leave them out unless you sell them, or theyâll fill your results.
The search for this company:
classification-cpv IN (90910000 79993000
50700000 98341130)
Our analysis ¡ Where the list runs out
Because the list hasnât been revised since 2008, some newer markets have no code of their own. To be precise about what that means: we searched the English wording of all 9,454 codes in the main vocabulary of the consolidated Regulation (45 divisions) for each word below. A zero means no codeâs wording contains the word. It doesnât mean the purchase canât be coded, only that it has to go under a broader or neighbouring code.
| Word searched | Codes whose wording contains it | Nearest codes that do exist |
|---|---|---|
| cloud | 0 | 72000000-5 IT services, 72300000-8 Data services, 72317000-0 Data storage services, 72416000-9 Application service providers |
| data centre | 0 | 72300000-8 Data services, 48800000-6 Information systems and servers |
| drone | 0 | The code exists under another name: 35613000-4 Unmanned aerial vehicles |
| charging | 0 | 34144900-7 Electric vehicles covers the vehicles, not charging points |
So search the wording with synonyms before you decide a code is missing. Where it really is missing, buyers choose the nearest code they can find, and they donât all choose the same one. In our search test, contract notices with âcloudâ in the title from January to September 2026 included cloud telephony coded under telecommunications (64), not IT (see finding EU tenders on TED). In these markets, a keyword search in the title is not optional.
Practice ¡ Common mistakes
- Following one code. One leaf code catches a fraction of the market.
- Trusting the code alone. Buyers code by their main need. A cleaning contract inside a facilities management tender is coded as facilities management.
- Ignoring the lots. Codes are given per lot. A works notice can contain a services lot that fits you.
- Reading the code as the scope. The code is a label for searching and statistics. What you have to deliver is in the description and the documents (see technical specifications).
- Forgetting it can change the rules. Where the main code is in Annex XIV, the light regime may apply.
What this page doesnât cover
National classification systems. The correspondence tables between the CPV and other statistical classifications. Utilities, concessions and defence, which use the same vocabulary under their own Directives.
Sources checked for this page
- Regulation (EC) No 2195/2002 on the Common Procurement Vocabulary, consolidated text of 10 July 2022 (Annex I)
- Commission Regulation (EU) 2022/943, correcting certain language versions of the CPV
- Directive 2014/24/EU, consolidated text of 1 January 2026 (Article 23, Article 74, Annex V part C, Annex XIV)
- Implementing Regulation (EU) 2019/1780 (eForms), consolidated text of 1 November 2024 (Annex, fields BT-26, BT-262, BT-263)
- TED help, Search and browse (searching by CPV)
This page is re-checked when any of the following happens: a revision of the CPV (Regulation (EC) No 2195/2002) or of Annex XIV to Directive 2014/24/EU; a change to the eForms fields for classification (BT-26, BT-262, BT-263). Spotted an error? See how corrections work.