David Harding, Founder · WinAContract
Published May 18, 2026 · Updated May 19, 2026
NAICS codes (the North American Industry Classification System) are how the U.S. federal government decides what your business does and whether you count as “small” for a given contract. Pick the wrong primary code and you compete against firms ten times your size. Pick the right one and a meaningful slice of the federal market is reserved exclusively for you. This guide explains what NAICS is, how to choose your codes, and why size standards matter more than most new vendors realize.
What is a NAICS code?
A six-digit numeric code that classifies businesses by their primary economic activity. The first two digits identify the sector (54 = Professional, Scientific & Technical Services), the next two narrow the subsector (5415 = Computer Systems Design and Related Services), and the last two pinpoint the specific industry (541512 = Computer Systems Design Services). There are roughly 1,000 NAICS codes; the federal government uses them to organize contract opportunities, eligibility for set-asides, and statistical reporting.
Why NAICS codes matter for federal contracting
- Every solicitation is assigned a NAICS code. Contracting officers pick one when they post the opportunity, and that code drives the size standard the contract uses.
- Size standards determine small-business eligibility per contract. You can be small under one NAICS code and large under another, depending on revenue or employee thresholds.
- Set-aside competitions filter by NAICS. An 8(a) or WOSB set-aside under NAICS 541512 is only open to certified small businesses under that specific code.
- Your SAM.gov registration lists your codes, and contracting officers use them to discover vendors during market research.
How to pick the right primary NAICS code
Your primary NAICS should be the code that generates the largest share of your revenue. The SBA expects internal consistency: if you tell SAM your primary is 541512 but 80% of your revenue is actually 541330 (engineering services), and you bid into 541512 set-asides, that’s an SBA size-protest waiting to happen.
List secondary NAICS codes for every legitimate line of business. You can have a dozen secondary codes — the SBA cares about your size status per code, not how many you list. Resist the temptation to list aspirational codes you don’t actually serve; competing as a small business under a code you don’t belong in is a fast path to a misrepresentation complaint.
Size standards — the part nobody reads
Each NAICS code has an SBA-assigned size standard, expressed either in annual revenue (most service codes) or employee count (most manufacturing codes). Published in 13 CFR § 121.201 and updated periodically — most recently raised across many codes in 2024 — these standards define the ceiling under which your business counts as “small” for that specific contract.
How revenue size standards are calculated
For revenue-based codes, the calculation is the average of your last five completed fiscal years’ gross receipts (changed from three years to five in 2022). Affiliates roll up — if you’re owned by or own another firm with common management or control, their revenue counts toward your average. The affiliation rules are dense; the SBA has issued multiple guidance documents and continues to refine them.
How employee size standards are calculated
For employee-based codes (mostly manufacturing and wholesale), the count is the average headcount per pay period over the last 24 months, including part-time and temporary staff at full count.
Common NAICS codes by industry
IT and software services
- 541511 — Custom Computer Programming Services ($34M size standard)
- 541512 — Computer Systems Design Services ($34M)
- 541513 — Computer Facilities Management Services ($34M)
- 541519 — Other Computer Related Services ($34M)
- 518210 — Data Processing, Hosting, and Related Services ($40M)
Professional services and consulting
- 541611 — Administrative Management and General Management Consulting ($24.5M)
- 541618 — Other Management Consulting Services ($21.5M)
- 541990 — All Other Professional, Scientific, and Technical Services ($19.5M)
- 541330 — Engineering Services ($25.5M; $50M for some military and aerospace work)
Construction
- 236220 — Commercial and Institutional Building Construction ($45M)
- 237310 — Highway, Street, and Bridge Construction ($45M)
- 238210 — Electrical Contractors ($19M)
- 238220 — Plumbing, Heating, and Air-Conditioning Contractors ($19M)
Facilities and janitorial
- 561210 — Facilities Support Services ($47M)
- 561720 — Janitorial Services ($22M)
- 561730 — Landscaping Services ($9.5M)
NAICS codes and set-asides
When a contracting officer set-asides a solicitation for 8(a), HUBZone, WOSB, EDWOSB, or SDVOSB competition, they pick the NAICS code first. Whether you qualify depends on your size status under that specific code. A WOSB set-aside under NAICS 541512 is only open to certified WOSBs that are also small under the $34M standard for 541512.
See our 8(a) set-aside eligibility guide for how this works in practice for the SBA’s largest set-aside program.
How to change or add NAICS codes on SAM.gov
Log in to SAM.gov, open your entity registration, and edit the Assertions section. Adding or removing NAICS codes does not trigger the full validation cycle — it’s usually live within 24 hours. Update your codes whenever you start selling a new line of business. If you go through our SAM.gov registration guide, NAICS selection happens during that initial flow.
Related reading
See how to win your first SAM.gov contract, a modern SAM.gov search alternative, the NAICS lookup tool, the contracting glossary, our 2026 statistics report, and individual NAICS pages like NAICS 541512 — Computer Systems Design.