SAM.gov Scraper - Federal Contracts & RFP Monitor (No API Key) avatar

SAM.gov Scraper - Federal Contracts & RFP Monitor (No API Key)

Pricing

from $20.00 / 1,000 contract opportunities

Go to Apify Store
SAM.gov Scraper - Federal Contracts & RFP Monitor (No API Key)

SAM.gov Scraper - Federal Contracts & RFP Monitor (No API Key)

Scrape SAM.gov + USASpending for federal RFPs, solicitations, and contract awards. No API key required. AI-ranked by relevance to your business. Filter by NAICS, set-aside, agency, state, value. Attachment URLs included. For govcon BD teams, proposal writers, and competitive intelligence.

Pricing

from $20.00 / 1,000 contract opportunities

Rating

0.0

(0)

Developer

Digital Troubadour

Digital Troubadour

Maintained by Community

Actor stats

1

Bookmarked

18

Total users

2

Monthly active users

3 days ago

Last modified

Share

Government Contract Finder - SAM.gov RFP & Federal Bid Tracker

Scrape SAM.gov and USASpending.gov for federal contract opportunities, RFPs, solicitations, and award history. No API key required to start. AI-ranked by relevance to your business. Attachment URLs included. Webhook output for Zapier, Make, n8n. $0.02 per contract.

Works immediately. USASpending.gov needs no key. Add a free SAM.gov API key for richer opportunity details.

Who This Is For

  • BD / Capture teams tracking federal contract opportunities
  • Proposal writers who need SOWs and Section L/M documents in one place
  • Small business contractors (8(a), WOSB, HUBZone, SDVOSB) filtering for set-aside bids
  • Competitive intel analysts tracking who's winning what at which agencies
  • Automation builders wiring govcon signals into CRMs, Slack, or Airtable

What Makes This Different

  1. Two sources in one call. SAM.gov for open opportunities + USASpending.gov for award history. Most actors give you one or the other.
  2. No SAM.gov API key required to start. USASpending data works out of the box.
  3. AI semantic ranking. Describe your business in plain English ("cloud migration for federal agencies") and every contract is scored on actual relevance. Uses FastText-compatible TF-IDF locally. No LLM calls, no per-query costs.
  4. Rich attachment metadata. URL, filename, and MIME type parsed from every attachment. Optional fetch_attachment_metadata: true fetches real byte sizes via parallel HEAD requests. Direct download paths for RFPs, SOWs, Section L/M instructions, past performance questionnaires. Other scrapers give you URLs only.
  5. Change detection. Scheduled runs tag each opportunity as new, modified, or unchanged so you can alert only on changes.
  6. Webhook output. POST up to 50 opportunities per run to Zapier, Make, n8n, or any HTTP endpoint. Non-blocking so a bad webhook URL doesn't crash the run.
  7. Dry-run mode. Test configuration and webhooks with 2 sample opportunities. Zero API calls, zero charges.
  8. Opt-in enrichments (v1.5). Recompete detection, set-aside eligibility check, amendment detection, SAM.gov exclusion screening. Each enrichment is independent. You pay only for signals you opted into.

How We Compare

FeatureThis Actorfortuitous_pirate/sam-gov-scrapertopaz_lunar/us-government-contracts
Last updatedThis week3 months ago7 months ago
SAM.gov opportunitiesYesYesYes
USASpending award historyYesNoOptional
State contracts (CA/TX/NY/FL/IL/PA)NoNoYes
Attachment download URLsYesYesLinks only
AI semantic rankingYes (FastText)NoNo
Webhook outputYesNoYes
Change detection (new/modified)YesNoPartial
Dry-run modeYesNoNo
Recompete detectionYes ($0.25)NoNo
Set-aside eligibility checkYes ($0.10)NoNo
Amendment detectionYes ($0.08)NoNo
SAM.gov exclusion screeningYes ($0.05)NoNo
Base price$0.02 / contract$0.007 / result$0.001–$0.003 / contract

When to pick us: you're a BD or capture team that needs signals (recompete, eligibility, amendments) more than you need bulk volume. The enrichments are the moat. When to pick fortuitous_pirate: you want the cheapest possible per-record price and only need SAM.gov attachment URLs. When to pick topaz_lunar: you need state-level procurement coverage alongside federal.

