French NAF codes: the exact company count

You need a list of French companies in one specific trade, and you did the sensible thing: instead of guessing keywords, you searched for companies by French NAF code, the official activity classification. Then the search turns into a loop. A directory shows twelve results and asks for an account to see the thirteenth. An article reprints a list of codes without saying where it came from or when. A tool's landing page promises "millions of companies" and never answers the one question you actually have: how many exist under your code, and will I end up with any way to reach them?

This page answers both, with dated numbers. The legal framework is quoted from INSEE's own pages rather than from an article summarising them, and the volumes were counted on 15 September 2026 against our copy of the Sirene register, code by code.

Fact one: the code you write down today changes on 1 January 2027

This is the most useful thing on this page, and it is missing almost everywhere. France is changing its activity nomenclature, and with it every code in the register. INSEE says so plainly in its press release of 14 January 2026: every unit registered in Sirene, micro-entrepreneurs included, will be assigned a new APE code from 1 January 2027. The same text adds that throughout 2026, only the current APE code remains official.

The incoming nomenclature is called NAF 2025. On its presentation page, last updated 12 February 2026, INSEE states that it was adopted in December 2023, approved by Eurostat in May 2024, enters into force first in the statistical registers from 2026, and becomes the reference nomenclature for assigning APE codes on 1 January 2027. Since January 2026 a company can already look up, for information only, the future code it will receive, by entering its SIREN number on the online service INSEE runs for that purpose.

What this means for you fits in one sentence: an undated list of NAF codes found on the web is a bet, and its expiry date is already known. If you are building a file now, record the code and the official label next to it. The label will let you map your rows onto the new nomenclature after the switch. The code alone will not.

Fact two: APE and NAF are not the same thing

The two terms circulate as synonyms, in search queries as much as in conversation. They describe different objects, and the difference changes what you get back.

NAF is the nomenclature, meaning the rulebook. In its official definition, last updated 10 August 2026, INSEE writes that the classification of economic activities in force in France since 1 January 2008 is the French activity nomenclature, NAF rev. 2. It mirrors the European NACE rev. 2 with one extra level specific to France, the sub-classes, and it "comporte cinq niveaux comprenant respectivement : 21, 88, 272, 615 et 732 postes", five levels holding 21, 88, 272, 615 and 732 entries respectively. That last figure is the one that matters here: 732 sub-classes, the finest level, the five-character codes.

APE is the value a single record carries. In the press release quoted above, INSEE describes it as the code assigned by INSEE that identifies the main activity of a company or of an establishment, based on the NAF nomenclature, recorded in the Sirene register, and made of five characters: four digits matching the European code plus a final letter specific to France. So NAF is the catalogue, APE is the label stuck on a company and on each of its establishments.

Two consequences for anyone building a list. First, an establishment carries its own code, which can differ from its head office's: filtering on a code returns establishments, not companies. Second, INSEE describes the APE code as a reference point for public statistics and for classifying companies by sector. It designates the main activity, not every activity. A company doing your trade as a secondary activity will not appear under your code.

Fact three: the exact count, code by code, on 15 September 2026

Here is the part nobody publishes, because it requires holding the whole register and agreeing to write a date beside the number. We host a copy of the Sirene register, built on INSEE's 1 September 2026 stock file and kept current by the daily update feeds, applied through 13 September 2026. Counted on 15 September 2026, over active and publicly listed establishments.

It holds 14,320,911 establishments. They carry 735 distinct activity code values, of which 729 of the 732 NAF rev. 2 sub-classes: three sub-classes are carried by no active establishment at all (05.20Z, lignite mining, plus 98.10Z and 98.20Z, household activities for own use). The six remaining values sit outside the current nomenclature, five codes inherited from the pre-2008 version and one technical placeholder, carried by eight records in total out of fourteen million. That is the measured proof that the stock of codes is not frozen, and a preview of what the 2027 switch will do at scale.

A few common codes, counted the same day over the same perimeter:

CodeOfficial INSEE labelEstablishmentsDistinct companies
56.10ATraditional restaurants133,866127,482
68.31ZReal estate agencies121,553109,080
43.21AElectrical installation work111,024107,108
96.02AHairdressing98,96594,861
62.01ZComputer programming97,16394,666
71.12BEngineering and technical studies89,35879,273
43.22AWater and gas installation work63,23261,199
26.51BScientific and technical instrument manufacturing1,125948

