ParseForge Scrapers

DSIRE Energy Incentives Scraper

parseforge/dsire-energy-incentives-scraper

OtherAutomationDeveloper tools

Scrapes US clean-energy incentive programs from DSIRE by state and category. Returns each program as a flat row with name, state, type, eligible sectors, and full description.

Run this scraper See the API call
Total users
3
Monthly active
1
Total runs
141
Bookmarked
0
Rating
Not rated yet
Last modified
12 days ago

Overview

ParseForge

DSIRE Energy Incentives Scraper

Scrape US clean-energy incentives from DSIRE by state, category, or program type, up to a million per run. Every program comes with its name, state, incentive type, eligible sectors, and full description. No API key required. Export to CSV, JSON, Excel, or XML.

DSIRE is the most complete public database of US renewable energy and energy efficiency incentives, but browsing it manually means clicking through thousands of state and federal programs. This Actor reads the public program listings directly, filters them by state abbreviation or category keyword, and returns each match in one consistent schema.

Who uses it What they scrape DSIRE for
Solar installers Find active rebates and tax credits their customers can claim in a specific state.
Energy consultants Build a current list of efficiency incentives for commercial client proposals.
Policy analysts Track which states are adding or removing clean-energy grant programs.
Homeowners Check what federal and state incentives apply to a planned heat-pump or solar project.

What it does

This Actor collects DSIRE energy incentive programs filtered by state and category, and returns each one as a flat row.

  • ๐Ÿ” State filter: pass a two-letter US state abbreviation to return only programs available there.
  • ๐Ÿท๏ธ Category filter: narrow results by technology or sector with a partial keyword like solar, wind, or efficiency.
  • ๐Ÿ“ฆ Flat output: every program lands as one row with its name, state, type, category, eligible sectors, and full description.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with DSIRE data

โ˜€๏ธ Qualify solar leads by state.

A solar installer runs the Actor for CA and category solar to pull every active rebate, tax credit, and net-metering policy, then shares the list with a prospective customer.

๐Ÿข Build commercial retrofit proposals.

An energy consultant scrapes all efficiency programs in NY, filters for commercial-sector eligibility, and attaches the incentive summary to a building-owner proposal.

๐Ÿ“Š Monitor policy changes over time.

A policy analyst schedules a weekly run for a set of states and diffs the new dataset against the previous week to spot programs that were added or removed.

๐Ÿ  Plan a home electrification budget.

A homeowner enters their state and the keyword heat pump to see every rebate and financing option DSIRE lists, then calculates the net project cost.

Why choose this scraper

What you get
No API registration Reads the public DSIRE listings directly with no app setup or rate-limit headaches.
Fixed schema Every run returns the same columns so your downstream analysis never breaks.
One-click exports Download results as CSV, JSON, Excel, or XML from the Apify dataset tab.

How it compares

Three other Apify actors also target DSIRE or the broader solar-incentives space. Here is how they compare on the concrete capabilities a buyer typically checks.

Feature ParseForge DSIRE Energy Incentives Crawler DSIRE Incentives Scraper Solar Industry - Installers, Reviews, Incentives & AI Analysis
State filter Yes, two-letter abbreviation Yes Yes Yes
Category keyword filter Yes, partial match Yes Not listed Not listed
Full program description text Yes Yes Not listed Not listed
Eligible sectors field Yes Yes Not listed Not listed
Incentive amounts extracted Not listed Yes Not listed Not listed
Solar installer reviews and pricing Not listed Not listed Not listed Yes

Configure the run

Drive the Actor with a state abbreviation, a category keyword, or both, and set a cap on how many programs to collect per run. The Input tab lists every parameter.

A first run with the defaults:

{
 "maxItems": 10
}

A larger pull:

{
 "maxItems": 200
}

Pricing

Pay-per-result: $0.0055 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $0.55
1,000 results $5.50
10,000 results $55.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

  1. Create a free Apify account with $5 in credit.
  2. Open the DSIRE Energy Incentives Scraper.
  3. Set your inputs and any filters, then click Start.
  4. 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 DSIRE 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/dsire-energy-incentives-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 state abbreviation is a valid two-letter US code like CA, not California. For the category filter, try a shorter keyword (solar instead of solar photovoltaic) because the match is partial against DSIRE's category text.

The run finished but returned fewer programs than I expected.

DSIRE lists about 2,500 programs total. If you set a state filter, only programs tagged with that state are returned. Remove the state filter to see the full national list.

Some fields are empty in my results.

DSIRE does not populate every field for every program. Empty cells mean the information was not provided on the DSIRE page for that specific program.

The Actor timed out before reaching my maxItems limit.

Increase the run timeout in the Apify run settings. For very large extractions near the million-item cap, consider splitting the work into multiple runs by state.

I got an error about the website being unreachable.

DSIRE may occasionally be down for maintenance. Retry the run after a few minutes. If the problem persists, check the DSIRE website directly in a browser to confirm it is online.

FAQ

Question Answer
What is DSIRE? DSIRE is the Database of State Incentives for Renewables and Efficiency, maintained by the N.C. Clean Energy Technology Center. It tracks thousands of US federal, state, local, and utility incentives for clean energy and energy efficiency.
Do I need an API key or login to scrape DSIRE? No. This Actor reads the public DSIRE program listings directly, so there is no registration, OAuth, or API key required.
Can I filter by more than one state at a time? The state input accepts a single two-letter abbreviation per run. To collect programs for multiple states, run the Actor once per state or leave the field empty to scrape all states.
How does the category filter work? The category field does a partial match against the program category text on DSIRE. Entering solar will return programs categorized as Solar, Solar Thermal, Solar Water Heat, and similar.
What fields does each result row contain? Each row includes the program name, state, incentive type, category, eligible sectors, a full text description, and other metadata DSIRE publishes. The exact field list is shown in the sample output on the Actor's page.
How many programs can I scrape in one run? You set the limit with the maxItems field, up to 1,000,000. DSIRE lists roughly 2,500 active programs, so a single run can capture the entire database.
Can I schedule this Actor to run automatically? Yes. Apify schedules let you run the Actor daily, weekly, or on a custom cron expression, so your dataset stays current without manual effort.
What export formats are supported? You can export the results to CSV, JSON, Excel, XML, or RSS from the Apify dataset tab, or push them to a webhook, S3, or Google Drive with an Apify integration.
Does this Actor include federal incentives? Yes. When you leave the state filter empty, the Actor returns federal programs alongside state and local ones. Filtering by a specific state still includes federal programs that apply there.
Is the data updated when DSIRE changes? The Actor reads the live DSIRE website on each run, so it always returns the current listings. Schedule regular runs to keep your copy in sync.

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 N.C. Clean Energy Technology Center. 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

FieldTypeWhat it doesDefault
maxItems integer How many energy incentives to collect per run. 10
state string Two-letter US state abbreviation to filter programs (e.g. CA, TX, NY). Leave empty for all states. not set
category string Filter by program category (e.g. solar, wind, efficiency). Partial match supported. not set

Pricing

from $5.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.005 to $0.0055

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.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~dsire-energy-incentives-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "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.

Related scrapers

Run DSIRE Energy Incentives Scraper on Apify All scrapers