Enrichments (Opt-in, Default Off)

Four extra signals, each with its own pay-per-event price. Turn them on only when you need them.

detect_recompetes - $0.25 per hit

Flags awards whose period of performance ends within recompete_lookahead_months (default 18). Recompetes are the single most valuable BD signal in govcon: bidders win them 38% of the time vs 12% on net-new pursuits. Output fields: is_recompete, months_until_recompete, incumbent_contractor, pop_end_date.

check_eligibility - $0.10 per opportunity

For every opportunity with a known NAICS code, checks whether your company is under the SBA size cap (revenue or employee based) and whether you hold the required set-aside certification. Ship your profile:

"company_profile": {
"annual_revenue_usd": 5000000,
"employee_count": 25,
"certifications": ["small_business", "wosb", "8a"]
}

Charged only when a definitive eligible/ineligible answer is produced. Null answers cost nothing.

detect_amendments - $0.08 per amendment

Diff against the prior run. Flags deadline changes, value changes, and new attachments. GAO treats Q&A responses as binding solicitation amendments under FAR 15.206. Missing them is a top-five proposal rejection reason. Output fields: amendment_detected, amendment_type, previous_deadline, previous_value.

identify_incumbents - $0.15 per opportunity (NEW in v1.6)

For every opportunity, query USASpending for the top 5 contractors who won similar work (same agency + NAICS) over the last 5 years. Returns contractor_name, UEI, total won, contract count, and latest PoP end date per winner. Uses USASpending (no SAM.gov rate limit impact). Output field: prior_winners array on each opportunity.

score_pwin - $0.20 per opportunity (NEW in v1.6)

Compute a Probability-of-Win score (0-100) based on NAICS fit, past performance (via your company_profile.past_awards), agency history, set-aside fit, competition count, and value range. Output: pwin_score (0-100), pwin_breakdown (component points), pwin_verdict (bid / conditional / no_bid). Industry thresholds: bid >= 70, conditional 50-69, no_bid < 50.

extract_rfp_requirements - $0.35 per opportunity (NEW in v1.6)

Download RFP attachment files (PDF, DOCX, or ZIP bundles) and extract every shall/must/will requirement via Gemini 2.5 Flash. Output: requirements_matrix array with section, requirement_id, text, shall_type, source_file per requirement. Requires a free gemini_api_key from https://aistudio.google.com/apikey (users pay Google for LLM calls directly, typically $0.01-$0.02 per RFP).

check_exclusions - $0.05 per entity

Screens every incumbent contractor against the SAM.gov Exclusions list (debarred or suspended vendors). Use before teaming: teaming with an excluded vendor disqualifies your bid and can trigger False Claims Act scrutiny. Requires a free sam_api_key. Output fields: incumbent_excluded, exclusion_reason, exclusion_agency, exclusion_date.

Input Configuration

FieldTypeDefaultDescription
business_descriptionstringPlain-English profile. Enables AI semantic ranking and NAICS auto-suggestions
keywordsstring[][]Keywords matched in title and description
naics_codesstring[][]NAICS codes (e.g. 541512 for IT services)
psc_codesstring[][]Product Service Codes
agenciesstring[][]Federal agency names
statesstring[][]2-letter state codes for place of performance

Filters

FieldTypeDefaultDescription
opportunity_typesstring[]["solicitation"]presolicitation, solicitation, combined_synopsis, sources_sought, special_notice, award_notice
set_aside_typesstring[][]small_business, 8a, hubzone, sdvosb, wosb, edwosb
min_valueint0Minimum estimated contract value in USD
max_valueint0Maximum value (0 = no limit)
posted_within_daysint30Only opportunities posted within N days
deadline_within_daysint60Only opportunities with deadlines within N days
max_resultsint100Maximum returned per run

Enrichments (Opt-in)

