Research Grant Aggregator avatar

Research Grant Aggregator

Pricing

Pay per usage

Go to Apify Store
Research Grant Aggregator

Research Grant Aggregator

Search NIH, NSF, Grants.gov & USASpending in one query. Get unified grant data with PI names, award amounts, organizations & keywords. Perfect for universities, grant writers, VCs tracking funded research. No API keys needed—all public federal data.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

CQ

CQ

Maintained by Community

Actor stats

1

Bookmarked

15

Total users

1

Monthly active users

7 days ago

Last modified

Share

Search NIH, NSF, Grants.gov & USASpending in one query. Get unified, normalized, deduplicated grant data ready for analysis.

What This Actor Does

Search 4 Federal Sources at Once

  • NIH RePORTER (funded research projects)
  • NSF Awards (funded research awards)
  • Grants.gov (open & forecasted funding opportunities)
  • USASpending.gov (federal grant awards)

Get Clean, Unified Output

  • Consistent schema across all sources
  • Automatic cross-source deduplication
  • Ready for Excel/CSV/JSON export

Each selected source is queried live over its official public API, results are normalized into one schema, deduplicated, sorted by award amount (descending), and capped at your maxResults.

What's New (v1.2)

  • Incremental Mode — remembers grant IDs seen in prior runs and returns only NEW grants. Pair it with a schedule to get a live new-grants feed for a saved keyword search.
  • Webhook Alerts — optionally POST a JSON alert (Slack/Discord/Zapier compatible) when incremental mode finds new grants.

Quick Start

Find CRISPR grants over $500K:

{
"keywords": ["CRISPR", "gene editing"],
"minAmount": 500000
}

Search a specific university:

{
"organizationName": "Stanford University",
"sources": ["NIH", "NSF"]
}

Filter by state and fiscal year:

{
"keywords": ["artificial intelligence"],
"state": "CA",
"fiscalYears": ["2024", "2025"]
}

Input Options

ParameterTypeDefaultDescription
sourcesarrayall 4Which sources to search: NIH, NSF, GRANTS_GOV, USA_SPENDING
keywordsarraySearch terms for grant titles and abstracts
organizationNamestringFilter by recipient organization (university, hospital, institution). Applied by NIH, NSF, and USASpending.
piNamestringFilter by principal investigator name. Applied by NIH and NSF.
statestringTwo-letter US state code (e.g., CA, NY). Applied by NIH, NSF, and USASpending.
minAmountintegerMinimum award amount in USD (also applied as a post-fetch filter across all sources)
maxAmountintegerMaximum award amount in USD (also applied as a post-fetch filter across all sources)
fiscalYearsarrayFilter by fiscal year(s), e.g., ["2024", "2025"]. Applied by NIH, NSF, and USASpending.
agencystringFilter by funding agency (e.g., NIH, NSF, DOE, DOD). Non-NIH/NSF values are applied as a post-fetch filter.
activeOnlybooleanfalsePrefer currently active grants / posted opportunities
maxResultsinteger100Max grants fetched per source and returned in total (max 10,000). Each source is queried for up to this many, then results are combined, deduplicated, and capped at this number.
includeAbstractsbooleantrueInclude full grant abstracts/synopses in output
incrementalModebooleanfalsePersist grant IDs seen in prior runs and return only NEW grants. Great with a schedule for a live new-grants feed.
alertWebhookUrlstringOptional: POST a JSON alert when incremental mode finds new grants (Slack/Discord/Zapier compatible)

Output Format

Each dataset item is a normalized grant. Fields vary slightly by source (see notes below):

{
"id": "NIH-R01GM123456",
"source": "NIH",
"sourceId": "R01GM123456",
"title": "Novel CRISPR Applications in Cancer Therapy",
"abstract": "This project aims to...",
"awardAmount": 1250000,
"fiscalYear": 2024,
"startDate": "2024-01-01",
"endDate": "2028-12-31",
"organization": {
"name": "Stanford University",
"city": "Stanford",
"state": "CA",
"country": "USA",
"type": "university"
},
"principalInvestigator": {
"name": "Jane Smith",
"email": "jsmith@stanford.edu"
},
"coPIs": [],
"agency": "NIH",
"institute": "NCI",
"program": "",
"keywords": ["CRISPR", "cancer"],
"lastUpdated": "2026-07-11T00:00:00.000Z",
"url": "https://reporter.nih.gov/project-details/..."
}

Source-specific fields:

  • Grants.gov items describe opportunities, not awards, and add isOpportunity, opportunityStatus, docType, awardCeiling, awardFloor, and applicationDeadline. They have no PI, and awardAmount reflects the award ceiling/floor.
  • NSF, Grants.gov, and USASpending items include a cfda (Assistance Listing) number.
  • Records merged across sources during deduplication include a mergedFrom array.
  • abstract is omitted when includeAbstracts is false.
  • If a search matches nothing, a single informational record { "noResults": true, "message": "..." } is pushed so the run is clearly distinguishable from a failure.

Run metadata (source counts, totals, averages, execution time, and any per-source errors) is written to the key-value store under metadata and to OUTPUT.

Data Sources

SourceData TypeAPI
NIH RePORTERFunded research projects (with PI, institute, abstract)reporter.nih.gov API v2
NSF AwardsFunded research awards (with PI, program)api.nsf.gov Awards API
Grants.govOpen & forecasted funding opportunities (not awarded grants)api.grants.gov search2
USASpendingFederal grant awards (assistance types 02–05)api.usaspending.gov v2

Use Cases

  • Competitive Intelligence: See what grants organizations are receiving
  • Research Planning: Find funding opportunities and awards in your field
  • Due Diligence: Cross-check grant funding claims against federal records
  • Market Research: Analyze federal R&D funding patterns
  • Academic Analysis: Study funding by institution, state, or topic

Limitations

  • Sources covered: Only the four US federal sources above. No private foundations, corporate, state/local, or international funders are included.
  • Grants.gov = opportunities, not awards: Grants.gov returns open/forecasted funding opportunities (with ceilings/floors and deadlines), not awarded grants, and includes no PI. It also may return 0 results from datacenter IPs due to its API restrictions; NIH, NSF, and USASpending generally work from all locations.
  • Result & rate limits: maxResults defaults to 100 (max 10,000) and caps both per-source fetching and the final combined total. NIH is rate-limited to ~1 request/second; NIH returns up to 500 per request, NSF 25 per page, USASpending 100 per page, Grants.gov 25 per page.
  • Filter coverage varies by source: Not every filter is supported by every API. minAmount/maxAmount and non-NIH/NSF agency values are applied as post-fetch filters, so they narrow results but do not expand cross-source coverage. piName/organizationName/state/fiscalYears are honored only by the sources that support them (see the Input Options notes).
  • Freshness: Every run queries the live APIs. lastUpdated is the fetch timestamp, not the source's own record-update time; results are a live snapshot, not a historical archive.
  • Deduplication is heuristic: Duplicates are merged using a fuzzy key (normalized title, organization, PI last name, amount bucket, fiscal year). Near-identical records may occasionally be over- or under-merged.
  • Incremental mode retention: Seen grant IDs are stored in the key-value store and capped at the most recent 10,000, so very large long-running searches may eventually re-surface previously seen grants.
  • Nullable fields: fiscalYear, startDate, endDate, and PI details can be null/empty when a source does not provide them.

All data is U.S. Federal Government public domain. No authentication required. Commercial use permitted.

"U.S. Federal data available through Data.gov is offered free and without restriction." — Data.gov Privacy Policy