NSF Research Awards Scraper avatar

NSF Research Awards Scraper

Pricing

Pay per event

Go to Apify Store
NSF Research Awards Scraper

NSF Research Awards Scraper

Extract NSF award and grant records from Research.gov with PI, institution, funding, dates, program, and raw award data.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 hours ago

Last modified

Categories

Share

Extract public National Science Foundation award and grant records from Research.gov into clean Apify datasets for research intelligence, grant monitoring, prospecting, and academic market analysis.

What does NSF Research Awards Scraper do?

This actor searches the public NSF / Research.gov Award API and exports normalized award records.

It captures award titles, abstracts, principal investigators, recipient institutions, obligated funding, dates, program data, and source URLs.

Use it when you need repeatable NSF grant data without manually clicking through Award Search pages.

Who is it for?

๐Ÿซ University research offices tracking recent awards by topic, state, institution, or program.

๐Ÿ’ผ Grant consultants building prospect lists of funded PIs and active research teams.

๐Ÿงช R&D and academic sales teams monitoring funded labs and emerging research areas.

๐Ÿ“Š Market intelligence teams analyzing NSF funding trends by geography or program.

Why use it?

The actor turns public award search results into structured rows that can be exported as JSON, CSV, Excel, XML, or RSS from Apify.

It uses the public API directly, so runs are lightweight and do not need browser automation.

Raw API records can be preserved for audit trails and downstream custom mapping.

What data can you extract?

The dataset includes award IDs, titles, abstracts, agency, awardee institution, city, state, country, UEI, principal investigators, PI emails when available, funding amounts, dates, program names, directorate/division codes, performance location, and source links.

Optional rawAward keeps the original Research.gov response object.

How much does it cost to scrape NSF research awards?

Pricing is pay-per-event: a $0.005 run-start charge plus a per-award record charge.

The formula-derived BRONZE price is $0.000023219 per saved award, with lower unit prices on higher Apify tiers (SILVER $0.000018111, GOLD $0.000013932, PLATINUM/DIAMOND $0.00001). The input prefill is intentionally small enough for a cheap first test, and larger exports scale linearly by saved award record.

A 100-award validation run used about $0.00056 of platform resources before Apify billing margin, so the actor remains profitable at the published PPE rates.

How to use

  1. Enter a keyword such as artificial intelligence, climate, quantum, CAREER, or SBIR.

  2. Optionally add award date range, awardee state, performance state, funding program, agency, or program officer filters.

  3. Set maxItems to the number of award records you want.

  4. Run the actor and export the dataset in your preferred format.

Input options

keyword: free-text NSF award search.

dateStart/dateEnd: Research.gov award date bounds in MM/DD/YYYY format.

awardeeStateCode: two-letter state for recipient institution.

performanceStateCode: two-letter state for where the work is performed.

fundProgramName: program text such as Computer, Biology, CAREER, or SBIR.

agency: normally NSF.

programOfficerName: optional NSF program officer name.

maxItems: maximum awards to save.

includeRaw: include the original API record.

Output example

Each result is one NSF award record with normalized fields and a source URL.

Example fields: awardId, title, abstractText, awardeeName, primaryPiName, principalInvestigators, fundsObligatedAmount, awardDate, startDate, expirationDate, fundProgramName, directorate, division, performanceStateCode, sourceUrl, scrapedAt, rawAward.

Tips for better results

Use specific topic phrases when broad terms return too many awards.

Combine keyword with dateStart and dateEnd for recent-award monitoring.

Use awardeeStateCode for institution prospecting by state.

Use fundProgramName for program-focused workflows such as CAREER or SBIR-style research.

Integrations

Send the dataset to Google Sheets to maintain a living prospect list.

Use Apify webhooks to trigger CRM enrichment after each scheduled monitoring run.

Export JSON into a data warehouse for grant trend dashboards.

Connect with automation-lab actors for website/contact enrichment after identifying institutions and PIs.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/nsf-research-awards-scraper').call({ keyword: 'quantum computing', maxItems: 100 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("automation-lab/nsf-research-awards-scraper").call(run_input={"keyword": "climate", "maxItems": 100})
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items[0])

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab/nsf-research-awards-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keyword":"artificial intelligence","maxItems":100}'

Use with MCP

Claude Desktop, Claude Code, Cursor, and VS Code can call this actor through Apify MCP with the actor tool URL https://mcp.apify.com?tools=automation-lab/nsf-research-awards-scraper.

For Claude Code, add the remote MCP server with this command:

$claude mcp add --transport http apify-nsf-research-awards "https://mcp.apify.com?tools=automation-lab/nsf-research-awards-scraper"