FieldTypeDefaultDescription
detect_recompetesboolfalseFlag contracts with PoP ending soon. $0.25 per hit
recompete_lookahead_monthsint18Window for recompete detection (1 to 36)
check_eligibilityboolfalseSBA size + cert check vs your profile. $0.10 per opportunity
company_profileobject{}{annual_revenue_usd, employee_count, certifications}
detect_amendmentsboolfalseDiff against prior run. $0.08 per amendment
check_exclusionsboolfalseScreen incumbents against SAM.gov Exclusions. $0.05 per entity
entities_to_checkstring[][]Extra UEIs to screen

Other

FieldTypeDefaultDescription
include_awardsbooltrueInclude recent contract awards for competitive intelligence
include_full_descriptionbooltrueInclude full opportunity description text
sam_api_keystringOptional SAM.gov API key. Required for exclusion screening
webhook_urlstringPOST results to this URL (Zapier, Make, n8n, custom)
dry_runboolfalseReturn 2 sample opportunities without API calls or charges
fetch_attachment_metadataboolfalseFor each attachment, HEAD-request to fetch size and MIME. Adds ~0.5s per attachment. Free

Sample Output Record

{
"opportunity_id": "sam_abc123",
"source": "sam.gov",
"type": "solicitation",
"title": "Cloud Migration Services for Federal Agency",
"description": "Full solicitation text...",
"url": "https://sam.gov/opp/abc123/view",
"agency": "General Services Administration",
"naics_code": "541512",
"naics_description": "Computer Systems Design Services",
"set_aside_type": "Total Small Business",
"small_business_eligible": true,
"estimated_value": 2500000.0,
"place_state": "VA",
"posted_date": "2026-04-15T00:00:00",
"response_deadline": "2026-05-15T00:00:00",
"contact_email": "contracting.officer@gsa.gov",
"attachments": [
{
"url": "https://sam.gov/api/prod/opps/.../rfp.pdf",
"filename": "rfp.pdf",
"mime_type": "application/pdf",
"size_bytes": null
},
{
"url": "https://sam.gov/api/prod/opps/.../sow.pdf",
"filename": "sow.pdf",
"mime_type": "application/pdf",
"size_bytes": null
}
],
"attachment_urls": [
"https://sam.gov/api/prod/opps/.../rfp.pdf",
"https://sam.gov/api/prod/opps/.../sow.pdf"
],
"attachments_count": 2,
"awarded_to": null,
"incumbent_contractor": "Accenture Federal Services LLC",
"pop_start_date": "2017-09-19T00:00:00",
"pop_end_date": "2027-05-31T00:00:00",
"is_recompete": true,
"months_until_recompete": 14,
"incumbent_excluded": false,
"is_eligible": true,
"eligibility_reason": "Revenue $5,000,000 <= $34,000,000 cap; Company holds required cert for Total Small Business",
"naics_size_cap": "$34M avg receipts",
"amendment_detected": false,
"relevance_score": 0.87,
"semantic_score": 0.954,
"matched_keywords": ["cloud", "semantic:95%"],
"change_status": "new",
"scraped_at": "2026-04-18T10:00:00Z"
}

The change_status field tells you what changed since the last run: new, modified, or unchanged.

Market Insights (KV Store)

Stored as INSIGHTS alongside each run. Useful for dashboards.

{
"total_opportunities": 150,
"total_estimated_value": 500000000,
"opportunities_by_type": {"solicitation": 80, "award_notice": 45},
"top_agencies": [
{"agency": "Department of Defense", "opportunities_count": 45, "total_estimated_value": 200000000}
],
"small_business_opportunities": 65,
"set_aside_breakdown": {"Total Small Business": 30, "8(a)": 15, "SDVOSB": 10, "WOSB": 10},
"opportunities_expiring_7d": 12,
"opportunities_expiring_30d": 45
}

Example Inputs

Bid / No-Bid Screening With Eligibility Check

{
"business_description": "Cloud migration and cybersecurity services for federal agencies. SBA-certified small business and WOSB.",
"naics_codes": ["541512", "541519"],
"opportunity_types": ["solicitation", "combined_synopsis"],
"min_value": 500000,
"check_eligibility": true,
"company_profile": {
"annual_revenue_usd": 5000000,
"employee_count": 25,
"certifications": ["small_business", "wosb"]
}
}

