# USAspending Scraper – Federal Contracts & Awards Data (`dedicated_crest/usaspending-federal-awards`) Actor

USAspending.gov scraper for federal contracts, IDVs and grant awards: recipient, UEI, address, amount, agency, NAICS/PSC, set-aside, competition, dates. Filter by keyword, agency, NAICS, state, amount. GovCon leads, no API key. $2/1,000.

- **URL**: https://apify.com/dedicated_crest/usaspending-federal-awards.md
- **Developed by:** [Ben Barazandeh](https://apify.com/dedicated_crest) (community)
- **Categories:** Lead generation, Business, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$2.00 / 1,000 awards

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## USAspending Scraper – Federal Contracts & Awards Data, GovCon Leads

**Search every US federal contract, IDV and grant award on USAspending.gov and export clean rows, for $2 per 1,000 awards.** Filter by keyword, agency, NAICS, PSC, set-aside, state, amount and date and get the recipient name, **UEI**, parent company, address, award amount, awarding agency and office, NAICS/PSC, set-aside, competition details, period of performance and links to USAspending.

- ✅ **Official source**: the public USAspending.gov API (data reported by agencies to FPDS/FABS)
- ✅ **GovCon-ready fields**: UEI, parent UEI, NAICS, PSC, set-aside type, number of offers, solicitation ID
- ✅ **Contracts, IDVs, grants, loans and direct payments** in one schema
- ✅ **No API key, login or proxy**. Pay per award saved, and it stops at your *Maximum cost per run*

**Try it now:** the input is pre-filled with contract awards matching `artificial intelligence` in the last 30 days, 25 results. Click **Start**; the test run below took about 6 seconds.

### Real run results (18 Oct 2026)

Pre-filled input: award type contracts, keyword `artificial intelligence`, `daysBack: 30`, `maxItems: 25`, sorted by amount (run `9X7LaSQ1lnEkigYHd`, 6 seconds, 25 awards totalling $190.0M). First 8 rows:

| Recipient | Amount | Awarding office | NAICS | Description | Action date |
|---|---|---|---|---|---|
| ACCENTURE FEDERAL SERVICES LLC | $36.71M | Federal Acquisition Service | 541512 | THIS AWARD IS IN SUPPORT OF THE CHIEF DATA ARTIFICIAL… | 2026-06-25 |
| BOOZ ALLEN HAMILTON INC | $30.72M | Federal Acquisition Service | 541611 | OFFICE OF UNDERSECRETARY OF WAR - DATA ANALYTICS AND A… | 2026-08-24 |
| INDEX ANALYTICS LLC | $22.94M | Centers for Medicare and Medicaid Services | 541511 | ARTIFICIAL INTELLIGENCE THROUGH MACHINE LEARNED MODELI… | 2023-09-26 |
| BOOZ ALLEN HAMILTON INC | $14.18M | U.S. Customs and Border Protection | 541612 | 70B04C26F00001201 CTO/TECHNOLOGY ROADMAP FOR ARTIFICIA… | 2026-09-30 |
| ICATALYST, INC. | $12.79M | Department of Education | 541511 | DEPARTMENT OF EDUCATION IT MODERNIZATION BPA--CIO INNO… | 2022-09-09 |
| ACCENTURE FEDERAL SERVICES LLC | $9.09M | Federal Bureau of Investigation | 541512 | ITSSS- 2 SCOR 49- ARTIFICIAL INTELLIGENCE (AI) EXPLOIT… | 2025-09-24 |
| STERLING COMPUTERS CORPORATION | $7.69M | Bureau of Engraving and Printing | 334111 | TO PURCHASE ENTERPRISE SERVERS, HYPERCONVERGED INFRAST… | 2026-09-21 |
| ZOLON PCS II, LLC | $6.77M | Institute of Museum and Library Services | 541512 | INFORMATION TECHNOLOGY SYSTEMS DEVELOPMENT, OPERATIONS… | 2023-08-18 |

### Use cases

- **GovCon BD and capture teams**: see who wins what, at which agency, under which vehicle and NAICS
- **B2B sales and lead generation**: fresh lists of companies that just received federal money (address, UEI, size status)
- **Subcontracting and teaming**: find primes winning work in your NAICS and state
- **Competitive intelligence**: track competitors' awards by name or UEI
- **Investors, journalists, researchers and AI agents**: monitor federal spending on AI, cyber, defense, health and more

### Features

- 🏛️ Contracts, IDVs (IDIQ/GWAC/BPA), grants, loans, direct payments and other assistance
- 🔎 Filters: **keywords, recipient name/UEI, awarding agency, NAICS, PSC, place-of-performance state, recipient state, set-aside (SBA, 8(a), HUBZone, SDVOSB, WOSB…), min/max amount**
- 📅 Last *N* days or a custom range. Choose action date, signed date, last-modified date or **new awards only**.
- 🧾 Optional **detail enrichment** (on by default): recipient address, parent company, business categories, set-aside, competition, offers, solicitation, parent vehicle, subaward count
- ↕️ Sort by amount, last modified, start/end date or recipient
- ♻️ Automatic pagination and retries. Summary record with matching counts and total dollars.
- 💵 Stops cleanly at your **Maximum cost per run**

### How to use it

1. Click **Try for free**.
2. Pick award types, then add filters (e.g. NAICS `541512`, state `VA`, set-aside `SBA`, last 7 days, *New awards only*).
3. Run it, then export to CSV/Excel/JSON, or **schedule it daily** to get new awards into your CRM, Sheets or Slack.

### Input example

```json
{
  "awardTypes": ["contracts", "grants"],
  "keywords": ["artificial intelligence"],
  "daysBack": 30,
  "maxItems": 300
}
```

### Output example

Real output (one award):

```json
{
  "awardId": "47QFCA26F0023",
  "awardCategory": "contracts",
  "awardType": "DELIVERY ORDER",
  "description": "THIS AWARD IS IN SUPPORT OF THE CHIEF DATA ARTIFICIAL INTELLIGENCE OFFICE CDAO WAR DATA PLATFORM WDP CORE INTEGRATION CI",
  "amount": 36709970,
  "totalOutlays": null,
  "baseAndAllOptions": 821270642,
  "subsidyCost": null,
  "actionDate": "2026-06-25",
  "startDate": "2026-07-28",
  "endDate": "2027-07-27",
  "potentialEndDate": "2031-07-27",
  "lastModified": "2026-09-30 17:02:48",
  "awardingAgency": "General Services Administration",
  "awardingSubAgency": "Federal Acquisition Service",
  "fundingAgency": "Department of Defense",
  "recipientName": "ACCENTURE FEDERAL SERVICES LLC",
  "recipientUei": "C47BNA8GM833",
  "parentRecipientName": "ACCENTURE PLC",
  "parentRecipientUei": "K9S7KL73XBE3",
  "recipientAddress": "800 N GLEBE RD STE 300",
  "recipientCity": "ARLINGTON",
  "recipientState": "VA",
  "recipientZip": "22203",
  "recipientCountry": "UNITED STATES",
  "recipientCongressionalDistrict": "08",
  "businessCategories": [
    "Category Business",
    "Corporate Entity Not Tax Exempt",
    "Foreign Owned"
  ],
  "naicsCode": "541512",
  "naicsDescription": "COMPUTER SYSTEMS DESIGN SERVICES",
  "pscCode": "DA01",
  "pscDescription": "IT AND TELECOM - BUSINESS APPLICATION/APPLICATION DEVELOPMENT SUPPORT SERVICES (LABOR)",
  "assistanceListings": null,
  "setAside": null,
  "extentCompeted": "FULL AND OPEN COMPETITION",
  "numberOfOffers": 5,
  "solicitationId": "47QFCA26R0014",
  "solicitationProcedures": "SUBJECT TO MULTIPLE AWARD FAIR OPPORTUNITY",
  "pricingType": "COST PLUS AWARD FEE",
  "parentAwardId": "47QTCK18D0036",
  "parentAwardType": "GWAC",
  "subawardCount": 17,
  "placeOfPerformanceCity": "FALLS CHURCH",
  "placeOfPerformanceState": "VA",
  "placeOfPerformanceZip": "22041",
  "placeOfPerformanceCountry": "USA",
  "usaspendingUrl": "https://www.usaspending.gov/award/CONT_AWD_47QFCA26F0023_4732_47QTCK18D0036_4732",
  "recipientProfileUrl": "https://www.usaspending.gov/recipient/d41a6b8a-9d6a-0d28-7e24-989e31731aad-C/latest",
  "generatedAwardId": "CONT_AWD_47QFCA26F0023_4732_47QTCK18D0036_4732",
  "scrapedAt": "2026-10-17T17:35:52.880Z"
}
```

The run's key-value store also holds a **SUMMARY** record with the filters used, matching award counts by type, items saved and total dollar amount.

### Pricing

**Pay per event: $0.002 per award** (**$2 per 1,000 awards**), detail enrichment included, no start fee. Set a *Maximum cost per run* and the Actor stops cleanly when it's reached.

How that compares with other USAspending Actors on the Apify Store (free-tier list prices from the Store API, checked 18 Oct 2026):

| Actor | Price per 1,000 awards | Start fee |
|---|---|---|
| **This Actor** | **$2.00** | none |
| USAspending Awards Scraper (parseforge) | $12.00 | $0.16 |
| USAspending Federal Spending Search (ryanclinton) | $2.00 | $0.00005 |
| USAspending Search, Federal Contracts & Grants KYB (pink_comic) | $2.00 | $0.0001 |
| USASpending Scraper, Federal Contracts & Grants (logiover) | $5.00 | $0.00005 |
| USASpending Scraper, Government Contracts (copious_atoll) | $1.00 | $0.00005 |

Looking for *open* solicitations (RFPs) rather than awards already made? Those are on SAM.gov; USAspending shows who won, how much and from which office, which is what you need for competitor research, teaming and subcontracting leads.

### Tips and limits

- One search returns up to ~10,000 awards per award type. For bigger pulls, split the date range or add filters.
- Agency names must match USAspending's top-tier names (e.g. "Department of Defense", "Department of Veterans Affairs").
- Data is as published by agencies to FPDS/FABS. Contract actions usually appear within days, but DoD data has a 90-day publication delay.
- Turn off *Include details* for the fastest, list-only results.

### FAQ

**Is this legal?** Yes. USAspending.gov is an official, public US government open-data service run by the Department of the Treasury. Federal data is public domain.

**Does it include SAM.gov opportunities (open solicitations)?** No. This Actor covers **awards** (who won). SAM.gov opportunity search needs an API key.

**Affiliation:** Independent tool, not affiliated with or endorsed by the US government.

**What's the difference between USAspending and SAM.gov?** SAM.gov lists open contract opportunities and entity registrations. USAspending shows awards that were already made: recipients, amounts, agencies and NAICS codes.

**How do I find small-business set-aside winners in my NAICS?** Add your `naicsCodes` and `setAsideTypes` (e.g. `SBA`, `8A`, `WOSB`, `SDVOSBC`), set `daysBack` and sort by amount.

**How do I get new awards every week?** Schedule it weekly with `daysBack: 7` and `dateType: new_awards_only`, then connect Google Sheets, Slack or your CRM.

**Does it include grants?** Yes. Add `grants` (and optionally `loans`, `direct_payments`) to `awardTypes`.

### Related tools

Other Actors by the same developer that work well with this one:

- [Grants.gov Scraper](https://apify.com/dedicated_crest/grants-gov-opportunity-finder): open federal grant opportunities you can still apply for
- [SEC EDGAR Scraper](https://apify.com/dedicated_crest/sec-edgar-funding-leads): private-company funding rounds from SEC Form D
- [Bulk WHOIS & DNS Lookup](https://apify.com/dedicated_crest/domain-whois-dns-intel): enrich federal contractors' websites with email provider and tech stack
- [NPI Registry Scraper](https://apify.com/dedicated_crest/npi-healthcare-provider-leads): US healthcare providers, for HHS/VA market research

# Actor input Schema

## `awardTypes` (type: `array`):

Which award categories to search.

## `keywords` (type: `array`):

Award description keywords (any match), e.g. "artificial intelligence", "cybersecurity".

## `recipientNames` (type: `array`):

Only awards to these recipients (name text or UEI), e.g. competitors or prospects.

## `awardingAgencies` (type: `array`):

Top-tier agency names exactly as on USAspending, e.g. "Department of Defense", "Department of Health and Human Services", "General Services Administration".

## `naicsCodes` (type: `array`):

2–6 digit NAICS codes (prefixes match), e.g. 5415, 541512.

## `pscCodes` (type: `array`):

Product/Service codes, e.g. DA01, R425.

## `placeOfPerformanceStates` (type: `array`):

2-letter US state codes, e.g. CA, VA.

## `recipientStates` (type: `array`):

2-letter state codes of the recipient's address.

## `setAsideTypes` (type: `array`):

FPDS set-aside codes, e.g. SBA (small business), 8A, 8AN, HZC (HUBZone), SDVOSBC, WOSB, EDWOSB.

## `minAmount` (type: `integer`):

Only awards at least this large.

## `maxAmount` (type: `integer`):

Only awards up to this size.

## `daysBack` (type: `integer`):

Search window ending today (ignored if Date from is set).

## `dateFrom` (type: `string`):

YYYY-MM-DD (earliest 2007-10-01).

## `dateTo` (type: `string`):

YYYY-MM-DD (default today).

## `dateType` (type: `string`):

Which award date the search window applies to.

## `sortBy` (type: `string`):

Field to sort results by.

## `sortOrder` (type: `string`):

Descending (largest/newest first) or ascending.

## `includeDetails` (type: `boolean`):

Adds recipient address, parent company, business categories (small/veteran/woman-owned…), set-aside, competition, number of offers, solicitation ID, parent vehicle. One extra API call per award.

## `maxItems` (type: `integer`):

Maximum awards to return (0 = no limit; a single query returns at most ~10,000 per award type, so narrow the date range for more).

## Actor input object example

```json
{
  "awardTypes": [
    "contracts"
  ],
  "keywords": [
    "artificial intelligence"
  ],
  "daysBack": 30,
  "dateType": "action_date",
  "sortBy": "Award Amount",
  "sortOrder": "desc",
  "includeDetails": true,
  "maxItems": 25
}
```

# Actor output Schema

## `results` (type: `string`):

Federal awards with recipient, UEI, address, amount, agency, NAICS/PSC, set-aside, competition and dates.

## `summary` (type: `string`):

Filters used, matching award counts by type, awards saved and total dollar amount.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "awardTypes": [
        "contracts"
    ],
    "keywords": [
        "artificial intelligence"
    ],
    "daysBack": 30,
    "maxItems": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("dedicated_crest/usaspending-federal-awards").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "awardTypes": ["contracts"],
    "keywords": ["artificial intelligence"],
    "daysBack": 30,
    "maxItems": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("dedicated_crest/usaspending-federal-awards").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "awardTypes": [
    "contracts"
  ],
  "keywords": [
    "artificial intelligence"
  ],
  "daysBack": 30,
  "maxItems": 25
}' |
apify call dedicated_crest/usaspending-federal-awards --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,dedicated_crest/usaspending-federal-awards"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/1gBWYbXAbdVPHOBz7/builds/EqoGjjolBllxFhfWi/openapi.json
