NAICS Codes for Software Companies: How to Choose, and What They Decide
#naics#small-business#saas#federal-market
By Philip Luca — Founder of GovExpress; prior domain experience at Bloomberg Government and GovWin IQ.
Most software companies pick their NAICS codes once, in the middle of a SAM.gov registration, and never look at them again. That is a mistake, because the codes do more than describe you. They decide which searches find you, which small-business size standard you are measured against, and whether you can compete for a set-aside at all.
This guide covers the codes that fit software, the rule most first-time sellers get backwards, and how to check your choice against what agencies actually buy.
The codes that fit software
Five codes cover nearly every software company selling to the federal government:
| NAICS | Title | Typical fit |
|---|---|---|
| 513210 | Software Publishers | SaaS and packaged software you build once and sell many times |
| 541511 | Custom Computer Programming Services | Writing software to a customer’s specification |
| 541512 | Computer Systems Design Services | Integrating software, hardware and networks into a working system |
| 541519 | Other Computer Related Services | IT services that fit nowhere else, and IT value-added reselling |
| 518210 | Computing Infrastructure Providers, Data Processing, Web Hosting, and Related Services | Hosting, managed infrastructure and data processing |
Two neighbours come up often enough to know: 541513 (Computer Facilities Management Services), for operating a customer’s systems or data centre on site, and 511210, the old Software Publishers code.
Why 511210 still shows up. NAICS is revised every five years. The 2022 revision moved Software Publishers from 511210 to 513210, and the SBA adopted the 2022 codes for its size standards. Older awards in federal spending data, and older registrations that were never updated, still carry 511210. If you are searching award history for software buyers, search both codes. If your own registration still lists 511210, update it.
The rule most sellers get backwards
Your registration lists the codes you choose. But for any individual contract, the code that matters is the one the contracting officer assigns to the solicitation.
Every federal solicitation carries a single NAICS code, chosen by the contracting officer to describe the principal purpose of the purchase. That code carries a size standard, and that size standard is the one that decides whether you count as small for that procurement. Your primary code, the order of your list, and how many codes you assert do not change it.
Three consequences follow:
- You can be small on one bid and large on the next. Size standards differ by code. A company can sit under the standard for one software code and over it for another, so its small-business status is a per-solicitation answer, not a company-wide fact.
- A code missing from your registration is a gap to fix before you bid. If a solicitation uses a code you never asserted, add it to your registration (if it genuinely describes what you sell) before you submit, so your representations cover the procurement.
- The code on a solicitation can be challenged. If a contracting officer assigns a code that clearly doesn’t describe the work, an interested party can appeal the NAICS designation to the SBA’s Office of Hearings and Appeals. The window is short (days after the solicitation issues, not weeks), so this only works if you are reading solicitations as they appear.
How size is measured for software codes
The software codes above use a receipts-based size standard: a dollar ceiling on average annual revenue, not a headcount. Two details matter:
- Receipts are averaged over five years, not taken from your most recent year. A company that had one strong year may still be small on the average, and a company that has been shrinking may still be large.
- Affiliates count. Receipts are measured for your company together with its affiliates. A startup controlled by a larger investor or parent can be pushed over a standard by receipts that never touch its own books.
There is one notable exception inside 541519. For information technology value-added resellers, the SBA applies an employee-based standard rather than a receipts one. If you resell hardware and software with your own services added, check whether the reseller exception is the standard that applies to you.
The dollar figures themselves are set by the SBA and adjusted from time to time, so we don’t reproduce them here. Read them from the SBA’s current table of size standards for each code you assert, and recheck when you renew your registration each year.
Choosing your codes
Start with what you sell, not with what’s popular. A SaaS company is most naturally 513210. A company that builds bespoke systems is 541511. A company whose deliverable is an integrated, working environment is 541512. Choose the code that describes the work a contracting officer would read in your proposal.
Pick a primary and keep the list short. Assert the codes that genuinely describe your offering, typically two to four for a software company. A long list of loosely related codes reads to a buyer doing market research as a company without a clear product.
Assert the codes your buyers use. If you sell a SaaS product but every relevant contract in your space was issued under 541512 or 541519, those codes belong on your registration too, because that is where your opportunities and your size determination will come from.
Checking your choice against award history
Every federal contract award records the NAICS code it was issued under, and that history is public. Before you settle your codes, look at the awards for the kind of thing you sell:
- Which codes appear on them. If the contracts for your product category cluster on one or two codes, those codes are where buyers expect to find you.
- Which agencies issue them. Each code page here lists the agencies that award the most under it. Start with 513210, 541511 or 541512.
- How much was set aside for small business. A code with a history of set-aside awards is worth more to a qualifying small business than one that is mostly full and open.
The NAICS index lists every code we profile.
What your codes don’t do
A NAICS code is a classification, not a qualification. Asserting 541512 doesn’t make you an integrator in a buyer’s eyes, and qualifying as small under a code doesn’t make you eligible for a set-aside program like 8(a) or HUBZone, which have their own requirements. Size status in SAM.gov is also self-certified: you represent it, and it can be protested. Treat it as a statement you must be able to support, not a setting.
Once your codes are right, the next question is what else a federal buyer will check. Score your company’s federal readiness to see your registration record alongside the other categories buyers review.
Related reading
- SAM.gov Registration for Software Companies: A Step-by-Step Guide
- Small Business Set-Asides for Software Companies: 8(a), SDVOSB, HUBZone and WOSB
- Federal Contract Vehicles for Software Companies: GWACs, IDIQs, BPAs and Where to Start
- How to Estimate Your Federal Total Addressable Market as an ISV
- Glossary: NAICS · SAM.gov
The CMMC brief
What the Phase 2 suspension changed and what it did not — the obligations that still bind, the assessment path a contract puts you on, the scoping decision that drives the cost, and the sequence that fits inside a pipeline. Sourced from the primary record.