# USGS US Wind Turbine Database (USWTDB) — 75K+ Turbines (`compute-edge/uswtdb-wind-turbines-scraper`) Actor

Extract every utility-scale US wind turbine from the USGS US Wind Turbine Database. Geolocation, manufacturer, model, capacity, hub height, rotor diameter, project, FAA identifiers, EIA plant linkage. Filter by state, county, manufacturer, project, year, capacity, or offshore.

- **URL**: https://apify.com/compute-edge/uswtdb-wind-turbines-scraper.md
- **Developed by:** [Compute Edge](https://apify.com/compute-edge) (community)
- **Categories:** Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## USGS US Wind Turbine Database (USWTDB) Scraper

Extract the complete US Wind Turbine Database maintained by the **U.S. Geological Survey** in partnership with the American Clean Power Association, U.S. Department of Energy, and Lawrence Berkeley National Laboratory. The USWTDB tracks **every utility-scale wind turbine in the United States** — over **75,000 records** — including precise geolocation, project metadata, FAA identifiers, manufacturer, model, capacity, hub height, rotor diameter, and offshore status.

This is a federally maintained, regulator-grade renewable energy asset registry. Operators in the wind industry, industrial component suppliers, EPC contractors, O&M service providers, financial analysts, and ESG researchers all rely on this data — but the upstream API has a steep learning curve. This Actor wraps it in a friendly input form and outputs clean JSON.

### Data fields

| Field | Description |
|-------|-------------|
| `projectName` | Wind farm / project name |
| `manufacturer` | Turbine OEM (e.g. GE Wind, Vestas, Siemens, Nordex) |
| `model` | Specific turbine model (e.g. GE1.6-91) |
| `turbineCapacityKw` | Individual turbine nameplate capacity in kilowatts |
| `projectCapacityMw` | Full project nameplate capacity in megawatts |
| `projectYear` | Year the project came online |
| `projectTurbineCount` | Total turbines in the project |
| `state`, `county`, `fips` | Location identifiers |
| `latitude`, `longitude` | Precise turbine geolocation |
| `hubHeightM`, `rotorDiameterM`, `totalHeightM` | Physical dimensions in meters |
| `rotorSweptAreaSqm` | Rotor swept area in square meters |
| `offshore` | Whether turbine is offshore |
| `retrofitted`, `retrofitYear` | Whether turbine has been retrofitted and when |
| `faaOrs`, `faaAsn` | FAA obstruction registry / aeronautical study number |
| `eiaPlantId` | Cross-reference to EIA-860 plant ID |
| `imageDate`, `imageSource` | Source/date of confirming imagery |

### How to scrape USWTDB wind turbine data

1. **Pick a filter scope.** Run wide (all of Texas, all of Iowa) or narrow (one wind farm by name).
2. **Set `state`** to a two-letter US state code (`TX`, `IA`, `OK`, `CA`).
3. *(Optional)* Set `manufacturer` (`GE`, `Vestas`, `Siemens`) to filter by OEM.
4. *(Optional)* Set `minYear` to find recently commissioned turbines.
5. *(Optional)* Set `offshoreOnly` to `true` for offshore-only output.
6. **Set `maxResults`** to `0` for the full database (~75,000 turbines) or any cap.
7. Click **Start**.

### Pricing

Pay-per-result: **$0.003 per turbine record**. A full national pull (~75,000 records) costs around $225; most users run targeted state/manufacturer pulls of a few hundred to a few thousand records. Apify compute costs are billed separately by Apify.

### Input example

```json
{
  "state": "TX",
  "manufacturer": "GE",
  "minYear": 2020,
  "maxResults": 2000
}
````

### Output example

```json
{
  "projectName": "Leaning Juniper",
  "manufacturer": "GE Wind",
  "model": "GE1.6-91",
  "turbineCapacityKw": 1600,
  "projectYear": 2006,
  "projectTurbineCount": 67,
  "projectCapacityMw": 109.2,
  "state": "OR",
  "county": "Gilliam County",
  "latitude": 45.6736,
  "longitude": -120.20058,
  "hubHeightM": 80,
  "rotorDiameterM": 91,
  "totalHeightM": 125.6,
  "offshore": false,
  "retrofitted": true,
  "retrofitYear": 2019,
  "faaOrs": "41-001026",
  "eiaPlantId": 56360
}
```

### Use cases

- **Industrial supplier targeting**: cross-reference manufacturer + model + project age to predict gearbox / generator / blade replacement opportunities.
- **EPC / O\&M business development**: build territorial lead lists by county for service contracts.
- **ESG / portfolio analysis**: aggregate installed capacity by state, county, or operator.
- **Asset-level diligence**: pull project- and turbine-level fundamentals for renewable energy M\&A.
- **Aviation / radar / siting studies**: cross-reference FAA identifiers and exact coordinates.

### FAQ

**Is the data current?** USWTDB is updated quarterly by USGS. Every Actor run fetches live data — no caching.

**Are coordinates precise?** Yes. Each turbine is located individually via aerial / satellite imagery. Confidence fields are exposed for both attribute completeness and location precision.

**Can I get a single wind farm?** Yes — set `projectName` to the wind farm name (partial match supported).

### Legal

Data sourced from the U.S. Geological Survey US Wind Turbine Database (https://eerscmap.usgs.gov/uswtdb/), a US Government public dataset. All records are publicly accessible. Use at your own discretion. This Actor performs no authentication bypass and respects upstream rate limits.

For questions or custom field requests, contact the Actor author through the Apify console.

# Actor input Schema

## `state` (type: `string`):

Filter by US state code (e.g. 'TX', 'IA', 'CA'). Leave blank for all states.

## `county` (type: `string`):

Filter by county name (case-insensitive partial match).

## `manufacturer` (type: `string`):

Filter by turbine manufacturer (e.g. 'GE', 'Vestas', 'Siemens', 'Nordex'). Case-insensitive partial match.

## `projectName` (type: `string`):

Filter by wind project / wind farm name (case-insensitive partial match).

## `minYear` (type: `integer`):

Only include turbines whose project came online in or after this year. 0 = no minimum.

## `maxYear` (type: `integer`):

Only include turbines whose project came online in or before this year. 0 = no maximum.

## `minCapacityKw` (type: `integer`):

Only include turbines with nameplate capacity ≥ this many kilowatts. 0 = no minimum.

## `offshoreOnly` (type: `boolean`):

If enabled, return only offshore turbines.

## `maxResults` (type: `integer`):

Maximum number of turbine records to return. 0 = unlimited (full dataset is ~75,000).

## Actor input object example

```json
{
  "state": "",
  "county": "",
  "manufacturer": "",
  "projectName": "",
  "minYear": 0,
  "maxYear": 0,
  "minCapacityKw": 0,
  "offshoreOnly": false,
  "maxResults": 5000
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("compute-edge/uswtdb-wind-turbines-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("compute-edge/uswtdb-wind-turbines-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call compute-edge/uswtdb-wind-turbines-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=compute-edge/uswtdb-wind-turbines-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "USGS US Wind Turbine Database (USWTDB) — 75K+ Turbines",
        "description": "Extract every utility-scale US wind turbine from the USGS US Wind Turbine Database. Geolocation, manufacturer, model, capacity, hub height, rotor diameter, project, FAA identifiers, EIA plant linkage. Filter by state, county, manufacturer, project, year, capacity, or offshore.",
        "version": "0.1",
        "x-build-id": "tKICAoBa3YeGkmw5J"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/compute-edge~uswtdb-wind-turbines-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-compute-edge-uswtdb-wind-turbines-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/compute-edge~uswtdb-wind-turbines-scraper/runs": {
            "post": {
                "operationId": "runs-sync-compute-edge-uswtdb-wind-turbines-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/compute-edge~uswtdb-wind-turbines-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-compute-edge-uswtdb-wind-turbines-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "state": {
                        "title": "State (two-letter)",
                        "type": "string",
                        "description": "Filter by US state code (e.g. 'TX', 'IA', 'CA'). Leave blank for all states.",
                        "default": ""
                    },
                    "county": {
                        "title": "County",
                        "type": "string",
                        "description": "Filter by county name (case-insensitive partial match).",
                        "default": ""
                    },
                    "manufacturer": {
                        "title": "Manufacturer",
                        "type": "string",
                        "description": "Filter by turbine manufacturer (e.g. 'GE', 'Vestas', 'Siemens', 'Nordex'). Case-insensitive partial match.",
                        "default": ""
                    },
                    "projectName": {
                        "title": "Project Name",
                        "type": "string",
                        "description": "Filter by wind project / wind farm name (case-insensitive partial match).",
                        "default": ""
                    },
                    "minYear": {
                        "title": "Min Project Year",
                        "minimum": 0,
                        "maximum": 2100,
                        "type": "integer",
                        "description": "Only include turbines whose project came online in or after this year. 0 = no minimum.",
                        "default": 0
                    },
                    "maxYear": {
                        "title": "Max Project Year",
                        "minimum": 0,
                        "maximum": 2100,
                        "type": "integer",
                        "description": "Only include turbines whose project came online in or before this year. 0 = no maximum.",
                        "default": 0
                    },
                    "minCapacityKw": {
                        "title": "Min Turbine Capacity (kW)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only include turbines with nameplate capacity ≥ this many kilowatts. 0 = no minimum.",
                        "default": 0
                    },
                    "offshoreOnly": {
                        "title": "Offshore Only",
                        "type": "boolean",
                        "description": "If enabled, return only offshore turbines.",
                        "default": false
                    },
                    "maxResults": {
                        "title": "Max Results",
                        "minimum": 0,
                        "maximum": 200000,
                        "type": "integer",
                        "description": "Maximum number of turbine records to return. 0 = unlimited (full dataset is ~75,000).",
                        "default": 5000
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
