USASpending API Alternative | Federal Contracts | $1 / 1K
Pricing
from $0.70 / 1,000 award scrapeds
USASpending API Alternative | Federal Contracts | $1 / 1K
Federal contracts, grants and loans data from USASpending.gov in flat rows. No API key, no login. Filter by recipient, agency, award type or amount. Incremental mode returns only new or modified awards. $1 per 1,000 rows.
Pricing
from $0.70 / 1,000 award scrapeds
Rating
0.0
(0)
Developer
Hriday Rungta
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Federal contracts, grants, loans and payments from USASpending.gov as a flat, ready-to-use dataset. No API key, no login, no browser, and no pagination code to write.
This Actor calls USASpending.gov's official public API (api.usaspending.gov) for you and returns one clean row per federal award. Search by recipient company, awarding agency, award type and amount, then export to CSV, JSON, Excel or Google Sheets, or call it from your own app. Its main extra over hitting the API yourself: an incremental mode that returns only awards that are new or modified since your last run.
What you can do with this federal spending data
- Find federal contracts won by a company. Competitor research, due diligence, vendor checks, "who is winning government contracts in my niche".
- See which grants an agency actually paid out. Recipient, amount and dates for NSF, NIH, HHS and every other agency, across all federal grants. Pairs with Grants.gov Scraper, which lists grants that are still open.
- Track federal contracts data over time. Run on a schedule in
changesmode and get only new awards plus modifications to existing ones. - Spot large awards. Filter by minimum and maximum award amount, for example Department of Defense contracts above $100 million.
- Build a federal contracts or grants database for sales prospecting, journalism, policy research, GovCon BD, or an AI/RAG dataset.
- Look at federal loans and direct payments (for example SBA loans), not only contracts and grants.
Why use this instead of calling the USASpending API directly
USASpending's API is free and this Actor reads it, so be clear about what you are paying for.
| USASpending API directly | This Actor | |
|---|---|---|
| Cost | Free | $1.00 per 1,000 award rows |
| Setup | You write the request bodies, award-type code lists, paging and retries | Fill in a form or send one JSON input |
| Output | Nested JSON | One flat row per award, CSV/Excel/JSON ready |
| Tracking changes | You build it | mode: "changes" remembers your last run and returns only new or modified awards |
| Scheduling and alerts | You host it | Apify Schedules, webhooks, Make, n8n, Zapier |
If you only need a one-off export and are comfortable writing API calls, the free API is enough. If you want a recurring feed without maintaining code, this is the shortcut.
Input
| Input | Default | What it does |
|---|---|---|
awardTypeGroup | contracts | contracts, grants, loans, direct_payments or other |
recipientSearchText | blank | Recipient name contains this text, for example Boeing |
agencyName | blank | Exact top-tier awarding agency name, for example National Science Foundation |
minAwardAmount / maxAwardAmount | blank | Award amount bounds in USD |
mode | all | all = every match in the date window; changes = only new or modified since your last run |
postedSince | 90 days | Date window start for all mode. A date (2026-01-01) or a span (90 days) |
maxItems | 200 | Cost cap. You are billed once per row saved. Maximum 50,000 |
firstRunSince | 30 days | changes mode only: how far back the very first run looks. all backfills to FY2008 |
Example input: contracts won by a company
{"awardTypeGroup": "contracts","recipientSearchText": "Boeing","postedSince": "90 days","maxItems": 100}
Example input: new and modified grants from one agency, on a schedule
{"awardTypeGroup": "grants","agencyName": "National Science Foundation","mode": "changes","firstRunSince": "30 days"}
Output
One row per award:
{"awardId": "80MSFC20C0052","recipientName": "THE BOEING COMPANY","awardAmount": 2753683081,"awardingAgency": "National Aeronautics and Space Administration","awardingSubAgency": "National Aeronautics and Space Administration","startDate": "2019-10-16","endDate": "2029-02-28","description": "SPACE LAUNCH SYSTEM (SLS) STAGES PRODUCTION AND EVOLUTION CONTRACT (SPEC)","lastModifiedDate": "2026-10-16 10:30:43","awardType": "DEFINITIVE CONTRACT","awardTypeGroup": "contracts","usaspendingUrl": "https://www.usaspending.gov/award/CONT_AWD_80MSFC20C0052_8000_-NONE-_-NONE-"}
Real row from a test run (two ID fields, internalId and generatedInternalId, are left out of the example). The fields are awardId, recipientName, awardAmount, awardingAgency, awardingSubAgency, startDate, endDate, description, lastModifiedDate, awardType, awardTypeGroup, internalId, generatedInternalId and usaspendingUrl (a link to the official record).
Incremental mode tracks modifications, not just new awards
A federal award is not static once posted. A contract modification, a funding change on a grant, or a closeout updates the same award and moves its Last Modified Date, without changing the original start date. Filtering by start date alone would miss all of those.
mode: "changes" filters and sorts by Last Modified Date, so a recipient or agency you follow shows both new awards and material changes to existing ones. The Actor stores a bookmark per search (award type, recipient, agency) in a key-value store in your own Apify account, so each scheduled run continues where the last one stopped.
One detail worth knowing: USASpending filters by calendar day, not time of day. Re-running on the same day re-requests that whole day, so the Actor keeps a short list of award IDs it already returned for the boundary day and does not bill you for them twice.
Pricing
Pay per event: $0.001 per award row ($1.00 per 1,000). No start fee. You are charged once per row saved.
| Run | Rows | Cost |
|---|---|---|
Default maxItems | 200 | $0.20 |
| Example: 5,000 awards | 5,000 | $5.00 |
| Large export | 50,000 | $50.00 |
Set maxItems as your cost cap.
Integrations and scheduling
- Apify Schedules: run daily or weekly in
changesmode and get a fresh feed of new and modified awards. - Webhooks: trigger your own endpoint when a run finishes.
- Make, n8n, Zapier: push new awards into Slack, email, Airtable or a CRM.
- Google Sheets: export the dataset or sync it with the Apify integration.
- API and MCP: call the Actor from code or from an AI agent and read the dataset as JSON.
Limits worth knowing
- Data is award-level (one row per award), not transaction-level. It does not include sub-awards, NAICS or PSC codes, place of performance, or recipient identifiers such as UEI.
- For
loans,awardAmountcan be empty (null): USASpending reports loan amounts in different fields that this Actor does not read. Contracts and grants have amounts. agencyNamemust match USASpending's top-tier agency name exactly.recipientSearchTextis USASpending's own text match. A search forBoeingreturned awards to Boeing and also to a related entity (a Boeing subsidiary), so checkrecipientNamein the results, and a short or generic string can match unrelated recipients.- Coverage and freshness are whatever USASpending.gov publishes. This Actor does not add or correct federal data.
- Maximum 50,000 rows per run.
FAQ
Is there a USASpending API alternative that returns a flat table?
This Actor is that: same official source, but input is a form and output is one flat row per award. It does not replace the API for advanced queries the API supports beyond the inputs above.
How do I get federal contracts data for one company?
Set awardTypeGroup to contracts and recipientSearchText to the company name. Raise postedSince (for example 365 days) for a longer history.
How do I get federal grants data?
Set awardTypeGroup to grants, optionally with an agencyName. For grants that are still open for applications, use Grants.gov Scraper instead.
Can it alert me when a contract is modified?
Yes. Schedule it in changes mode and connect the dataset or a webhook to Slack, email or your CRM. Modifications show up as the same awardId with a newer lastModifiedDate.
Does it need a login or API key?
No. USASpending's API is public.
Is it legal to use this data?
USASpending.gov publishes this data openly under federal transparency requirements. You are responsible for how you use it.
What is the difference between USASpending and SAM.gov?
USASpending shows awards that were already made (who got the money). SAM.gov lists contract opportunities that are open for bids. This Actor covers USASpending only.
Related Actors
- Grants.gov Scraper (by this developer): open federal grant opportunities, the pre-award side of this data.
- SEC EDGAR Filings Scraper (by this developer): filings from public companies that also win federal contracts.
- USAspending Awards Scraper by parseforge (third party): another Actor for USASpending award data.
- SAM.gov Contract Opportunities Scraper by jungle_synthesizer (third party): open federal contract opportunities on SAM.gov.