Recompete Tracker for BD Pipeline

{
"naics_codes": ["541512"],
"opportunity_types": ["award_notice"],
"include_awards": true,
"posted_within_days": 365,
"detect_recompetes": true,
"recompete_lookahead_months": 18
}

Competitive Intelligence

{
"keywords": ["cybersecurity", "zero trust", "FedRAMP"],
"agencies": ["Department of Defense", "Department of Homeland Security"],
"opportunity_types": ["award_notice"],
"include_awards": true
}

Small Business Set-Aside Focus

{
"naics_codes": ["541511"],
"set_aside_types": ["8a", "hubzone", "sdvosb", "wosb"],
"max_value": 5000000,
"deadline_within_days": 30,
"check_eligibility": true,
"company_profile": {
"annual_revenue_usd": 2000000,
"certifications": ["small_business", "8a"]
}
}

Dry Run (Test Without Charges)

{
"dry_run": true,
"business_description": "IT services"
}

Common NAICS Codes

CodeDescriptionSBA Size Cap
541511Custom Computer Programming$34M avg receipts
541512Computer Systems Design$34M avg receipts
541513Computer Facilities Management$34M avg receipts
541519Other Computer Related Services$34M avg receipts
541611Administrative Management Consulting$24.5M avg receipts
541618Other Management Consulting$19M avg receipts
541715R&D Engineering1,000 employees
541330Engineering Services$25.5M avg receipts
518210Data Processing, Hosting$47M avg receipts
561110Office Administrative Services$13M avg receipts

Pricing

Pay-per-event. No monthly fee. You pay only for what you opted into.

EventPriceFires
Actor start$0.01Once per run (first 5 seconds waived)
Contract$0.02Per opportunity returned
Recompete Detected$0.25Per incumbent contract flagged for rebid
Eligibility Check$0.10Per opportunity with a definitive eligible answer
Amendment Detected$0.08Per material change vs prior run
Exclusion Screen$0.05Per incumbent entity checked against SAM.gov Exclusions
Incumbent Identified$0.15Per opportunity enriched with prior winners via USASpending
PWin Scored$0.20Per opportunity assigned a Probability-of-Win score
RFP Requirements Extracted$0.35Per opportunity with LLM-extracted compliance matrix

Cost examples (enrichments off, default):

Use caseContracts / runCost / run
Quick keyword check25~$0.51
Daily BD monitoring100~$2.01
Full NAICS sweep500~$10.01

Cost example with all enrichments on (100 contracts, 15 recompete hits, 100 eligibility checks, 2 amendments, 20 incumbent screens):

  • Base: 100 x $0.02 = $2.00
  • Recompetes: 15 x $0.25 = $3.75
  • Eligibility: 100 x $0.10 = $10.00
  • Amendments: 2 x $0.08 = $0.16
  • Exclusions: 20 x $0.05 = $1.00
  • Total: $16.91 per run

Compared to alternatives: GovWin IQ runs $13K to $119K per year, Bloomberg Government $6K+, GovTribe $2.4K, EZGovOpps $2.7K, SamSearch $99/month.

SAM.gov API Key (Optional)

For richer opportunity details and exclusion screening:

  1. Register at SAM.gov
  2. Request a free API key at api.sam.gov
  3. Wait ~10 business days for approval
  4. Add your key to the sam_api_key input field

Without a key, the actor uses USASpending.gov. Exclusion screening requires a key.

Integrations

  • Webhooks: POST up to 50 opportunities to Zapier, Make.com, n8n, or any HTTP endpoint. Non-blocking.
  • Google Sheets: export via Apify's native integration
  • CSV / JSON / Excel: download from any run
  • API: programmatic access via Apify API
  • Schedules: daily runs land fresh data in your dataset and fire webhooks automatically

FAQ

Do I need a SAM.gov API key? No, USASpending data works immediately. A free SAM.gov key unlocks richer opportunity details and enables exclusion screening.

How does the recompete detector work? Every USASpending award includes a period_of_performance_current_end_date. We flag any award whose PoP ends within recompete_lookahead_months (default 18). Output includes months until recompete and incumbent contractor name.

