You've registered on SAM.gov. Your entity is active. Now you need to pick NAICS codes — and this decision determines which contracts you're eligible to compete for, whether you qualify as a small business, and whether contracting officers can even find you when they search for vendors.
Most guides tell you to "search census.gov and pick codes that match your business." That's technically correct but practically incomplete. This guide goes deeper: what NAICS codes actually control, how size standards work at the code level, the mistakes contractors make when picking codes (too broad, too narrow, too many), and how to build a code profile that works for your business.
If you haven't registered on SAM.gov yet, start with our complete SAM.gov registration guide first. NAICS code selection is part of that process, and this article will give you the depth you need for that step.
What NAICS Codes Are — and What They Actually Control
NAICS stands for North American Industry Classification System. It's a standardized coding system used by the U.S., Canada, and Mexico to classify businesses by their primary economic activity. In federal contracting, NAICS codes do three distinct things:
- They define what a contract is buying. Every solicitation published on SAM.gov has a principal NAICS code assigned to it. That code describes the type of work required — not the agency buying it. A cybersecurity contract at the Department of Agriculture has the same NAICS code as a cybersecurity contract at the Department of Defense.
- They determine small business eligibility. Set-aside contracts — the ones reserved for small businesses — are evaluated using the size standard for the solicitation's assigned NAICS code. Your revenue (or employee count) is compared to that code's threshold. Whether you qualify as "small" changes depending on which code is assigned.
- They make your profile searchable. Contracting officers and market research analysts search SAM.gov by NAICS code when identifying potential vendors. If you don't have the right codes on your profile, you're invisible to agencies buying exactly what you offer.
How NAICS Codes Are Structured
NAICS codes use a hierarchical 6-digit structure. The more digits, the more specific the classification:
| Level | Digits | Example | What It Represents |
|---|---|---|---|
| Sector | 2 digits | 54 | Professional, Scientific, and Technical Services |
| Subsector | 3 digits | 541 | Professional, Scientific, and Technical Services |
| Industry Group | 4 digits | 5415 | Computer Systems Design and Related Services |
| Industry | 5 digits | 54151 | Computer Systems Design and Related Services |
| National Industry | 6 digits | 541512 | Computer Systems Design Services (the one that matters) |
SAM.gov and federal solicitations use the full 6-digit code. Always work at the 6-digit level — that's where size standards are assigned and where vendor searches are filtered. A 4-digit code is not a valid SAM.gov entry.
Identify Your Core Services First
Before touching the NAICS lookup tool, write down what your business actually delivers. Be specific. Not "IT services" — what kind? Infrastructure support? Application development? Cybersecurity assessments? Network design? Each of those maps to a different NAICS code with a different size standard.
For each service line, ask:
- What is the primary output we deliver to clients? (Software, analysis, physical construction, training, maintenance, etc.)
- What percentage of our revenue does this represent?
- Do we have documented past performance for this service?
- Can we realistically staff a federal contract in this area today?
The last two questions matter. If you add a NAICS code for a service you've never delivered, a contracting officer who asks for past performance references will find none. That's worse than not being listed under that code at all.
Get Free Weekly Contract Alerts
New federal opportunities matching your industry, delivered every week. No spam — unsubscribe any time.
Use the NAICS Lookup — Correctly
Go to census.gov/naics and use the keyword search. Search for your specific service, not your industry sector. "Software development" is better than "technology." "Construction management" is better than "construction."
When results appear, click through to the full description. Every 6-digit code has a detailed description and a list of illustrative examples. Read both. The examples are the most useful part — they show you exactly what types of businesses and activities are meant to be classified under each code.
Common NAICS codes for federal contractors
Below are the most frequently used codes across service categories. These are starting points — always verify against the full description before selecting:
| NAICS Code | Title | Typical Businesses |
|---|---|---|
| 541511 | Custom Computer Programming Services | Software developers, application builders, custom software firms |
| 541512 | Computer Systems Design Services | IT consulting, systems integration, cloud architecture, network design |
| 541519 | Other Computer Related Services | IT training, helpdesk, computer installation, data recovery |
| 541330 | Engineering Services | Civil, mechanical, electrical, structural engineering firms |
| 541611 | Administrative Mgmt & General Mgmt Consulting | Management consulting, program management, strategic advisory |
| 541620 | Environmental Consulting Services | Environmental assessment, remediation planning, compliance consulting |
| 541690 | Other Scientific & Technical Consulting | Scientific research support, technical advisory, R&D consulting |
| 561210 | Facilities Support Services | Building operations, facility management, custodial + maintenance bundles |
| 236220 | Commercial and Institutional Building Construction | General contractors, federal building construction, renovation |
| 611430 | Professional and Management Development Training | Corporate training, leadership development, workforce training contractors |
| 922120 | Police Protection | Security contractors, law enforcement support services |
| 518210 | Computing Infrastructure Providers / Data Processing | Cloud services, data center operations, managed hosting |
Understand Size Standards Before You Lock In Codes
This is the step most small business guides skip, and it's the one with the most direct financial consequence. Your size standard — the threshold that makes you eligible for small business set-aside contracts — is tied to the specific NAICS code on each solicitation.
The SBA sets size standards for every 6-digit NAICS code. They come in two forms:
- Revenue-based — Your average annual receipts over the past 3 fiscal years must be under the threshold. Common for services.
- Employee-based — Your average number of employees over the past 12 months must be under the threshold. Common for manufacturing and some technical services.
Check the current standards at the SBA size standards tool. Enter the NAICS code to see the current threshold. A few examples to illustrate the range:
| NAICS Code | Size Standard (2026) | Type |
|---|---|---|
| 541511 — Custom Programming | $34 million | Annual revenue |
| 541512 — Computer Systems Design | $34 million | Annual revenue |
| 541330 — Engineering Services | $25.5 million | Annual revenue |
| 541611 — Mgmt Consulting | $24.5 million | Annual revenue |
| 236220 — Commercial Building Construction | $45 million | Annual revenue |
| 332710 — Machine Shops | 500 employees | Employee count |
Why this matters for code selection: if you're near the size standard threshold under one code, consider whether a more specific code might have a different (possibly higher) size standard that better fits your situation. A company doing data analytics work might evaluate both 541511 and 541519 — the descriptions differ slightly, and so do the business development implications.
Get your NAICS codes right from the start
Contrax helps you select codes that match your target contracts, verify size standards, and identify which set-asides you qualify for under each code.
Try Contrax Free →Choose Your Primary Code and Structure Secondary Codes
On SAM.gov, you designate one NAICS code as your primary code. This should be the code that best represents your principal line of business — the work that makes up the majority of your revenue or the service area you're most actively pursuing in the federal market.
Picking the primary code
Your primary code matters beyond SAM.gov. Some certifications — notably the SBA's small business size determination when you're competing on a specific contract — use the solicitation's NAICS code, not your primary code. But your primary code does appear on capability statements and in some agency vendor databases, so make it the strongest, most accurate representation of your core capability.
How many secondary codes
The sweet spot is 3–8 total codes (including primary). Here's why that range works:
- Under 3 — You're likely missing relevant categories. A construction firm that only has 236220 might be missing 237310 (highway/street construction) or 238210 (electrical work) that are equally relevant.
- 3–8 — Focused, credible, defensible. You can write a capability statement that covers all listed codes with real past performance.
- Over 15 — Red flag territory. Contracting officers who run NAICS searches see every vendor who appears. A profile with 40 codes across unrelated industries reads as a company that will claim to do anything to win a contract — which is a signal to move on to the next vendor.
Common Matching Mistakes — and How to Avoid Them
These are the patterns that cost small businesses opportunities:
Picking too broad
541610 (Management Consulting Services) is a broad category. 541611 (Administrative Management and General Management Consulting) is more specific. 541618 (Other Management Consulting Services) covers a different slice. If your work is IT strategy consulting, none of these might be right — 541512 or 541611 would both be possibilities, and you need to read the descriptions to know which fits.
Going too broad means your vendor profile appears in searches where you're not a fit, and disappears from searches where you are.
Picking too narrow
The inverse problem: a company that writes proposal support and business development materials for other contractors lists only 541430 (Graphic Design Services) because proposals involve documents. In reality, their work fits better under 541611 or even 541910 (Market Research and Public Opinion Polling). Being too specific means missing the codes agencies actually use for your type of work.
Not cross-referencing with actual solicitations
The definitive test for any code: search SAM.gov for contracts you'd actually want to bid on. What NAICS code is assigned to them? If you see the same code appear repeatedly on relevant solicitations, that code belongs on your profile — regardless of what the NAICS description says in the abstract.
Skipping code updates after the business evolves
A technology firm that was pure software development three years ago (541511) may now deliver cloud infrastructure work (518210) and cybersecurity services (541519). The business evolved; the SAM.gov profile didn't. Review and update your NAICS codes every time you renew your annual registration — it takes five minutes and directly affects which solicitations you see.
Contrax scans SAM.gov continuously and surfaces opportunities matching your NAICS profile — so you stop guessing and start bidding.
Try Contrax Free →How Automated NAICS Matching Works
The manual approach to NAICS matching — search the census lookup, cross-reference with solicitations, check size standards — works, but it's slow and requires ongoing maintenance as the federal market evolves and agencies shift how they categorize contracts.
This is the problem Contrax was built to solve. Rather than requiring you to pre-select NAICS codes and hope you got them right, Contrax analyzes your business description and existing NAICS profile against the current pool of active solicitations to surface opportunities you're genuinely qualified for. It factors in:
- Your current NAICS codes and size standards
- Keywords and service descriptions from your profile
- Set-aside eligibility flags (small business, WOSB, SDVOSB, etc.)
- Contract value ranges relevant to your stage
When a solicitation posts that matches your profile — including NAICS codes you might not have known to look for — Contrax surfaces it immediately, giving you the full response window rather than finding it three days before closing.
If you've just completed SAM.gov registration, connecting your NAICS codes to a live opportunity feed is the natural next step. Before you start evaluating every posting that matches your codes, read our guide on federal contract opportunity matching — it covers how to build a must-have vs. nice-to-have filter and spot the red flags that signal a wasted bid. And once you find a solicitation worth pursuing, read our RFP response automation guide to understand how to build a competitive proposal without burning a week on setup.
Get Free Weekly Contract Alerts
New federal opportunities matching your industry, delivered every week. No spam — unsubscribe any time.
See which contracts match your NAICS codes today
Contrax scans SAM.gov continuously and matches live solicitations to your NAICS profile — so you find relevant opportunities when they post, not after they close.
Try Contrax Free →Build a NAICS code profile that wins contracts
Contrax helps you select and manage the right NAICS codes for your target contracts — and continuously matches new SAM.gov opportunities to your profile.
Try Contrax Free →