What Are CPV Codes? The Complete Guide to Common Procurement Vocabulary
CPV codescommon procurement vocabularyEU procurementtender classificationTEDpublic procurement guide

What Are CPV Codes? The Complete Guide to Common Procurement Vocabulary

A complete guide to CPV codes — what they are, how the classification system works, how to find the right code for any tender, and why they matter for suppliers and public buyers across the EU.

Updated:8 min read

If you have ever read a public tender notice from a European contracting authority, you will have noticed a five-to-eight digit number followed by a short description — something like 72212000-4 — Programming services of application software. That number is a CPV code, and it is the universal language of European public procurement.

This guide explains exactly what CPV codes are, how the classification system is structured, and how both buyers and suppliers should use them.

What Is a CPV Code?

CPV stands for Common Procurement Vocabulary. It is the official classification system for public contracts in the European Union. Every contract notice published in the Official Journal of the EU (the Supplement, also known as TED — Tenders Electronic Daily) must include at least one CPV code that describes the subject matter of the procurement.

The system was established by Regulation (EC) No 2195/2002 and has been in force since 2006. It replaced dozens of national classification systems with a single, multilingual vocabulary covering all possible goods, services, and works a public authority might purchase.

CPV codes exist in all 24 official EU languages, meaning a Finnish hospital and a Portuguese city council can both publish tenders for medical equipment under the same code — making cross-border search possible for any supplier.

How the CPV System Is Structured

The CPV vocabulary has two components: the Main Vocabulary and the Supplementary Vocabulary.

Main Vocabulary

The Main Vocabulary uses a tree structure with five levels. Each code is an 8-digit number plus a 1-digit check number (the digit after the hyphen), giving a 9-character code in total.

LevelDigits usedExampleMeaning
DivisionFirst 272000000-5IT services
GroupFirst 372200000-7Software programming and consultancy services
ClassFirst 472210000-0Programming services
CategoryFirst 572212000-4Programming services of application software
Sub-categoryFirst 872212110-0Point of sale (POS) software development services

The eight main divisions cover the entire range of public expenditure:

  • 03000000 – 09999999: Agricultural, farming, fishing, forestry and related products
  • 14000000 – 16999999: Mining, basic metals and related products
  • 18000000 – 19999999: Clothing, footwear, luggage articles and accessories
  • 22000000 – 23999999: Printed matter and related products
  • 24000000 – 25999999: Chemical products
  • 30000000 – 44999999: Office and computer machinery, equipment and supplies
  • 45000000 – 45999999: Construction work
  • 48000000 – 48999999: Software packages and information systems
  • 50000000 – 55999999: Repair and maintenance services
  • 60000000 – 99999999: Transport, postal, professional, financial and other services

Supplementary Vocabulary

The Supplementary Vocabulary adds optional attributes to Main Vocabulary codes. These codes begin with a letter (e.g. AA01, FA03) and describe additional characteristics like size, material, or intended use. Their use is optional and far less common than main codes.

The Check Digit

The single digit after the hyphen is a mathematical check digit calculated from the eight preceding digits. It has no procurement meaning of its own — it simply allows computer systems to detect typos or data entry errors. You can ignore it for search purposes; all that matters for finding the right contract category is the 8-digit code itself.

How to Find the Right CPV Code

Choosing the correct CPV code matters enormously. Buyers who misclassify a contract may receive fewer bids; suppliers who search by the wrong code miss relevant opportunities. Here is a practical approach:

1. Start with the product or service name

Use a CPV search tool (like this one at cpvcodes.eu) to search by keyword. Try synonyms: "cleaning" and "janitorial" may return different results. Look at the full description, not just the top-level label.

2. Navigate the hierarchy

If keyword search returns too many results, browse the division tree. Find the relevant division (e.g. 90000000 for sewage, refuse, cleaning services), then drill down to the most specific category that fits.

3. Use the most specific code that fits

Do not use a broad code (e.g. 72000000 — IT services) when a precise one exists (e.g. 72212000 — Application software programming). Specificity helps both buyers and suppliers. However, do not force an over-specific code that does not accurately describe the subject matter.

