# NAHB Builder Directory Scraper (`parseforge/nahb-builder-directory-scraper`) Actor

Scrapes NAHB builder directory listings by company name, state, or ZIP code. Returns builder name, location, contact details, and membership info as a flat row.

- **URL**: https://apify.com/parseforge/nahb-builder-directory-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Lead generation, Real estate
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $7.50 / 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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### NAHB Builder Directory Scraper

**Scrape NAHB builder directory listings by company name, state, or ZIP code, up to a million per run.** Each builder comes with its name, location, contact details, and membership info. No login or API key. Export to CSV, JSON, Excel, or XML.

The NAHB Builder Directory is the official member directory of the National Association of Home Builders, listing home builders and remodelers across the United States. This Actor reads the public directory directly, so you can collect builder profiles without dealing with the NAHB website's search interface. Filter by company name, state, or ZIP code, and get a clean dataset of builders ready for outreach or market analysis.

| Who uses it | What they scrape NAHB Builder Directory for |
|---|---|
| Home improvement marketers | Building a targeted list of local builders for outreach campaigns |
| Construction material suppliers | Finding builders in specific states or ZIP codes to pitch products |
| Real estate data analysts | Tracking builder activity and membership trends across regions |
| Trade show organizers | Compiling attendee lists of NAHB members for event promotion |

### What it does

This Actor collects NAHB builder directory listings by company name, state, or ZIP code, and returns each builder as a flat row with its name, location, contact details, and membership information.

- 🔍 **Flexible search:** Filter by company name, state, or ZIP code, alone or in combination.
- 📊 **Structured output:** Each builder is returned as a flat row with consistent fields for easy analysis.
- ⚡ **Scalable collection:** Set a maximum number of builders per run, up to one million.
- 💾 **Multiple export formats:** Download your data as CSV, JSON, Excel, or XML.

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

### What you can do with NAHB Builder Directory data

**📈 Build a local builder prospect list.**

A construction material supplier runs the Actor with a state and ZIP code to get all NAHB builders in their service area, then uses the contact details for direct outreach.

**📊 Analyze builder distribution by region.**

A market researcher collects builders across multiple states to map where home building activity is concentrated and identify underserved areas.

**🎯 Enrich CRM with builder data.**

A home improvement marketer scrapes builders by company name to append NAHB membership details and contact info to existing CRM records.

**📬 Prepare a trade show mailing list.**

An event organizer scrapes all NAHB builders in a state to create a targeted invitation list for an upcoming home building expo.

### Why choose this scraper

| | What you get |
|---|---|
| **No API key required** | Access the public NAHB directory without registration or authentication. |
| **Up-to-date data** | Scrapes the live directory, so you get current builder listings. |
| **Flexible filtering** | Target builders by name, state, or ZIP code for precise results. |
| **Scalable** | Collect from a handful to a million builders in a single run. |

### How it compares

This Actor focuses specifically on the NAHB Builder Directory, while the Ungerboeck Exhibitor List Scraper targets exhibitor lists from Ungerboeck trade shows, which may include NAHB events but not the full builder directory.

| Feature | ParseForge | Ungerboeck Exhibitor List Scraper |
|---|---|---|
| Scrapes NAHB Builder Directory | Yes | Not listed |
| Filter by state and ZIP code | Yes | Not listed |
| Collect builder contact details | Yes | Not listed |
| Export to CSV, JSON, Excel, XML | Yes | Not listed |
| No login or API key required | Yes | Not listed |

### Configure the run

Drive the Actor with a company name, state, or ZIP code, and set a maximum number of builders to collect per run. Filters are applied as the directory is read, so only matching builders reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "maxItems": 10
}
```

A larger pull:

```json
{
 "maxItems": 200
}
```

### Pricing

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

| Results collected | Approximate cost |
|---|---|
| 100 results | $0.85 |
| 1,000 results | $8.50 |
| 10,000 results | $85.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](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [NAHB Builder Directory Scraper](https://apify.com/parseforge/nahb-builder-directory-scraper?fpr=vmoqkp).
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](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to NAHB Builder Directory through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com/?tools=parseforge/nahb-builder-directory-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 query, state, or ZIP code is spelled correctly and matches the directory format. Try broadening your search by removing one filter or using a shorter keyword.

**The run stops before reaching my maxItems.**

The Actor stops when there are no more matching builders in the directory. If you expected more results, verify your filters or increase maxItems.

**Some builder fields are empty in the output.**

Not all builders in the directory have complete profiles. Empty fields mean the information was not listed on the NAHB site for that builder.

**I get an error about invalid state code.**

Use the standard two-letter US state abbreviation, such as 'CA' for California or 'TX' for Texas. The Actor does not accept full state names.

### FAQ

| Question | Answer |
|---|---|
| Do I need an NAHB membership or login to scrape the directory? | No. The Actor reads the public NAHB Builder Directory, so no login or API key is required. |
| Can I filter builders by state and ZIP code at the same time? | Yes. You can provide a state, a ZIP code, and a company name together. The Actor applies all filters to return only matching builders. |
| What information do I get for each builder? | Each builder row includes the company name, location details such as city and state, contact information, and NAHB membership status, as available in the directory. |
| How many builders can I collect in one run? | You can set the maximum number of builders from 1 up to 1,000,000 per run using the maxItems input. |
| What export formats are supported? | You can export your scraped data as CSV, JSON, Excel, or XML directly from the Apify platform. |
| Is the data from the live NAHB directory? | Yes. The Actor scrapes the current public directory, so you get up-to-date builder listings. |
| Can I search by a partial company name? | Yes. The query field accepts a company name or keyword, and the Actor matches builders whose names contain that text. |
| Does this Actor work for all US states? | Yes. You can specify any two-letter US state code to filter builders in that state. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) 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 National Association of Home Builders. 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.

# Actor input Schema

## `query` (type: `string`):

Company name or keyword.

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

Two-letter US state code.

## `zip` (type: `string`):

US ZIP to filter.

## `maxItems` (type: `integer`):

Maximum number of builders to collect per run.

## Actor input object example

```json
{
  "maxItems": 10
}
```

# Actor output Schema

## `results` (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 = {
    "query": "",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/nahb-builder-directory-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 = {
    "query": "",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/nahb-builder-directory-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "query": "",
  "maxItems": 10
}' |
apify call parseforge/nahb-builder-directory-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/nahb-builder-directory-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/9OPztbMcHJ7E1p0Ag/builds/f4XTie4jpSvK4L4JR/openapi.json
