Federal buyers do not find you by your company name. Before a solicitation is ever posted, contracting officers and small-business specialists do market research, and a primary way they do it is by keyword-searching SAM.gov and the SBA Small Business Search (SBS, formerly the Dynamic Small Business Search). For small-business set-asides that market research is a requirement, not a courtesy (see FAR Part 19). If your SAM and SBS profiles do not use the words a buyer types, you do not come up in that search, and you never hear about the work. One federal-registration practice estimates that roughly four in five small-business profiles are missing the information that gets them found. This guide covers how buyers actually search, which fields carry the keywords, and how to pull the exact terms used in your NAICS from the last 24 months of real solicitations.
There is a step that happens before any bid: market research. A contracting officer with a requirement, or a prime with a subcontracting plan to fill, needs to know which vendors can do the work. They do not start with your company name. They start with a NAICS code and a keyword.
The SBS (still widely called the DSBS) is a public directory of small-business vendors maintained by the SBA and populated from your SAM.gov registration. Contracting officials use it to source vendors and to confirm set-aside eligibility before a small-business award. It is not an optional marketing channel; it is a system buyers are expected to search. Prime contractors carrying a subcontracting plan use the same database to find small businesses to team with.
The typical search is a NAICS code or a keyword, or both, filtered by socioeconomic status (small business, SDVOSB, 8(a), HUBZone, WOSB), certifications, and location. The NAICS gets you into the pool. The keyword and the capability narrative are what decide whether you surface within it and whether the buyer reads far enough to contact you.
Your SBS profile has a dedicated keywords field that holds up to 525 characters. Two more fields, the capability narrative and the special equipment or material field, hold up to 2,500 characters each and are also keyword-searchable. That is the whole surface a keyword search matches against. Filling it with the terms buyers actually type is the difference between being in the results and being invisible.
The single most common reason a complete-looking profile generates no calls is the keywords. They are either too generic or they do not match the language of the work. "Buyers don't search for you by name; they search for what you do," and a buyer is not typing "consulting" or "IT." They are typing the specific thing they need.
A useful way to see the gap: if you sell tractors and your profile only says "tractor," you show up for "tractor" and nothing else. Add "John Deere" and you also show up for the manufacturer searches. The federal-contracting version of that gap is everywhere in the data. In janitorial services, buyers phrase the work as "janitorial services" on some solicitations and "custodial services" on others; a profile that only says one misses every search for the other.
Instead of guessing, read the demand. Every solicitation a federal agency posts is written by a buyer describing what they want to buy. Across a NAICS code, the recurring phrases in those solicitations are, quite literally, the language buyers use. The positioning endpoint extracts them from the last 24 months of SAM.gov solicitations in a code and returns them ranked by how many notices use each one, alongside the set-aside makeup and the offices doing the buying. Every response below is a real call.
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://govconapi.com/api/v1/naics/561720/positioning"
{
"naics_code": "561720",
"notices": 3234,
"vocabulary": [
{ "phrase": "janitorial services", "notices": 1386 },
{ "phrase": "custodial services", "notices": 460 },
{ "phrase": "ranger district", "notices": 208 },
{ "phrase": "cleaning services", "notices": 144 },
{ "phrase": "window washing", "notices": 40 }
],
"set_asides": [
{ "set_aside": "Total Small Business Set-Aside (FAR 19.5)", "notices": 1708, "share_pct": 52.8 },
{ "set_aside": "Service-Disabled Veteran-Owned Small Business Set Aside", "notices": 236, "share_pct": 7.3 }
],
"top_buyers": [
{ "agency": "DEPT OF DEFENSE ... MICC FT MCCOY", "notices": 125 },
{ "agency": "AGRICULTURE ... FOREST SERVICE", "notices": 49 }
],
"market_profile": "/api/v1/naics/561720",
"opportunities": "/api/v1/opportunities/search?naics=561720"
}
For NAICS 561720 (Janitorial Services), the two dominant phrasings are "janitorial services" and "custodial services." A profile that lists only "janitorial" is absent from every search a buyer runs for "custodial." The tail ("ranger district," "national forest," "national cemetery," "window washing") tells you who buys it and the adjacent services they ask for in the same breath.
The same call reports how the market splits across set-aside programs, by share of notices. Janitorial runs 52.8% Total Small Business Set-Aside with a further 7.3% reserved for Service-Disabled Veteran-Owned Small Business. In a market that heavily set aside, a small-business or SDVOSB certification is doing more for your visibility than any keyword. Contrast Computer Systems Design (NAICS 541512), where roughly four in five notices are full and open: there a certification thins the field far less, and you compete on capability and past performance.
Capability narratives that name the agencies you serve read as credible to the buyer who serves the same agency. The top_buyers list is the offices actually posting the work in that NAICS, so you know who to name and who to reach out to. The opportunities link goes to the current solicitations in the code; responding to a sources-sought or RFI notice there puts you in front of the contracting team at the earliest stage, before the competition is set. That is one of the highest-leverage things a small business can do.
Use the specific terms contracting officers use to describe the work you do, not generic labels like "consulting" or "IT services." The most reliable source of those terms is the solicitations agencies have already posted in your NAICS code: the recurring phrases there are the language buyers search on. Include the variants you might not think of, such as "custodial" alongside "janitorial."
Before posting a solicitation, they do market research, largely by keyword and NAICS search in SAM.gov and the SBA Small Business Search (SBS, formerly DSBS), filtered by set-aside status, certifications, and location. They read the keyword field and capability narrative to decide who to shortlist or contact. For small-business set-asides this market research is required.
It is a public directory of small-business vendors maintained by the SBA and populated from your SAM.gov registration. Contracting officers use it to source vendors and confirm set-aside eligibility, and prime contractors use it to find small businesses to subcontract with. Your keyword field, capability narrative, and certifications are the fields buyers search and read.
The most common reasons are weak keywords and a thin capability narrative. If your keywords are too generic or do not match the words buyers type, you do not surface in their market-research searches, even with an active registration. A quick self-check: since your last renewal, have any federal buyers contacted you after finding you in market research? If not, the profile content is the place to look first.
No. Keyword and profile optimization improves your discoverability, which raises the probability that buyers find and consider you. Winning a contract still requires pursuing specific opportunities, submitting a competitive proposal, and building agency relationships. Getting found is the foundation, not the finish line.
Hit a data issue or a flow we did not cover? Press Ctrl+Enter to share, it helps the next contractor.