4. Include additional CPV codes for mixed contracts

A contract covering both software development and IT support may have a main CPV code of 72212000 and an additional CPV code of 72611000 (Technical computer support services). Most eProcurement platforms accept multiple codes per notice.

Why CPV Codes Matter for Suppliers

Automatic tender alerts

Most tender monitoring platforms — including TED itself — let you subscribe to email or RSS alerts by CPV code. Once you know which codes cover your products or services, you can receive every relevant EU-wide opportunity automatically without manual searching.

Market intelligence

Historical contract award notices are searchable by CPV code. By analysing past awards in your category, you can understand market size, typical contract values, incumbent suppliers, and renewal cycles — all valuable intelligence when planning a bid.

Pre-market engagement

When responding to Prior Information Notices (PINs) or market consultations, quoting the correct CPV code signals to the buyer that you understand the procurement correctly.

Why CPV Codes Matter for Contracting Authorities

Legal obligation

EU procurement directives (2014/24/EU for public sector, 2014/25/EU for utilities) require CPV codes on all above-threshold notices. Missing or incorrect codes can result in challenges to the procurement process.

Accurate market outreach

The right CPV code ensures your notice reaches suppliers who have set up alerts for that category. A miscoded IT contract buried in the construction division will receive fewer — and less relevant — bids.

Data and spend analysis

Finance and audit teams use CPV-coded contract data for spend analytics, detecting unusual patterns or concentrations in supplier relationships, and benchmarking against peer institutions.

CPV Codes and the EU Thresholds

Whether a contract must be advertised across the EU depends on its estimated value and its CPV classification. The European Commission updates thresholds roughly every two years. For 2024-2025, the main thresholds are:

  • Works contracts: EUR 5,538,000
  • Supply and service contracts (central government): EUR 143,000
  • Supply and service contracts (sub-central authorities): EUR 221,000
  • Utilities (supply, services, works): EUR 443,000 / EUR 5,538,000

Contracts below these thresholds may still require national publication, but CPV codes remain good practice at all values.

Common Mistakes with CPV Codes

  • Using a division-level code for a specific purchase. Buying office chairs under 39000000 (Furniture and related items) instead of 39113100 (Armchairs) reduces search relevance.
  • Copying codes from a previous contract without review. A framework renewed after several years may cover services that now have more accurate codes.
  • Confusing works, supplies, and services. A maintenance service and the supply of spare parts have very different CPV roots; mixing them distorts spend reporting.
  • Ignoring the supplementary vocabulary entirely. For large framework agreements, supplementary codes can significantly improve the precision of what suppliers actually see.

How This Site Can Help

CPVcodes.eu provides a fast, multilingual search across the entire CPV tree. You can:

  • Search by keyword in any of the 24 EU official languages
  • Browse the full hierarchy from division to sub-category
  • View the official description and code for any entry
  • Find related codes at adjacent levels of the tree

Whether you are a procurement officer classifying a new contract or a supplier identifying which codes to monitor, accurate CPV classification is the foundation of effective public procurement.

Summary

CPV codes are the standardised classification language of European public procurement. They make cross-border tendering possible, power automated supplier alert systems, and underpin spend analytics for public institutions. Understanding how the eight-digit hierarchy works — and how to find the most precise code for any given subject matter — is a core skill for anyone working in or with the public sector.

CPV codescommon procurement vocabularyEU procurementtender classificationTEDpublic procurement guide

Related articles

What Is Public Procurement? A Complete Guide
public procurementEU procurement directivesgovernment contracts

Public procurement is how governments buy the goods, services, and works that keep public life running. This guide explains the full process, the legal framework, and how businesses of every size can participate effectively.

12 min read
Read
How to Select the Correct CPV Code: A Practical Guide for Contracting Authorities
CPV codeshow to select CPV codecontracting authority

Contracting authorities must correctly identify the subject of a contract and select the most precise main CPV code and any supplementary codes. This step-by-step guide explains how to do it right — and the common mistakes that cause tenders to miss their target suppliers.

7 min read
Read