USAspending Awards Scraper
parseforge/usaspending-scraper
AutomationDeveloper toolsOther
Scrapes federal award and sub-award records from USAspending.gov. Returns each award as a flat row with dollar amount, recipient, agency, location, and classification codes.
- Total users
- 24
- Monthly active
- 3
- Total runs
- 397
- Bookmarked
- 2
- Rating
- 5.0 (1)
- Last modified
- 12 days ago
Overview
USAspending Awards Scraper
Scrape federal award data from USAspending.gov by keyword, recipient, agency, or location, up to one million records per run. Every award comes with its dollar amount, recipient details, awarding agency, NAICS and PSC codes, and place of performance. Export to CSV, JSON, Excel, or XML.
USAspending.gov is the official open data source for U.S. federal spending, but its Advanced Search interface limits you to manual downloads and on-screen browsing. This Actor reads the public award and sub-award feeds directly, applying every filter the website offers so you get exactly the records you need in one flat dataset. No API key, no browser automation, and no manual exports.
| Who uses it | What they scrape USAspending.gov for |
|---|---|
| Government contractors | Find which agencies are buying what you sell and who your competitors are. |
| Market researchers | Track spending trends by agency, NAICS code, or recipient location over time. |
| Nonprofits and grant writers | Identify grant programs and past recipients to target your proposals. |
| Journalists and watchdog groups | Investigate federal spending patterns and flag unusual award activity. |
What it does
This Actor collects federal award and sub-award records from USAspending.gov and returns each one as a flat row with its dollar value, recipient, agency, location, and classification codes.
- ๐ Keyword search: match award descriptions exactly as you would in the USAspending Advanced Search box.
- ๐ข Recipient filter: search by company name, UEI, or DUNS to pull every award for a specific vendor.
- ๐ Date range: set a start and end date to limit results to a specific fiscal quarter or year.
- ๐ฐ Award amount range: collect only awards above or below a dollar threshold you define.
- ๐ Location filters: restrict by recipient country or place of performance country from the full USAspending country list.
- ๐๏ธ Agency filters: narrow results to one or more awarding or funding agencies by name.
- ๐ Classification codes: filter by NAICS and PSC codes to isolate specific industries or products.
- ๐ท๏ธ Recipient type: select from the full set of business categories, including small business, minority-owned, veteran-owned, and nonprofit designations.
- ๐ Award type and spending level: choose contracts, grants, loans, IDVs, direct payments, or other financial assistance, and switch between prime awards and sub-awards.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with USAspending.gov data
๐ Build a federal sales pipeline.
A business development team searches for active IDV contracts by NAICS code and agency to find vehicles they can bid on.
๐ Research competitors' federal revenue.
A market analyst enters a competitor's UEI and pulls every award that company has won in the last three fiscal years.
๐ Map spending by geography.
A policy researcher filters grants by place of performance country to see how foreign aid is distributed across regions.
๐ Monitor agency spending trends.
A watchdog group runs a weekly scrape of all Department of Defense contracts above $1 million to track changes in procurement patterns.
Why choose this scraper
| What you get | |
|---|---|
| Award amount | The obligated and outlayed dollar values for each award. |
| Recipient | Company name, UEI, DUNS, and recipient type flags. |
| Agency | Awarding agency, funding agency, and their sub-agency offices. |
| Location | Recipient address and place of performance down to the country level. |
| Classification | NAICS and PSC codes with descriptions for industry and product analysis. |
How it compares
This Actor focuses exclusively on USAspending.gov award and sub-award data with the full set of Advanced Search filters. Here is how it compares to other Apify actors that also pull from USAspending.
| Feature | ParseForge | SAM.gov + USAspending Scraper - Federal Contract Leads | Federal Recompete Award Finder | SAM.gov Scraper - Federal Contracts & RFP Monitor (No API Key) |
|---|---|---|---|---|
| Exclusive USAspending focus | Yes | Not listed | Yes | Not listed |
| Sub-award data | Yes | Not listed | Not listed | Not listed |
| Full recipient type filter | Yes | Not listed | Not listed | Not listed |
| Place of performance country filter | Yes | Not listed | Not listed | Not listed |
| Award amount range filter | Yes | Not listed | Not listed | Not listed |
| PSC code filter | Yes | Not listed | Yes | Not listed |
Configure the run
Drive the Actor from keywords, recipient names, award IDs, agencies, locations, NAICS codes, PSC codes, recipient types, award types, and date or dollar ranges, alone or together, and filters run as each award is read so only matches reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{
"awardType": "contracts",
"spendingLevel": "awards",
"maxItems": 10
}
A larger pull:
{
"awardType": "contracts",
"spendingLevel": "awards",
"maxItems": 200
}
Pricing
Pay-per-result: $0.16 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $16.00 |
| 1,000 results | $160.00 |
| 10,000 results | $1600.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the USAspending Awards Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to USAspending.gov through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/usaspending-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check that your filters are not too restrictive. Try removing one filter at a time, starting with the date range or award amount range. Also verify that your keyword or recipient name matches the exact phrasing used on USAspending.gov.
Why are my NAICS or PSC code filters not working?
Make sure you are entering the numeric code only, without descriptions. For example, use '336411' rather than 'Aircraft Manufacturing'. The Actor passes codes directly to the USAspending API.
The run stopped before collecting all awards I expected.
Check the Maximum awards setting. If it is set lower than the total available matches, the Actor will stop when it reaches that number. Increase the limit and re-run.
Why do some awards show a zero dollar amount?
Some award records on USAspending.gov have a zero or null obligated amount, especially IDVs that are umbrella contracts with task orders awarded separately. This is expected behavior from the source data.
Can I filter by U.S. state instead of country?
The current input schema supports country-level filtering for recipient location and place of performance. For state-level filtering, you can export the full dataset and filter locally, or use the keyword field to search for state names in the location text.
FAQ
| Question | Answer |
|---|---|
| Do I need a USAspending.gov API key or login? | No. This Actor reads the public search results directly. You do not need to register an account or obtain an API key. |
| How many awards can I collect in one run? | You can set the maximum up to 1,000,000 awards per run. The Actor will paginate through results until it hits your limit or exhausts the matches. |
| Can I filter by a specific company name? | Yes. Use the Recipient field to enter a company name, UEI, or DUNS number exactly as it appears on USAspending.gov. |
| What is the difference between Awards and Sub-Awards? | Awards are prime contracts, grants, loans, and other direct obligations from the federal government. Sub-awards are funds that flow from a prime recipient to a sub-recipient. Choose the spending level in the input settings. |
| Can I search by NAICS or PSC code? | Yes. Enter one or more NAICS codes or PSC codes in the dedicated fields, and the Actor will return only awards with those classifications. |
| Does this Actor handle the USAspending Advanced Search date format? | Yes. Enter dates as YYYY-MM-DD in the Start Date and End Date fields, and the Actor translates them into the correct query parameters. |
| Can I filter by recipient type, like small business or veteran-owned? | Yes. The Recipient Type field includes every category from the USAspending website, including 8(a), HUBZone, women-owned, veteran-owned, and many more. |
| What export formats are supported? | You can export your dataset in CSV, JSON, Excel, or XML from the Apify platform. |
| Can I schedule this Actor to run automatically? | Yes. Use Apify's scheduler to run the Actor daily, weekly, or on any custom cron schedule to keep your federal spending data current. |
| Does this Actor include attachment URLs or solicitation documents? | This Actor returns the award metadata as shown on USAspending.gov search results. It does not download attached documents or solicitation files. |
Related actors
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by U.S. Department of the Treasury. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
Input
| Field | Type | What it does | Default |
|---|---|---|---|
| keywords | array | Matches the first Advanced Search filter. Use phrases exactly as you would in the UI (e.g., "shipbuilding", "cyber security"). | not set |
| recipients | array | Exactly the same box you use in Advanced Search โ Recipient. Enter names, UEIs, or DUNS values: each entry should match what you would type in the UI. | not set |
| awardId | array | Equivalent to the Award ID filter. Add PIIDs, FAINs, or URIs (e.g., "N0002417C2100"). | not set |
| startDate | string | Advanced Search โ Time Period โ Date Range. Enter YYYY-MM-DD (leave empty to include all data). | not set |
| endDate | string | Advanced Search โ Time Period โ Date Range. Enter YYYY-MM-DD (leave empty to include all data). | not set |
| awardAmountMin | number | Minimum award amount in dollars. Leave empty for no minimum. | not set |
| awardAmountMax | number | Maximum award amount in dollars. Leave empty for no maximum. | not set |
| locations | array | Matches the Recipient Location accordion. Enter country names. | not set |
| placeOfPerformanceLocations | array | Same as the Place of Performance filter. Enter country names. | not set |
| awardingAgencies | array | Matches the Awarding Agency tab. Enter agency names (e.g., "Department of Energy"). | not set |
| fundingAgencies | array | Matches the Funding Agency tab. Enter agency names (e.g., "Department of Transportation"). | not set |
| recipientType | array | Same as the Recipient Type multi-select. Pick one or more of the available categories. | not set |
| awardType | string (6 options) | Mirrors the Award Type accordion, which groups the checkboxes for Contracts, Grants, Loans, IDVs, Direct Payments, and Other Financial Assistance. | contracts |
| spendingLevel | string (2 options) | Same toggle as the site (Awards vs Sub-Awards). | awards |
| naicsCodes | array | Use the same codes you would select in the NAICS accordion (e.g., "336411" for Aircraft Manufacturing). | not set |
| pscCodes | array | Product and Service Codes (PSC). Use the same codes you would select in the PSC accordion (e.g., "1520" for Aircraft, Rotary Wing). | not set |
| sort | string (13 options) | Matches the Sort By drop-down in Advanced Search. | Award Amount |
| order | string (2 options) | Asc/Desc order, just like the UI toggle. | desc |
| maxItems | integer | How many awards to collect per run. | 10 |
Pricing
from $8.00 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| Actor Start | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). | $0.05 to $0.16 |
| Result | Single result in the default dataset. | $0.008 to $0.012 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
API
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~usaspending-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"helloWorld": 123
}' Examples
Input that runs as-is.
{
"helloWorld": 123
} Reviews
Rated 5.0 out of 5 across 1 review. Read them on Apify.
Issues
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
