How to Search SAM.gov Contract Opportunities in 2026
SAM.gov had 71,686 active contract notices on October 21, 2026. Fewer than 6 in 10 were actually open for bids.
That's why searching SAM.gov contract opportunities feels like noise. Start with your NAICS code, filter to the notice types you can respond to (solicitations and combined synopsis/solicitations), add a set-aside if you qualify, and sort by updated date. Then check sources sought separately, because the NAICS filter quietly drops about 1 in 9 of them.
How do you search SAM.gov contract opportunities?
To search SAM.gov contract opportunities, open the search page, pick the Contract Opportunities domain, and type a keyword with one of three modes: All Words, Any Words, or Exact Phrase. Then narrow with filters for NAICS code, notice type, set-aside, and place of performance. Sort by updated date, not relevance, so new notices and amendments land at the top.
The order matters more than any single filter. This is the sequence I'd use:
1. Filter by your NAICS code first. 2. Pick notice types: Solicitation and Combined Synopsis/Solicitation for bids, Sources Sought for early positioning. 3. Add your set-aside, if you qualify for one. 4. Skip place of performance unless you truly can't work elsewhere (more on why below). 5. Use keywords last, and only to cut a list that's still too long.
No account is needed to search. You only sign in to save a search or follow a notice, which the SAM.gov monitoring guide covers.
The keyword modes are worth knowing. "All Words" needs every word somewhere in the notice, and "Any Words" casts the widest net.
"Exact Phrase" is what you want for a product name or a solicitation number.
What's actually in a SAM.gov search?
A SAM.gov search covers every active notice, and most of them aren't biddable. In SAM.gov's public data extract for October 21, 2026, there were 71,686 active notices. Of those, 40,885 were solicitations or combined synopsis/solicitations you could bid on. Another 12,383 were award notices, which only tell you who already won.
I pulled those numbers from SAM.gov's own daily Contract Opportunities extract, a 209 MB public CSV. The copy I used was refreshed at 03:30 GMT that day.
Most of it comes from one department: Defense posted 71.2% of all active notices.
And one agency inside it dominates the biddable list. The Defense Logistics Agency accounted for 14,942 biddable notices, or 36.5%. Those are mostly spare-parts buys with titles like "53--BRACKET,MOUNTING."
If you don't sell parts to DLA, that's more than a third of the biddable list you'll be scrolling past. I expected parts buys to be a rounding error. They're the single biggest slice.
Which notice types should you search on SAM.gov?
Search by the notice types you can act on. Solicitations and combined synopsis/solicitations are open for bids. Sources sought and presolicitations are early signals that a buy is coming. Special notices cover industry days and draft documents. Award notices are already decided, so they only help with competitor research. On October 21, 2026, biddable types made up 57% of active notices.
The full mix that day:
| Notice type | What it means | Can you bid? | Active notices |
|---|---|---|---|
| Combined Synopsis/Solicitation | Notice and solicitation posted together, common for commercial buys | Yes | 22,462 |
| Solicitation | The formal request for bids or proposals | Yes | 18,423 |
| Award Notice | The contract went to someone | No | 12,383 |
| Presolicitation | A solicitation is coming | Not yet | 6,690 |
| Special Notice | Industry days, drafts, events | No | 5,052 |
| Sources Sought | Market research; the agency wants capable vendors | Respond, don't bid | 4,915 |
| Justification (incl. J&A) | Explains a sole-source or limited-competition decision | No | 1,086 |
Don't skip sources sought. That's where you can shape a buy before it's written.
A sources sought response is how an agency learns whether enough small businesses exist to justify a set-aside. If nobody responds, the solicitation may come out unrestricted.
Which SAM.gov filters miss opportunities?
The NAICS and notice-type filters both hide notices you'd want. In the October 21, 2026 extract, 13.2% of presolicitations, 10.9% of sources sought, and 37.5% of special notices had no NAICS code, so a NAICS filter drops them silently. And 16.9% of active notices had changed type since they were first posted, so a notice-type filter can miss them too.
Biddable notices barely have the problem. Only 25 of 40,885 solicitations and combined notices were missing a code.
But the early-stage notices are exactly where the gap is. Roughly 1 in 9 sources sought notices won't show up in a NAICS-filtered search.
A second search fixes it. Keep your NAICS search for bids, and add a keyword search limited to Sources Sought and Presolicitation, with no NAICS filter.
The type changes are sneakier. A notice that started as a sources sought can be revised into a special notice or a solicitation. I found 12,111 active notices whose current type differed from the type they were first posted as.
Take a Space Systems Command notice posted October 20, 2026, announcing a virtual industry day for a classified program. It began as a sources sought and now sits under Special Notice.
A sources sought filter wouldn't show it today.
So if you're tracking a specific buy, follow the notice itself, not a type filter.
The place-of-performance filter is the worst offender of all. In the same extract, 30,550 of the 40,885 biddable notices, or 74.7%, had no place of performance filled in. Only 682 named a foreign location. That number surprised me more than anything else in the file.
So a state filter doesn't narrow your list to your state. It narrows it to the quarter of notices where an agency bothered to fill in the field, and then to your state.
If location matters, skip the filter and read the notice. The work site, when there is one, is usually in the description or the attachments.
Which NAICS codes have the most open SAM.gov contract opportunities?
Construction and defense manufacturing lead. On October 21, 2026, NAICS 236220 (commercial and institutional building construction) had 2,847 open solicitations and combined notices, the most of any code. Aircraft parts manufacturing (336413) came second with 2,013. Six of the top ten codes are manufacturing, which reflects how much of SAM.gov is Defense Logistics Agency parts buying.
The top ten that day, counting only notices you could bid on:
| NAICS | Industry | Open notices |
|---|---|---|
| 236220 | Commercial and institutional building construction | 2,847 |
| 336413 | Other aircraft parts and auxiliary equipment manufacturing | 2,013 |
| 237990 | Other heavy and civil engineering construction | 1,222 |
| 541715 | R&D in the physical, engineering, and life sciences | 944 |
| 332510 | Hardware manufacturing | 767 |
| 332911 | Industrial valve manufacturing | 740 |
| 336611 | Ship building and repairing | 718 |
| 332722 | Bolt, nut, screw, rivet, and washer manufacturing | 711 |
| 333998 | All other miscellaneous general purpose machinery manufacturing | 669 |
| 541330 | Engineering services | 665 |
Not on the list? That's normal, and it just means your searches return a shorter, cleaner list.
Use the exact six-digit code your capability statement lists. Neighboring codes are different industries, like 541511 (custom programming) and 541512 (systems design), and agencies pick one per notice.
How do set-aside filters work on SAM.gov?
The set-aside filter limits results to notices reserved for a small-business program, like total small business, SDVOSB, WOSB, 8(a), or HUBZone. In the October 21, 2026 extract, 47.7% of biddable notices carried a set-aside. Total small business set-asides were the biggest group, with 15,120 notices, or 37% of everything biddable.
The main set-asides among biddable notices that day:
| Set-aside | Biddable notices |
|---|---|
| Small Business Set Aside - Total | 15,120 |
| Service-Disabled Veteran-Owned Small Business (SDVOSB) | 2,166 |
| Women-Owned Small Business (WOSB) | 746 |
| 8(a) | 579 |
| HUBZone | 471 |
| Small Business Set Aside - Partial | 83 |
Only filter by a set-aside you actually hold. A notice set aside for SDVOSB isn't open to you otherwise, however good the fit looks.
If you're a small business, though, don't filter to set-asides alone. More than half of biddable notices had no set-aside, and small businesses can bid on those too.
How do you read a SAM.gov contract opportunity notice?
Read a SAM.gov contract opportunity notice from the top: the notice type, the current response date, the set-aside, the NAICS and product service codes, and then the attachments. The notice ID identifies the posting, while the solicitation number identifies the buy. The "current response date" can move when an amendment extends the deadline, so check it after every update.
A few fields trip people up.
The notice ID and the solicitation number aren't the same thing. One buy can have several notices, like a presolicitation and then a solicitation, each with its own notice ID but the same solicitation number.
The product service code (PSC) describes what's being bought, while the NAICS code describes the industry that makes it. Searching by PSC can find buys an agency coded under a NAICS you didn't expect.
The search results also show both a published date and an updated date. A notice published two weeks ago but updated today usually has an amendment worth reading.
Don't skip the contracting office, either. Its name and code tell you who's buying, which helps when you research that office's past awards.
How much time do you get to respond to a SAM.gov notice?
Less than you'd think. The FAR requires most synopses to post at least 15 days before a solicitation, and at least 30 days for bids on non-commercial contracts above the simplified acquisition threshold. But commercial buys can be shorter. Across 39,730 biddable notices on October 21, 2026, the median window from posting to deadline was 14 days, and 19.1% gave seven days or less.
The 15-day and 30-day rules are in FAR 5.203. The posting rule itself, for actions over $25,000, is in FAR 5.101.
Commercial products and services are the exception. The contracting officer can shorten the time or use a combined synopsis/solicitation, which is why combined notices are the single biggest type.
Only 22.8% of biddable notices gave 30 days or more.
The split by type is stark. Combined synopsis/solicitations had a median window of 11 days, and 22.2% gave a week or less. Regular solicitations had a median of 25 days, and 41% gave 30 days or more.
So the notice type tells you how fast you have to move. A combined notice is a short sprint. A solicitation usually gives you time to build a real proposal.
Check daily, not weekly. A weekly check would miss the window on roughly a fifth of the notices you could bid on.
Why isn't your SAM.gov search finding opportunities?
A SAM.gov search usually misses opportunities for one of six reasons: a NAICS filter that drops notices without a code, a state filter on a field most notices leave blank, a notice-type filter that misses changed notices, literal keywords, details buried in attachments, or relevance sorting that hides new notices. Each has a simple fix.
1. Missing NAICS codes. Run a second search for sources sought and presolicitations without the NAICS filter. 2. Changed notice types. Follow notices you care about instead of relying on a type filter. 3. Literal keywords. "IT support" won't match "help desk services." Try Any Words with three or four synonyms. 4. Attachments. In the October 21 extract, 9.8% of biddable notices had almost no description, often just "please see attachments." Open the files. 5. Relevance sort. It mixes old and new. Sort by updated date to catch amendments. 6. A place-of-performance filter. Three quarters of biddable notices leave it empty, so drop it unless you have to use it.
If I had to pick one to check first, it's the attachments. The scope, the set-aside detail, and the deadline extension often live in a PDF, not the notice text.
How do you pull SAM.gov contract opportunities in bulk?
Pull SAM.gov contract opportunities in bulk from the public daily extract, a free CSV of every active notice with no key or login, or through the SAM.gov Opportunities API, which needs a key and caps personal keys without a SAM.gov role at 10 requests a day. The extract is best for analysis, like the numbers above. An API is better for filtered searches inside your own app.
The extract has 47 columns, including notice type, original type, NAICS code, set-aside, posted date, and response deadline. It also includes contracting officers' names and emails, so treat it with some care.
For filtered pulls in code, the 10-a-day cap is the problem. The SAM.gov rate limits guide explains why it exists and how to raise it, and the SAM.gov API key guide walks through getting a key.
Edgrapi's opportunities endpoint wraps the same SAM.gov API with filters for NAICS, notice type, set-aside, and state:
import requests
r = requests.get("https://api.edgrapi.com/v1/opportunities",
headers={"X-API-Key": "edgr_your_key"},
params={"naics": "236220", "ptype": "o", "set_aside": "SBA", "limit": 10})
data = r.json()
print(data["total"]) # 29 when I ran it on October 21, 2026
for o in data["opportunities"]:
print(o["posted_date"], o["type"], o["title"], o["response_deadline"])
That call returned 29 small-business set-aside solicitations for commercial building construction (NAICS 236220) posted in the previous 30 days.
Search by NAICS for bids, then by type for early signals
Searching SAM.gov contract opportunities well comes down to two searches. One filters by your NAICS code and the biddable notice types, sorted by updated date. The other skips the NAICS filter and looks only at sources sought and presolicitations. Run both daily, open every attachment, and respond to sources sought, because that's where set-asides get decided.
Frequently asked questions
How do I search for contracts on SAM.gov?
Go to SAM.gov's search, choose the Contract Opportunities domain, and filter by NAICS code, notice type, set-aside, and place of performance. Use keywords last, in All Words, Any Words, or Exact Phrase mode. Sort by updated date. No account is needed to search; you only sign in to save searches or follow notices for email updates.
What is the difference between a sources sought and a solicitation?
A sources sought notice is market research: the agency asks capable vendors to describe themselves, and nobody wins a contract from it. A solicitation is the formal request for bids or proposals that leads to an award. On October 21, 2026, SAM.gov had 4,915 active sources sought notices and 18,423 active solicitations.
Why can't I find an opportunity on SAM.gov?
Usually a filter is hiding it. Many early notices have no NAICS code (13.2% of presolicitations in October 2026), 74.7% of biddable notices have no place of performance, and keyword search is literal. Try removing the NAICS filter, searching by the notice ID or solicitation number with Exact Phrase, and sorting by updated date.
How long do I have to respond to a SAM.gov solicitation?
It depends on the buy. The FAR requires at least 30 days for bids on most non-commercial contracts above the simplified acquisition threshold, but commercial buys can be shorter. In the October 21, 2026 SAM.gov extract, the median biddable notice gave 14 days from posting to deadline, and 19.1% gave seven days or less.
Do I need a SAM.gov account to search contract opportunities?
No. Anyone can search SAM.gov contract opportunities without an account. You need a free Login.gov-backed account only to save searches, follow notices, or get email notifications. To actually bid and receive an award, your business needs an active SAM.gov entity registration, which is a separate step.
Can I download all SAM.gov contract opportunities?
Yes. SAM.gov publishes a free daily CSV extract of all active contract opportunities, with no key or login. On October 21, 2026, it was 209 MB and listed 71,686 active notices across 47 columns, including notice type, NAICS code, set-aside, and response deadline. For filtered pulls in code, use the SAM.gov Opportunities API with a free key, or a wrapper that handles its limits.