Grants.gov Federal Grant Scraper
parseforge/grants-gov-scraper
AutomationDeveloper toolsOther
Scrapes federal grant opportunities from Grants.gov by keyword, agency, category, eligibility, and close date. Returns each grant as a flat row with optional full details, contact info, and attachments.
- Total users
- 4
- Monthly active
- 3
- Total runs
- 545
- Bookmarked
- 1
- Rating
- Not rated yet
- Last modified
- 9 days ago
Overview
Grants.gov Federal Grant Scraper
Scrape federal grant opportunities from Grants.gov by keyword, agency, category, or eligibility, up to a million per run. Each grant comes with its title, agency, funding amount, close date, and status. Export to CSV, JSON, Excel, or XML.
Finding federal grants on Grants.gov means sifting through thousands of postings with limited search tools. This scraper reads the public opportunity listings directly, filters them by agency, funding category, eligibility, and date range, and returns each match in one fixed schema. No API key or registration required.
| Who uses it | What they scrape Grants.gov for |
|---|---|
| Nonprofit grant writers | Build a pipeline of open health and education grants closing this quarter. |
| University research administrators | Monitor NSF and NIH postings for faculty funding opportunities. |
| Small business consultants | Find SBIR and STTR grants from DOD and DOE for their clients. |
| Market researchers | Track which federal agencies are funding climate and energy projects. |
What it does
This Actor collects federal grant opportunities from Grants.gov by keyword search and returns each one as a flat row with title, agency, status, close date, and optional full details.
- ๐ Keyword search: Use AND/OR operators to narrow grants by topic, like 'rural health' or 'AI AND cybersecurity'.
- ๐๏ธ Agency filter: Target specific agencies with their code, such as HHS, NSF, DOE, or USDA.
- ๐ Date range filter: Collect only grants closing within a specific window using close date from and to fields.
- ๐ Status filter: Choose from posted, forecasted, closed, or archived opportunities.
- ๐ Full details mode: Optionally fetch the complete description, eligibility criteria, contact info, and attachment links for each grant.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with Grants.gov data
๐ Build a weekly grant digest.
A nonprofit consultant runs the scraper every Monday with keywords 'community health' and status 'posted' to email a curated list of open opportunities to their clients.
๐ Analyze federal funding trends.
A policy researcher collects a year of archived DOE grants with the 'energy' category to chart which technologies received the most funding.
๐ฏ Find grants for a specific applicant type.
A tribal government grant writer filters by eligibility code 06 (Native American) and agency BIA to see only relevant postings.
โฐ Monitor approaching deadlines.
A university research office sets a close date range for the next 30 days and keyword 'engineering' to alert faculty before applications close.
Why choose this scraper
| What you get | |
|---|---|
| No API key needed | Reads public Grants.gov listings directly, no registration or OAuth. |
| Up to 1M grants per run | Collect large datasets for historical analysis or broad monitoring. |
| Fixed flat schema | Every grant returns the same fields, ready for CSV, JSON, Excel, or XML export. |
| Full detail extraction | Optionally pull full descriptions, eligibility text, and attachment links. |
How it compares
This actor focuses on direct, high-volume Grants.gov scraping with full detail extraction, while Scholarship Intel combines grants with university data and Funding Intel adds AI-powered risk monitoring across multiple sources.
| Feature | ParseForge | Scholarship Intel | Funding Intel |
|---|---|---|---|
| Direct Grants.gov scraping | Yes, reads public search and detail pages | Yes, real-time Grants.gov opportunities | Not listed |
| Full grant detail extraction | Yes, optional full description, eligibility, contacts, and attachments | Not listed | Not listed |
| Filter by agency code | Yes, filter by agency code like HHS, NSF, DOE | Not listed | Not listed |
| Filter by eligibility code | Yes, filter by applicant type like nonprofits or state governments | Not listed | Not listed |
| Up to 1,000,000 grants per run | Yes | Not listed | Not listed |
| University and scholarship data | Not listed | Yes, 6,400+ US institutions | Not listed |
| AI-powered risk and compliance monitoring | Not listed | Not listed | Yes, across 14+ government sources |
Configure the run
Drive the Actor with a keyword search and optional filters for agency, funding category, eligibility, status, and close date range. Filters run as each grant is read so only matches reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{
"keywords": "health",
"maxItems": 10
}
A larger pull:
{
"keywords": "health",
"maxItems": 200
}
Pricing
Pay-per-result: $0.0075 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $0.75 |
| 1,000 results | $7.50 |
| 10,000 results | $75.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 Grants.gov Federal Grant 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 Grants.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/grants-gov-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 keyword is not too narrow and that your filters, especially status and close date range, are not excluding all grants. Try running with only a keyword and status set to 'All' first, then add filters back one at a time.
The run is taking a long time with full details enabled.
Full details mode visits each grant's page individually, which adds time. Reduce the maximum grants or disable full details if you only need summary data.
My agency filter is not working.
Agency codes are case-sensitive abbreviations. Use the official code like 'HHS' not 'Health and Human Services'. Check Grants.gov for the correct agency code.
The close date filter is returning unexpected grants.
Dates must be in MM/DD/YYYY format. The 'Close Date From' is inclusive and 'Close Date To' is inclusive. Make sure your date range covers the period you intend.
I am only getting a few grants but I know there are more.
Increase the 'Maximum grants' value. The scraper stops when it hits this limit, even if more matching grants exist.
FAQ
| Question | Answer |
|---|---|
| Do I need a Grants.gov account or API key to use this? | No. The scraper reads the public search results and detail pages on Grants.gov directly. No login, API key, or registration is required. |
| What data does each grant row include? | Every row returns the grant title, agency, funding opportunity number, status, posted date, close date, and a summary. When you enable full details, it also includes the full description, eligibility information, contact details, and attachment links. |
| Can I filter by who is eligible to apply? | Yes. Use the eligibility filter with codes like 12 for nonprofits, 00 for state governments, 06 for Native American tribes, or 99 for unrestricted opportunities. |
| How do I search for grants from a specific agency? | Enter the agency code in the Agency field. Common codes include HHS (Health and Human Services), NSF (National Science Foundation), DOE (Energy), and USDA (Agriculture). |
| What does the full details option do? | When enabled, the scraper visits each grant's detail page to extract the full description, eligibility text, agency contact information, and links to any attached files. This takes longer but provides much richer data. |
| Can I search for multiple keywords at once? | Yes. The keyword field supports AND and OR operators. For example, 'rural AND health' finds grants containing both terms, while 'solar OR wind' finds grants containing either. |
| What statuses can I filter by? | You can filter by posted (currently open), forecasted (upcoming), closed (past deadline), or archived. Choose 'All' to return grants in any status. |
| How many grants can I collect in one run? | You can set the maximum up to 1,000,000 grants per run. The scraper will stop once it reaches that number or there are no more matching results. |
| What export formats are supported? | Your dataset can be exported to CSV, JSON, Excel, or XML directly from the Apify platform. |
| Can I schedule this scraper to run automatically? | Yes. Use Apify's scheduler to run the actor daily, weekly, or on a custom cron schedule and receive new grant listings automatically. |
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 Grants.gov. 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 | string | Search for grants containing these keywords (e.g., 'health', 'education', 'climate'). Supports AND/OR operators. | health |
| maxItems | integer | How many grants to collect per run. | 10 |
| oppStatuses | string (5 options) | Filter by grant status. | posted |
| agencies | string | Filter by federal agency code (e.g., 'HHS', 'DOE', 'EPA', 'NSF', 'USDA', 'DOD', 'NASA'). Leave empty for all. | not set |
| fundingCategories | string | Filter by category code. Examples: HL (Health), ED (Education), EN (Energy), ST (Science/Technology), AG (Agriculture), ENV (Environment). | not set |
| eligibilities | string | Filter by applicant type code. Examples: 25 (Others), 99 (Unrestricted), 12 (Nonprofits), 00 (State govts), 06 (Native American). | not set |
| closeDateStart | string | Only include grants closing on or after this date (MM/DD/YYYY). | not set |
| closeDateEnd | string | Only include grants closing on or before this date (MM/DD/YYYY). | not set |
| includeDetails | boolean | Fetch full description, eligibility info, contact details, and attachments for each grant. Slower but much more data. | false |
Pricing
from $7.00 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| result | Single result in the default dataset. | $0.007 to $0.0075 |
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~grants-gov-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
No reviews yet. Be the first.
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.
