Houzz Scraper — Professionals, Photos, Projects & Reviews avatar

Houzz Scraper — Professionals, Photos, Projects & Reviews

Pricing

from $1.99 / 1,000 houzz professionals

Go to Apify Store
Houzz Scraper — Professionals, Photos, Projects & Reviews

Houzz Scraper — Professionals, Photos, Projects & Reviews

Scrape Houzz professionals, photos, projects and reviews into JSON: phone, rating, badges, portfolio and design images. A Houzz API alternative for contractor leads and design research — Python, Node.js, and MCP.

Pricing

from $1.99 / 1,000 houzz professionals

Rating

0.0

(0)

Developer

Andrej Kiva

Andrej Kiva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Disclaimer: Unofficial integration for publicly accessible sources. Trademarks belong to their respective owners. Provided for informational use only; users must comply with applicable platform terms and laws.

Crawloop directory suite — home professionals, public reviews, and employer signals.

Houzz (home pros)Trustpilot (public reviews)Glassdoor (employer)ThomasNet (industrial)
Houzz Scraper ◄── you are hereTrustpilot ScraperGlassdoor ScraperThomasNet Scraper

Houzz Scraper for Apify — scrape Houzz professionals, design photos, projects, and reviews into flat JSON without a public Houzz API. Extract name, phone, website, rating, review count, badges, typical job cost, sponsored vs organic rank, photo URLs, project portfolios, and review text.

Built for contractor lead lists (interior designers, architects, remodelers by city) and design research (kitchen/bath photo galleries, project portfolios). This Actor does not hunt emails on company websites. Run from the Console or with Python, Node.js, cURL, or MCP / AI assistants. A practical Houzz API alternative.

When to use this Actor

  • You need a Houzz scraper for a profession + city (interior designers in Austin, kitchen remodelers in London)
  • You want organic rank vs sponsored directory cards
  • You are pulling Houzz photos for styles, rooms, and owner pros (modern kitchen, farmhouse bath)
  • You need project portfolios or review rows tied to a professional — not contact emails

When not to use this Actor

  • Email enrichment / website crawling for inboxes — out of scope on purpose
  • Houzz Shop / product SKUs — the consumer marketplace is discontinued; use photos for product-in-room images
  • Posting jobs or messaging pros through Houzz — read-only extraction
  • Datacenter-only high volume — use Apify residential proxies for stable directory crawls

Key features

  • Houzz API alternative — structured dataset instead of nested raw Houzz objects
  • No pasted URL required — profession + Austin, TX (or 14 country sites) builds the directory for you
  • Start URLs still work — directory, pf~ profiles, photo galleries, pj-vj~ projects; type is auto-detected
  • Flat CRM fields — phone, decoded website, socials, rating, badges, cost band, lat/long on profiles
  • Sponsored flag + listing position — paid vs organic cards (15 pros per ?fi= page)
  • Photos — React Query galleries (?pg=) and classic SpaceStore pages; owner pro + image URL
  • Projects — portfolio rows from a pro profile or a project URL
  • Reviews — featured / listing reviews nested or as separate recordType=review rows
  • FiltersminRating, minReviewCount, verifiedOnly, excludeSponsored
  • Monitor — scheduled NEW/UPDATED vs last run (rating, reviews, phone, verified). Skip UNCHANGED.
  • HTTPcurl_cffi (no browser). Residential recommended.

Use cases

BuyerJob to be done
Supplier / trade BDBuild a city list of kitchen remodelers: phone, cost band, hire badges, organic rank
Design / SEO researchScrape modern kitchen photos with owner pro and tags
Market mappingCompare ratings and review volume for architects in a metro
Reputation workflowPull Houzz reviews, then run Trustpilot on the decoded website

Input parameters

ParameterTypeDefaultDescription
startUrlsArrayAustin interior designersDirectory, profile, photo, or project URLs.
recordTypeEnumprofessionalsprofessionals / photos / projects / reviews.
siteEnumhouzz.comCountry site when building from profession + location.
professionEnuminterior-designersDirectory category slug.
locationsArrayAustin, TXCities (Austin, TX/c/Austin--TX).
searchQueriesArrayPhoto keywords, or extra professional slugs × each location.
fetchDetailsBooleanfalseOpen profiles for services, areas, aspect ratings, hires, website.
includeReviewsBooleanfalseNest reviews on each professional row.
emitReviewRowsBooleanfalseAlso push recordType=review rows.
minRating / minReviewCountNumberShortlist floors.
verifiedOnly / excludeSponsoredBooleanfalseTrust and organic filters.
maxItemsInteger50Max primary rows (0 = unlimited within maxPages).
maxPagesInteger5Max listing pages per start URL.
incrementalModeBooleanfalseEmit NEW/UPDATED vs KV baseline.
proxyConfigurationObjectUS residentialResidential recommended.