For Claude Desktop, Cursor, or VS Code, add this JSON server configuration and keep your Apify token in the environment used by the app:

{
"mcpServers": {
"apify-nsf-research-awards": {
"url": "https://mcp.apify.com?tools=automation-lab/nsf-research-awards-scraper",
"headers": {
"Authorization": "Bearer ${APIFY_TOKEN}"
}
}
}
}

Example prompt: "Find 100 recent NSF artificial intelligence awards in California and summarize the top funded institutions."

Another prompt: "Export NSF CAREER awards from 2024 and identify principal investigators with university affiliations."

Scheduling and monitoring

Schedule weekly or monthly runs to monitor newly funded NSF awards by keyword or program.

Keep maxItems aligned with the expected result volume for your search.

Use date filters to avoid reprocessing the same historical awards.

Data quality notes

Research.gov field availability can vary by record.

The actor normalizes missing fields defensively and keeps rawAward when requested.

PI emails and phone fields are public API fields when present, but not guaranteed for every award.

Legality and responsible use

This actor uses publicly available Research.gov award data.

Always follow applicable laws, Apify terms, and your organization's data governance policies.

Avoid using contact information for spam or prohibited outreach.

FAQ

Q: Do I need an NSF API key? A: No, the public Research.gov Award API is accessible without a paid key for this workflow.

Q: Why are some PI emails missing? A: The public API does not include every contact field for every award.

Q: Why did a broad keyword stop at maxItems? A: maxItems is a user-set run limit; increase it for larger exports.

Q: Can I filter by state? A: Yes, use awardeeStateCode or performanceStateCode.

Explore other automation-lab actors for government data, grant intelligence, contact enrichment, and organization research workflows.

Related actor links should use the automation-lab namespace after publication.

Field reference

  • awardId โ€” normalized NSF award field for downstream analysis.

  • title โ€” normalized NSF award field for downstream analysis.

  • abstractText โ€” normalized NSF award field for downstream analysis.

  • agency โ€” normalized NSF award field for downstream analysis.

  • awardeeName โ€” normalized NSF award field for downstream analysis.

  • awardeeCity โ€” normalized NSF award field for downstream analysis.

  • awardeeStateCode โ€” normalized NSF award field for downstream analysis.

  • awardeeCountryCode โ€” normalized NSF award field for downstream analysis.

  • awardeeUeiNumber โ€” normalized NSF award field for downstream analysis.

  • primaryPiName โ€” normalized NSF award field for downstream analysis.

  • principalInvestigators โ€” normalized NSF award field for downstream analysis.

  • piEmails โ€” normalized NSF award field for downstream analysis.

  • programOfficerName โ€” normalized NSF award field for downstream analysis.

  • programOfficerEmail โ€” normalized NSF award field for downstream analysis.

  • fundsObligatedAmount โ€” normalized NSF award field for downstream analysis.

  • estimatedTotalAmount โ€” normalized NSF award field for downstream analysis.

  • awardDate โ€” normalized NSF award field for downstream analysis.

  • startDate โ€” normalized NSF award field for downstream analysis.

  • expirationDate โ€” normalized NSF award field for downstream analysis.

  • activeAward โ€” normalized NSF award field for downstream analysis.

  • historicalAward โ€” normalized NSF award field for downstream analysis.

  • fundProgramName โ€” normalized NSF award field for downstream analysis.

  • primaryProgram โ€” normalized NSF award field for downstream analysis.

  • programElementCode โ€” normalized NSF award field for downstream analysis.

  • programReferenceCode โ€” normalized NSF award field for downstream analysis.

  • directorate โ€” normalized NSF award field for downstream analysis.

  • division โ€” normalized NSF award field for downstream analysis.

  • organizationName โ€” normalized NSF award field for downstream analysis.

  • performanceCity โ€” normalized NSF award field for downstream analysis.

  • performanceStateCode โ€” normalized NSF award field for downstream analysis.

  • performanceCountryCode โ€” normalized NSF award field for downstream analysis.

  • performanceLocation โ€” normalized NSF award field for downstream analysis.

  • sourceUrl โ€” normalized NSF award field for downstream analysis.

  • queryKeyword โ€” normalized NSF award field for downstream analysis.

  • scrapedAt โ€” normalized NSF award field for downstream analysis.

  • rawAward โ€” normalized NSF award field for downstream analysis.

Troubleshooting

  • If the API rejects a filter, remove the newest structured filter and rerun with keyword/date filters first.

  • If your dataset is empty, broaden the keyword or remove state/program constraints.

  • If you need exact API auditability, keep includeRaw enabled.

Changelog

  • 0.1 โ€” Initial private build for NSF award search exports.