Read the fourth column before the third. Under 68.31Z, 121,553 establishments resolve to 109,080 companies: 12,473 rows more than there are real businesses, because an agency with several branches is counted once per establishment. If your outreach is one message per company, those are 12,473 potential duplicates. The bottom row shows the other end of the range: 26.51B gathers only 1,125 establishments in the whole country. "Millions of companies" means nothing until you have looked at your own code.

What the register does not hold, and what that costs you

Then comes the moment the list has to do some work. Sirene is a legal register: it carries the name, the address, the SIREN and SIRET identifiers, the activity code and its label, the headcount bracket, the creation date and whether the establishment is the head office. It carries no phone number, no email address, no website. None at all. This is not a gap in collection waiting to be filled, it is the nature of the register, and it is why every free list built from an activity code stops at the same place: you know who exists, you do not know how to reach them.

So the work splits in two. The activity code decides who belongs on the list; other sources make those rows reachable. Depending on what you need, that means the professional email finder built for the French GDPR framework to resolve an address from a company domain, phone number enrichment pulled from the company's own website when the record holds none, or the Google Maps scraper with CSV export when the target is local and the public listing already shows a number. To go deeper on the administrative side, legal company data, legal form and directors attaches to each row by exact SIRET, with no fuzzy name matching.

Starting from a NAF code in outsend

The "companies by activity" source reads that same register, hosted on our side. You enter one or more activities, either the code itself (43.22A, with or without the dot) or the trade in plain language, and one or more French areas: a department, a region, a city with a radius, a postcode, or the whole country. Two optional filters tighten the target: head offices only, and companies created after a given date, which is useful when you are after recently formed businesses.

The output is a file you can use straight away, in CSV, JSON or XLSX, carrying the name, address, SIREN, SIRET, activity code and its official label, headcount bracket, creation date and head office flag. Deduplication runs on SIRET inside the job, so a region split across several departments never writes the same establishment twice. This source is built on French companies, and it can act as the starting point of a longer sequence if you want to qualify rows in the same run. outsend is in alpha: access is granted on application, and it is free. You can request free alpha access and run the count on your own code.

If you are prospecting without a registered company behind you, the guides to prospecting without a SIRET number take the question from the start. For the vocabulary used here, the prospecting glossary defines the terms, and the prospecting tool comparisons place the other ways of building a list. If you want to understand the identifiers themselves, SIRET and SIREN numbers explained covers how French companies are identified, and our review of 2026 company formations in the Sirene register covers the register's demography.

Frequently asked questions

Can I get a list of companies by NAF code for free?

Yes. INSEE publishes the Sirene register as open data, and establishments that have not opted out of publication appear with their name, address and activity code. So the free part covers identity and location. It does not cover contact details, because they are not in the register at all. That is the wall behind every "free list of companies by NAF code" search.

What is the difference between a NAF code and an APE code?

NAF is the nomenclature; APE is the code assigned from it. A company does not "have a NAF", it carries an APE code drawn from NAF rev. 2. In everyday use the two phrases point at the same five-character value, and searching by APE code or by NAF code produces exactly the same filter.

How many companies sit under one NAF code?

Anywhere from a few hundred to well over a hundred thousand. On 15 September 2026, across active and publicly listed establishments, 56.10A (traditional restaurants) held 133,866 and 26.51B (scientific and technical instruments) held 1,125. The full count covers 729 of the 732 sub-classes. Mind the question you are asking: the number of establishments always exceeds the number of companies, sometimes by more than 10%.

Will French APE codes change, and when?

Yes, for every unit in the Sirene register, on 1 January 2027. INSEE states that the new code takes effect "sans créer de droit ni d'obligation supplémentaire par rapport à l'ancien code", without creating any additional right or obligation compared with the old one, and that since January 2026 an online form lets a company ask for a review if its future code looks wrong. For as long as 2026 runs, only the current code is official.

Do I have to rebuild a list I built by code this year?

The companies on it do not become wrong, but the criterion that produced it changes value. The useful habit is to keep the official label beside the code in your file, and to add the extraction date. With those two columns a 2026 list maps onto the 2027 nomenclature without drama. Without them, you rebuild it blind.

Why does the list contain no phone numbers or emails?

Because the register holds none: it is an incorporation registry, not a contact directory. Contact details necessarily come from somewhere else, the company's website, its public listing or the domain.

Run this on your own lists

This step and the others in a single pipeline. The alpha is free.

Request free alpha access