Example — Austin interior designers (no URL)

{
"recordType": "professionals",
"profession": "interior-designers",
"locations": ["Austin, TX"],
"maxItems": 50,
"maxPages": 3,
"excludeSponsored": true,
"minRating": 4.5
}

Example — modern kitchen photos

{
"recordType": "photos",
"searchQueries": ["modern kitchen"],
"maxItems": 40,
"maxPages": 2
}

Example — profile + reviews

{
"startUrls": [{ "url": "https://www.houzz.com/professionals/upholstery/spruce-pfvwus-pf~1988573048" }],
"fetchDetails": true,
"includeReviews": true,
"emitReviewRows": true
}

Output

Each default row is a professional, photo, project, or review (recordType). Reviews can also nest on reviews when includeReviews is on.

FieldDescription
professionalId / userId / urlStable Houzz ids and profile URL (pf~).
displayName / profession / phone / websiteIdentity and decoded website (unwraps Houzz /trk/ redirects).
rating / reviewCount / costEstimateDirectory score (5.0 scale) and typical job cost.
city / state / formattedAddress / latitudeGeography.
isSponsored / isProVerified / listingPositionPaid vs organic + verification.
badges / hireCount / aspectQualityBest of Houzz, hires, aspect ratings (on profile fetch).
photoId / imageUrl / ownerNameDesign photo rows.
projectId / photoCount / professionalNamePortfolio project rows.
{
"recordType": "professional",
"professionalId": "86143",
"displayName": "Calming Spaces Interiors, Design & Remodeling",
"profession": "Interior Decorators",
"phone": "(512) 842-4664",
"city": "Austin",
"state": "TX",
"rating": 4.8,
"reviewCount": 50,
"isSponsored": true,
"listingPosition": 1,
"url": "https://www.houzz.com/professionals/interior-decorators/calming-spaces-interiors-design-and-remodeling-pfvwus-pf~436247126"
}

Integration examples

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('crawloop/houzz-scraper').call({
profession: 'interior-designers',
locations: ['Austin, TX'],
maxItems: 25,
excludeSponsored: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient(token="YOUR_TOKEN")
run = client.actor("crawloop/houzz-scraper").call(
run_input={
"profession": "interior-designers",
"locations": ["Austin, TX"],
"maxItems": 25,
"excludeSponsored": True,
}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)

cURL

curl "https://api.apify.com/v2/acts/crawloop~houzz-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"profession":"interior-designers","locations":["Austin, TX"],"maxItems":25}'

MCP and AI assistants

Use this Actor from AI tools via Apify MCP. Connect your Apify account, then call this Actor by its Store ID crawloop/houzz-scraper.

Example prompts:

  • "Run Houzz Scraper for kitchen remodelers in Austin, TX, exclude sponsored listings, min rating 4.5, and return the top 20 rows as JSON"
  • "Scrape modern kitchen photos with Houzz Scraper and summarize owner professionals and styles"
  • "Chain Houzz Scraper then Trustpilot Scraper on the decoded websites for public reputation"

Suite next step

After a Houzz contractor shortlist, run Trustpilot Scraper on the same websites for public reviews, or Glassdoor Scraper for employer/team signals.

FAQ

Is this a Houzz API?
No. Houzz does not offer a public directory API. This Actor is a Houzz API alternative that reads public listing, profile, and gallery HTML.

Why not emails?
Lead workflows already get phones, websites, and socials published on Houzz. Third-party inbox hunting is noisy, extra-billed, and not this product.

How many professionals per page?
A directory page currently renders 15 cards. Pagination is ?fi=15, ?fi=30, …. Photo galleries paginate with ?pg=2 (20 images).

Does it work with Python / Node.js / MCP?
Yes. Use the Apify client examples above or Apify MCP prompts.

Which country sites?
houzz.com, .co.uk, .com.au, .de, .fr, .it, .es, and other Houzz locales in the site enum.