How does eligibility checking work? We ship the SBA size standards table (NAICS -> revenue or employee cap). For every opportunity with a known NAICS, we compare your company_profile against the cap and check your certifications against the set-aside restriction. Null answers cost nothing.

How does amendment detection work on the first run? First run: no prior snapshot, so nothing fires. Your snapshot is persisted to KV and becomes the baseline for the next run. Schedule daily or weekly to benefit.

Is exclusion screening free? No. It requires a SAM.gov API key and charges $0.05 per entity checked. Without a key it logs a warning and skips.

Can I enable only one enrichment? Yes, every enrichment is an independent boolean. Leave the others off.

Are attachment URLs direct download links? Yes. They come from SAM.gov's resourceLinks field. Pipe into a downloader or archive.

Is this ToS-compliant? All data sources are public government data explicitly intended for programmatic access. No scraping workarounds, no credentials, no ToS violations.

Can I run this on a schedule? Yes. Use Apify's Schedules. Daily at 6am ET is a common pattern for BD teams. Change detection and amendment detection only work meaningfully with scheduled runs.

What if I hit the SAM.gov rate limit? Built-in exponential backoff kicks in automatically. SAM.gov 429s get a longer backoff (5s, 15s, 30s) than other endpoints because SAM's burst window takes ~30-60s to clear. If the whole run gets rate-limited, you still get your USASpending results and no extra charges fire for the blocked SAM calls. See "SAM.gov Rate Limits & Pricing" section below.

SAM.gov Rate Limits & Pricing

Your API key, your quota. Every user provides their own sam_api_key. Limits:

Key typeRequests per dayBurst (short-window)
Non-federal (individual)1,000~10-15 calls in rapid succession triggers 429
Federal10,000Same burst behavior

Daily quota resets at midnight UTC.

Which actor operations count against your quota:

OperationSAM calls per runNotes
SAM.gov opportunity fetch1Paged if > 1000 results
check_exclusions1 per unique incumbentCached; same entity only counted once
Everything else (USASpending, enrichments, attachments)0Doesn't touch SAM

Pricing protection: our pay-per-event charges only fire on successful signals. A 429 response means no opportunity, no charge. You never pay for failed SAM calls.

Tips to stay under the quota:

  1. Schedule runs with max_results sized to your needs, not the maximum
  2. Use check_exclusions selectively (each unique incumbent = 1 call)
  3. If running multiple times per day, budget across runs (1,000 / 24h = ~40/hr)
  4. For federal users, request a federal API key for 10x the quota

How fresh is the data? Real-time. Every run hits the APIs directly. No cache.

Changelog

v1.5.1 (April 2026)

  • Attachment output upgraded from flat URL list to structured objects with URL, filename, MIME type (always), and size in bytes (when fetch_attachment_metadata is enabled)
  • attachment_urls still emitted alongside for backward compatibility
  • Added How We Compare section vs fortuitous_pirate and topaz_lunar

v1.5 (April 2026)

  • Four opt-in enrichment events: recompete_detected, set_aside_eligibility_checked, amendment_detected, exclusion_checked
  • Parallel SAM.gov + USASpending fetch via asyncio.gather (typical 50% runtime cut)
  • New output fields: pop_start_date, pop_end_date, incumbent_contractor, incumbent_uei, is_recompete, months_until_recompete, is_eligible, eligibility_reason, amendment_detected, incumbent_excluded

v1.4 (April 2026)

  • Fixed USASpending silent-fail when any keyword is under 3 characters

v1.3 (April 2026)

  • Added attachments and attachments_count (SAM.gov resourceLinks passthrough)
  • Added webhook_url input for Zapier, Make, n8n, custom endpoints
  • Added dry_run mode

v1.2 (March 2026)

  • FastText-compatible semantic ranking via business_description
  • NAICS auto-suggestions
  • Pricing set to $0.02 per contract

v1.1 (December 2025)

  • Change detection (new / modified / unchanged)
  • USASpending.gov integration
  • Pay-per-event billing

v1.0 (October 2025)

  • Initial release with SAM.gov API integration

Support