Grant Funding Report — NIH Awards & Grants.gov Window
Pricing
from $10,050.00 / 1,000 grant funding reports
Grant Funding Report — NIH Awards & Grants.gov Window
Research-development offices and grant consultancies sizing a funder's activity in a topic area, and life-science BD teams tracking award concentration by institution.
Pricing
from $10,050.00 / 1,000 grant funding reports
Rating
0.0
(0)
Developer
NexGen Watch
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
📑 Grant Funding Report — NIH Awards & Grants.gov Window
Research-development offices and grant consultancies sizing a funder's activity in a topic area, and life-science BD teams tracking award concentration by institution.
Source
NIH RePORTER v2 project search and Grants.gov search2 (public, logged-out)- https://api.reporter.nih.gov/v2/projects/search
Public, logged-out only — no API key, login, cookie or CAPTCHA.
Pricing
| Event | FREE | BRONZE | SILVER | GOLD+ |
|---|---|---|---|---|
Actor Start (apify-actor-start) | $0.05 | $0.05 | $0.05 | $0.05 |
Grant Funding Report (grant-funding-report) | $15.00 | $13.50 | $12.00 | $10.05 |
Prices are the filed pay-per-event amounts per plan tier (PLATINUM/DIAMOND match GOLD). Blocked and refused runs do not intentionally charge value events.
Output is one report row per result; billing is pay-per-event, the value event being one grant funding report (a $0.05 start fee per run, then $15.00 per grant funding report). Source: api.grants.gov, api.reporter.nih.gov.
Who buys this
Buyers usually search for NIH grants or grant opportunities.
- Grant consultants and research-development offices tracking NIH grants.
- Universities, nonprofits and companies watching grant opportunities relevant to their field.
- Analysts and journalists following where public funding goes.
📊 Sample Output
Real rows from run 3Pv0V9lSFUsheAvDf on build 0.1.19 (2026-09-23), the same input as the Quick start below — every value is as the source published it (emails masked, long text shortened):
| report_id | report_title | sources | method | generated_at | report_kv_key |
|---|---|---|---|---|---|
| 7c2c34f45ca5c72f184f | Grant Funding — 'immunology' (FY2026) | ["NIH RePORTER v2"] | ngd-deterministic-aggregate-v1 | 2026-09-23T17:34:58.808656+00:00 | REPORT_7c2c34f45ca5c72f184f |
The run finished with the status message: NORMAL: emitted 1 item(s)
✅ What you get
Each row is flat JSON with these fields (from the dataset schema and the sample run; a field the source does not publish for a given row is null):
record_type(string) — e.g.reportreport_id(string) — e.g.7c2c34f45ca5c72f184freport_title(string/null) — e.g.Grant Funding — 'immunology' (FY2026)scope— e.g.keyword 'immunology'; NIH fiscal year 2026; sources nih_reportersources(array) — e.g.["NIH RePORTER v2"]records_analysed(integer) — e.g.10facets(object) — e.g.{"source": [{"value": "nih_reporter", "count": 10}], "kind": [{"value": "award",numbers(object) — e.g.{"amount": {"count": 10, "sum": 1983392, "min": 36648, "max": 378193, "mean": 19method(string) — e.g.ngd-deterministic-aggregate-v1partial(boolean) — e.g.Falsereport_markdown(string) — e.g.# Grant Funding — 'immunology' (FY2026) - Records analysed: **10** - Window / scgenerated_at(string) — e.g.2026-09-23T17:34:58.808656+00:00report_kv_key— e.g.REPORT_7c2c34f45ca5c72f184f
✅ What you get
record_type(string) — e.g.reportreport_id(string) — e.g.ac695d16fade3047867dreport_title(string/null) — e.g.Grant Funding — 'immunology' (FY2026)scope— e.g.keyword 'immunology'; NIH fiscal year 2026; sources nih_reportersources(array) — e.g.["NIH RePORTER v2"]records_analysed(integer) — e.g.10facets(object) — e.g.{"source": [{"value": "nih_reporter", "count": 10}], "kind": [{"value": "award",numbers(object) — e.g.{"amount": {"count": 10, "sum": 2027526, "min": 36648, "max": 378193, "mean": 20method(string) — e.g.ngd-deterministic-aggregate-v1partial(boolean) — e.g.Falsereport_markdown(string) — e.g.# Grant Funding — 'immunology' (FY2026) - Records analysed: **10** - Window / scgenerated_at(string) — e.g.2026-09-17T17:25:47.677558+00:00report_kv_key— e.g.REPORT_ac695d16fade3047867d
⚙️ Sample inputs
1. Quick start — the Store example (this is what the sample above came from)
{"keyword": "immunology","fiscal_year": 2026,"sources": ["nih_reporter"],"max_records": 10}
The sample run charged exactly: 1 × $0.05 apify-actor-start + 1 × $15.00 grant-funding-report = $15.05 on the Free tier — every delivered row was billed.
2. A smaller, narrowed run
{"keyword": "immunology","fiscal_year": 2026,"sources": ["nih_reporter"],"max_records": 5}
Caps the run at 5 rows — about $75.05 on the Free tier ($0.05 start + 5 × $15.00). keyword narrows what the source is asked for.
3. A full-size run
{"keyword": "immunology","fiscal_year": 2026,"sources": ["nih_reporter"],"max_records": 200}
Up to 200 rows (the schema default for max_records) — about $3,000.05 on the Free tier ($0.05 start + 200 × $15.00) if the source has that many.
🧾 JSON sample record
One real record from run 3Pv0V9lSFUsheAvDf, exactly as it lands in the dataset (emails masked, long text shortened):
{"record_type": "report","schema_version": "1.0","report_id": "7c2c34f45ca5c72f184f","report_title": "Grant Funding — 'immunology' (FY2026)","scope": "keyword 'immunology'; NIH fiscal year 2026; sources nih_reporter","sources": ["NIH RePORTER v2"],"records_analysed": 10,"facets": {"source": [{"value": "nih_reporter","count": 10}],"kind": [{"value": "award","count": 10}],"organization": [{"value": "UNIVERSITY OF MINNESOTA","count": 2},{"value": "WAYNE STATE UNIVERSITY","count": 1},{"value": "ICAHN SCHOOL OF MEDICINE AT MOUNT SINAI","count": 1},{"value": "UT SOUTHWESTERN MEDICAL CENTER","count": 1},{"value": "UNIVERSITY OF CALIFORNIA-IRVINE","count": 1},{"value": "BAYLOR COLLEGE OF MEDICINE","count": 1},{"value": "UNIVERSITY OF PITTSBURGH AT PITTSBURGH","count": 1},{"value": "WASHINGTON UNIVERSITY","count": 1},{"value": "UNIV OF NORTH CAROLINA CHAPEL HILL","count": 1}],"org_state": [{"value": "MN","count": 2},{"value": "TX","count": 2},{"value": "MI","count": 1},{"value": "NY","count": 1},{"value": "CA","count": 1},{"value": "PA","count": 1},{"value": "MO","count": 1},{"value": "NC","count": 1}]},"numbers": {"amount": {"count": 10,"sum": 1983392,"min": 36648,"max": 378193,"mean": 198339.2,"median": 180064}},"method": "ngd-deterministic-aggregate-v1","partial": false,"report_markdown": "# Grant Funding — 'immunology' (FY2026) - Records analysed: **10** - Window / scope: keyword 'immunology'; NIH fiscal year 2026; sources nih_reporter - Sources: NIH RePORTER v2 - Report id: `7c2c34f45ca5c72f184f` ## By source - nih_reporter","generated_at": "2026-09-23T17:34:58.808656+00:00","report_kv_key": "REPORT_7c2c34f45ca5c72f184f"}
🔧 How it works
Source. The actor reads api.grants.gov, api.reporter.nih.gov — endpoints: https://api.grants.gov/v1/api/search2, https://api.reporter.nih.gov/v2/projects/search. Public pages and feeds only; nothing behind a login.
Transport. Plain HTTPS from the Apify platform, no proxy. Every request carries an identified contact User-Agent.
Terminal states. A run ends NORMAL, CAPPED (your cap was reached), PARTIAL (something was withheld and the message says what), GENUINE_EMPTY (the source was read and truly had nothing in scope) or BLOCKED (the source refused or changed shape — the run FAILS loud and bills nothing). A zero-row run is never reported as a silent success.
Charging. Each grant funding report is charged at the moment it is pushed (grant-funding-report); a row that fails to charge is not delivered, so the dataset count always equals the charged count.
🔧 How it works
What is not done. No login, no cookie or CAPTCHA bypass, no private or personal-account data, no browser automation.
💰 Pricing example
| Event | Free | Bronze | Silver | Gold |
|---|---|---|---|---|
Actor Start (apify-actor-start) | $0.05 | $0.05 | $0.05 | $0.05 |
Grant Funding Report (grant-funding-report) | $15.00 | $13.50 | $12.00 | $10.05 |
Worked at the live Free-tier price:
- 1 grant funding reports: $0.05 start + 1 × $15.00 = $15.05
- 25 grant funding reports: $0.05 start + 25 × $15.00 = $375.05
- 200 grant funding reports: $0.05 start + 200 × $15.00 = $3,000.05
A run that delivers zero rows charges the $0.05 start fee only. A BLOCKED run (source refused) fails loud and charges no value event. The start fee is charged once per GB of run memory; the default run memory is 1024 MB.
Yield on the sample run: NORMAL: emitted 1 item(s). max_records is a hard ceiling on what is delivered and billed, never a target.
⚖️ Legal & ToS
This actor reads public, logged-out pages and feeds published by api.grants.gov, api.reporter.nih.gov. It collects only what the source publishes to any visitor, identifies itself with a contact User-Agent, and does not access accounts, private data or anything behind authentication. Use the output in line with the source's terms and your local law; the intended use is B2B research and monitoring.
❓ FAQ
Q: Do I need an API key or a login?
A: No. The source (api.grants.gov, api.reporter.nih.gov) is read logged-out; the input schema has no key field and the actor carries no secrets.
Q: Why did my run return 0 rows?
A: Read the run's status message. GENUINE_EMPTY means the source was read and had nothing in scope for your input; BLOCKED means the source refused and the run failed without billing a value event — retry later or narrow the input. A zero-row run bills the start fee only.
Q: How many rows can one run return?
A: Up to max_records (default 200). Raise the cap for a bigger run; you pay per delivered row.
Q: How fresh is the data?
A: Every run reads the source live at run time; nothing is cached between runs. Put it on a schedule for a continuous feed.
Q: What formats can I export?
A: The dataset downloads as JSON, CSV, Excel, XML or RSS from the run's Dataset tab or the Apify API, and any run can push to a webhook or integration.
Q: How is this different from the other premium report actors actors?
A: Same output shape and billing model; this one covers api.grants.gov, api.reporter.nih.gov. The siblings under Related Actors cover the other sources or slices — run several on one schedule for a combined feed.
Q: Are there rate limits?
A: The actor paces itself against the source; there is no per-buyer limit beyond your Apify plan's concurrency.
🆘 Troubleshooting
- Run FAILED with BLOCKED → the source refused the request or changed its page shape → nothing was billed beyond the start fee; retry after a while, and if it persists open an Issue with the run id.
- Status says CAPPED → your cap (
max_records) was reached → raise it for a bigger run. - Input validation error on start → a field is outside the schema's allowed values → start from the Quick start block and change one field at a time.
- Run TIMED-OUT → a very wide request on a slow day → raise the run timeout in Run options or narrow the input; what was delivered before the timeout is still in the dataset.
🔗 Related Actors
- App Review Deep Report — Sentiment, Themes & Complaints — Stop paying $50–100+/month for a review-intelligence subscription you use a few times
- ASO Audit Report — App Store Listing Health & Keyword Coverage — Mobile growth / ASO agencies auditing a client app's store listing before a keyword or creative push, and PMs benchmarking their listing against cate…
- EDGAR Diligence Report — Per-Issuer SEC Filing Brief — Per-issuer SEC/EDGAR diligence in one run — material 8-K events, filing history, and risk factors as structured findings plus a rendered markdown bri…
- Tender Pipeline Report — UK & EU Procurement Window Analysis — Bid teams and procurement-intelligence vendors sizing a pipeline for a buyer or CPV category over a dated window, and consultancies producing client…
- Trademark Gazette Scraper - USPTO TMOG and CIPO Journal — Scrape trademark gazette issues from USPTO TMOG and the CIPO Journal: marks, owners, classes and status. One record per result. Pay per result
- 🏢 About NexGen Watch — NexGen Watch is a catalog of more than 300 public data actors built on official sources, pay-per-result. Browse the catalog at apify.com/nexgenwatch.
⭐ Found this useful?
If this actor saved you a manual check, a quick review on the Apify Store helps other teams find it. Feature request or a source that changed? Open it from the Issues tab — every one is read.
