NAICS Codes for Government Contractors: How to Choose the Right One
Selecting the correct North American Industry Classification System (NAICS) code is one of the most consequential decisions a government contractor makes before registering in SAM.gov or pursuing a federal opportunity. The code assigned to a contract determines whether a firm qualifies as a small business under Small Business Administration size standards, which set-aside programs it can access, and how the federal government categorizes the work it performs. This page covers how NAICS codes are structured, how they are applied in federal contracting, the most common selection scenarios, and where the boundaries of acceptable code assignment fall.
Definition and scope
NAICS codes are a standardized classification system maintained jointly by the U.S. Census Bureau, Statistics Canada, and Mexico's INEGI. The system organizes economic activity into a hierarchical structure of 20 sectors, broken into industry groups, industries, and 6-digit national industry codes. The United States uses the 6-digit level for federal procurement purposes.
In the federal contracting context, NAICS codes serve two distinct functions:
- Solicitation classification — The contracting officer assigns a NAICS code to each solicitation to define the principal purpose of the contract (FAR 19.102).
- Firm-level registration — Contractors list one or more NAICS codes in their SAM registration to indicate the industries in which they offer goods or services.
The SBA's table of small business size standards (13 C.F.R. Part 121) ties directly to NAICS codes. Each 6-digit code carries either an employee-count threshold (commonly 500 or 1,500 employees for manufacturing) or an average annual revenue threshold (ranging from $2.25 million to $47 million depending on the industry (SBA Table of Small Business Size Standards)). A firm classified as small under one NAICS code may be other-than-small under a different code — even for work that appears functionally similar.
How it works
When a contracting officer prepares a solicitation, they assign a single primary NAICS code that best describes the principal purpose of the acquisition. That assignment controls which size standard applies for the purpose of determining small business eligibility on that contract. Offerors then self-certify their size status against that specific code and threshold.
The process for selecting a NAICS code follows a defined hierarchy:
- Identify the principal purpose — Determine the dominant deliverable or service. If a contract covers both product delivery and ongoing maintenance, the code follows whichever component represents the greater portion of contract value.
- Locate the 6-digit code — Use the U.S. Census Bureau NAICS Search tool or the NAICS manual to identify the most specific applicable code.
- Check the corresponding size standard — Cross-reference the selected code against the SBA size standards table to understand the applicable revenue or employee threshold.
- Verify against SAM registration — Confirm the code is listed in the firm's active SAM.gov profile before submitting an offer.
Contracting officers are required under FAR 19.102(b) to select the NAICS code that best describes the principal nature of the acquisition — not the code that most advantages a particular set of competitors. Contractors who believe a contracting officer has assigned an improper NAICS code may challenge the assignment through the bid protest process or by filing a formal size determination request with the SBA.
Common scenarios
Scenario 1: IT services firm pursuing a mixed hardware/software contract
A firm offering both software development and hardware installation faces a classification decision when the solicitation combines both elements. NAICS 541512 (Computer Systems Design Services) applies when the dominant value is professional services; NAICS 334111 (Electronic Computer Manufacturing) would apply if hardware supply dominates. The distinction matters because size standards differ — 541512 carries a $34 million revenue ceiling while 334111 applies a 1,250-employee threshold (SBA Table of Small Business Size Standards).
Scenario 2: Construction contractor pursuing federal building work
Federal construction solicitations frequently use codes from the 236000 or 237000 NAICS ranges. A general contractor pursuing a $15 million federal renovation contract would look to NAICS 236220 (Commercial and Institutional Building Construction), which carries a $45 million average annual revenue size standard. A specialty electrical subcontractor on the same project would use NAICS 238210 (Electrical Contractors), which carries a $19 million threshold. These two firms operate under different compliance obligations depending on their role.
Scenario 3: Professional services firm with multiple practice areas
A consulting firm offering management advisory services, information technology consulting, and training services can list all three corresponding NAICS codes (541611, 541512, 611430) in SAM.gov. However, when responding to a specific solicitation, only the contracting officer's assigned code governs size certification for that competition. A firm that is small under 541611 (revenue threshold: $24 million) may be other-than-small under 541512 ($34 million) if its revenue profile differs between those lines of business.
Decision boundaries
The most common error in NAICS code selection is choosing a code based on familiarity or favorable size standards rather than on the actual principal purpose of the work. The SBA's Office of Hearings and Appeals (OHA) reviews size determination protests and has established a body of decisions holding that self-certification against an incorrect NAICS code — when done to gain small business eligibility — can constitute a basis for disqualification or referral to the Inspector General under the False Claims Act.
Key boundaries to observe:
- One code per solicitation, set by the contracting officer — A contractor cannot substitute a preferred NAICS code on an offer when the solicitation designates a different one.
- Size is measured at the time of offer — For most programs, size certification is as of the date the offer is submitted, not the contract award date (13 C.F.R. § 121.404).
- Affiliated entities count toward size — The SBA aggregates employees or revenues across affiliated firms. A subsidiary of a large corporation cannot self-certify as small simply because the subsidiary's own revenue falls below the threshold.
- Primary NAICS code in SAM does not control solicitation eligibility — The code designated on a solicitation controls, regardless of which code a firm lists as its primary in SAM.
Contractors navigating the full landscape of federal registration, set-aside programs, and certification requirements will find that NAICS code accuracy underlies nearly every downstream compliance decision. The federal acquisition regulation overview provides the statutory framework within which these classifications operate, and the government contractor resource index maps the full scope of related compliance topics.