Grants.gov Federal Grant Opportunities Monitor avatar

Grants.gov Federal Grant Opportunities Monitor

Pricing

Pay per event

Go to Apify Store
Grants.gov Federal Grant Opportunities Monitor

Grants.gov Federal Grant Opportunities Monitor

Unofficial; not affiliated with Grants.gov or HHS. Search and monitor U.S. federal grant opportunities (forecasts and open NOFOs) from the official Grants.gov API: deadlines, award amounts, eligibility. Only new and changed opportunities.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Michael Rice

Michael Rice

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Unofficial tool. Not affiliated with or endorsed by Grants.gov, the U.S. Department of Health and Human Services, or any federal agency.

Find and track U.S. federal funding opportunities straight from the official Grants.gov public API: forecasts of upcoming programs and notices of funding opportunity (NOFOs) that are open now. Each row has the deadline, days left, award ceiling and floor, estimated total funding, expected number of awards, eligible applicant types and a plain-text description. No login, no API key, no proxies. In monitor mode it returns only opportunities that are new, or whose status, deadline, document type or title changed since your last run, so a daily schedule becomes a funding update feed for nonprofits, universities, local governments, tribes, small businesses and grant consultants.

What you get

  • One row per opportunity: opportunity ID and number, title, agency, status (forecasted, posted, closed, archived), posting date, close date, days until close, Assistance Listing (CFDA) numbers and the Grants.gov link.
  • Details (includeDetails, on by default): award ceiling and floor, estimated total funding, expected number of awards, cost sharing, funding instruments, funding categories, eligible applicant types, eligibility notes, description (first 4,000 characters), estimated post and close dates for forecasts, fiscal year, archive date, last-updated date, version and moreInfoUrl (the agency's own link for the opportunity, when given). If Grants.gov fails to return details for a row, that row still comes back with the basic fields and detailsUnavailable: true.
  • Filters: keywords, status, agency (a top-level code like HHS includes all sub-agencies), eligible applicant type, funding category, funding instrument, Assistance Listing numbers and "posted in the last N days".
  • Sorting: newest posted, closing soonest, or keyword relevance.
  • Monitor mode (onlyNewSinceLastRun):
    • The first run is a baseline. It returns up to maxItems of the newest matches and remembers every current match (up to the 5,000 newest).
    • Later runs return only new opportunities and changed ones (status, close date, forecast-to-posted, title or opportunity number). Changed rows carry previous and changedFields.
    • Closures show up as a changed status only when closed is among the selected statuses. With the default (forecasted and posted), an opportunity that closes simply drops out of the results.
    • Monitor mode scans at most the 5,000 newest matches. Forecasted and posted together are usually well under that, but closed or archived can match tens of thousands, so add keywords, agencies or other filters when you select them. If the cap is hit, truncated is true and the truncationNote says older matches aren't tracked.
  • Exact truncated flag. It's true only when more matching rows existed than were delivered. In monitor mode, rows cut by maxItems or the run's max charge are delivered on the next run (rows beyond the 5,000-match scan cap are not).
  • Compact output (outputFormat: "compact") for spreadsheets and AI agents.

Input example

{
"keywords": "climate resilience",
"opportunityStatuses": ["forecasted", "posted"],
"eligibilities": ["12"],
"maxItems": 20,
"includeDetails": true
}
  • Agency codes: use the codes Grants.gov shows, such as NSF, HHS, USDA, DOE, EPA, HHS-NIH11 or USDA-NIFA.
  • Eligibility codes: for example 12 = 501(c)(3) nonprofits, 23 = small businesses, 06 = public universities, 00 = state governments, 07 = federally recognized tribes. The input form lists them all.
  • Daily updates: set onlyNewSinceLastRun: true, pick your filters and add a schedule. Changing the filters starts a new baseline.

Output example (full row, shortened)

{
"opportunityId": "358004",
"opportunityNumber": "25-531",
"title": "Cybersecurity Innovation for Cyberinfrastructure (CICI)",
"agencyCode": "NSF", "agencyName": "U.S. National Science Foundation",
"status": "posted", "documentType": "synopsis",
"postedDate": "2025-01-04", "closeDate": "2027-01-20", "daysUntilClose": 88,
"assistanceListings": ["47.075"],
"url": "https://www.grants.gov/search-results-detail/358004",
"awardCeiling": 1200000, "awardFloor": null, "estimatedTotalFunding": 12000000, "expectedNumberOfAwards": 20,
"costSharingRequired": false, "fundingInstruments": ["Grant"],
"fundingCategories": ["Science and Technology and other Research and Development"],
"eligibleApplicants": ["Others (see text field entitled \"Additional Information on Eligibility\" for clarification)"],
"eligibilityNotes": "...", "description": "...",
"archiveDate": "2027-02-19", "lastUpdated": "2026-10-05", "version": 8,
"moreInfoUrl": "https://www.nsf.gov/funding/opportunities/...",
"updateType": null, "changeHash": "..."
}

The run summary is saved to the OUTPUT record in the key-value store: row count, charged count, total matches, rows scanned, new/changed counts, request stats and the exact request bodies sent to Grants.gov.

Good to know

  • Amounts: Grants.gov uses 0 or "none" when an agency doesn't state an amount. Those come back as null, not 0.
  • Dates are calendar dates as Grants.gov publishes them (no time zone). daysUntilClose counts to the end of the close date in UTC. Always confirm the deadline and time in the official notice.
  • Privacy: the agency contact fields (name, email, phone) are never output. In the description and eligibility text, email addresses (including encoded and [at] forms) are replaced with [email removed] and US-format phone numbers with [phone removed]. Other contact details written in prose, such as a person's name, may remain. Use the Grants.gov link for contacts.
  • Monitor state is kept per filter set in a named key-value store (grants-gov-opportunities-monitor-state) in your own Apify account.
  • Request pacing: at least 250 ms between Grants.gov requests, retries on 429/5xx errors, and a cap of 1,200 requests per run. Details cost one extra request per row; turn includeDetails off for faster, lighter runs.
  • Coverage: whatever Grants.gov publishes through its public search API. Some agencies also post opportunities only on their own sites, and those aren't included.

Use with AI agents / MCP

This Actor works as a tool through Apify's MCP server (https://mcp.apify.com). Ask an agent things like "find open NSF or DOE grants for small businesses closing in the next 60 days". Use outputFormat: "compact" and a small maxItems to keep answers short.

Pricing

Pay per event: a small charge per Actor start plus one charge per dataset row (opportunity). The run's maximum total charge is respected, and rows beyond it are not pushed. Runs that find nothing new cost only the start charge.

FAQ

Where does the data come from? The documented Grants.gov public REST API (search2 and fetchOpportunity), which Grants.gov says needs no login or key.

Is this grant-writing or legal advice? No. It's a search and monitoring tool. Read the full notice on Grants.gov before applying.

Can I monitor several topics? Yes. Create one saved task or schedule per filter set; each keeps its own monitor state.

Support: digitalpromohub.support@gmail.com