Hotpads Scraper — US Apartments & Homes for Rent avatar

Hotpads Scraper — US Apartments & Homes for Rent

Pricing

from $1.00 / 1,000 rental listing extracteds

Go to Apify Store
Hotpads Scraper — US Apartments & Homes for Rent

Hotpads Scraper — US Apartments & Homes for Rent

Scrape Hotpads US rental listings by location, coordinates or URL — rent ranges, beds, baths, square footage, availability and building amenities. Enrich any listing with unit-level pricing, schools and neighborhood detail, plus built-in market KPIs and an HTML report.

Pricing

from $1.00 / 1,000 rental listing extracteds

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Hotpads Scraper — US Apartments & Homes for Rent + Market KPIs 🏡

SIÁN Agency Store Apartments.com Scraper Zillow Property Scraper StreetEasy NYC Scraper

🎉 Pull every US rental listing with rent ranges, beds/baths, amenities and unit-level pricing — in one run

Built for rental investors, leasing teams, relocation services and rent-market analysts who need structured, analysis-ready data


📋 Overview

Scrape apartments and homes for rent from Hotpads across the United States — search a whole metro or drill into a single building, and get clean, structured rental data every time. Hotpads is a major US rental-listings portal, and this actor turns it into an on-demand rentals data feed.

Why professionals choose this Hotpads scraper:

  • Rentals-first data model: rent ranges, bed/bath/sqft ranges, availability dates, building amenities and management company — the fields leasing and investing teams actually need.
  • 6 lookup modes, one actor: search by location, coordinates or URL; enrich any listing by ID or URL; and resolve locations with autocomplete.
  • 🎯 Unit-level enrichment: one detail lookup returns per-model pricing, full amenity lists, nearby schools, neighborhood info and leasing contact.
  • 💰 Pay-per-result pricing: you're only charged for rows that land in your dataset — cheaper than monthly flat-rate rental tools.
  • 💎 Powerful rent filters: filter by price range, beds, baths, property type (apartment, house, condo, townhome, room) and pet policy, then sort by newest, price or distance.
  • Built-in market KPIs + HTML report: median rent, rent-per-sqft distribution and city / state breakdowns on every run.

✨ Features

  • 🔎 Search by location: city/state, neighborhood, ZIP or free text, fully paginated.
  • 🌐 Search by coordinates: lat/long + radius for map-bounded rental farming.
  • 🔗 Search by URL: paste any Hotpads search URL and collect every matching rental.
  • 🏢 Detail by ID or URL: unit-level pricing, amenities, schools, neighborhood, photos and leasing contact.
  • 🔤 Location autocomplete: resolve a partial place name to clean cities, neighborhoods and ZIPs.
  • 💲 Rent range capture: low and high monthly rent plus a formatted display range per building.
  • 🛏️ Bed / bath / sqft ranges: full min–max specs for multi-unit buildings.
  • 🐾 Rent filters: price, beds, baths, property type and pet-friendly (dog / cat) filters.
  • 📊 Market KPIs: median rent, rent-per-sqft distribution and city / state tallies, computed automatically.
  • 📄 HTML report: a shareable run summary saved to the key-value store.

🎬 Quick Start

Pick an operation, give it a location (or coordinates / URL), and run. Results stream straight into your Apify dataset as structured JSON.

curl -X POST "https://api.apify.com/v2/acts/sian.agency~hotpads-property-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"operation": "searchByLocation", "location": "New York, NY"}'

🚀 Getting Started (3 Simple Steps)

Step 1: Choose an operation

Pick searchByLocation, searchByCoordinates, searchByUrl, detailsById, detailsByUrl or autocomplete.

Step 2: Provide the target

Enter a location, coordinates, or a Hotpads URL — plus any rent, bed/bath, property-type or pet filters you want.

Step 3: Run and export

Start the run and export the results as JSON, CSV or Excel directly from the dataset.

That's it! In under a minute, you'll have:

  • A structured feed of US rental listings
  • Rent ranges, beds/baths, amenities and availability per building
  • Ready-to-analyze data for pricing, sourcing or lead generation

📥 Input Configuration

FieldTypeRequiredDescription
operationstringYessearchByLocation, searchByCoordinates, searchByUrl, detailsById, detailsByUrl or autocomplete
locationstringNoCity/state, neighborhood, ZIP or free text (searchByLocation)
inputstringNoPartial location text (autocomplete)
latitude / longitudestringNoSearch center for searchByCoordinates
radiusstringNoRadius in miles around the point (default 1.5)
urlstringNoHotpads search or listing URL (searchByUrl / detailsByUrl)
listingIdstringNoHotpads listing alias, e.g. 403zj7h276rbn (detailsById)
sortOrderstringNoDistance, Newest, Price_Low_to_High, Price_High_to_Low
propertyTypestringNoComma-separated: Apartment, House, Condo, Townhome, Room
minPrice / maxPricestringNoMonthly rent range filter
minBeds / maxBedsstringNoBedroom range (use 0 for studio)
minBaths / maxBathsstringNoBathroom range
petsAllowedstringNodog, cat, or both comma-separated
maxResultsintegerNoMax rows to collect (FREE tier capped at 25)

Example — search a metro with rent + bed filters:

{
"operation": "searchByLocation",
"location": "Jersey City, NJ",
"minPrice": "2000",
"maxPrice": "4000",
"minBeds": "1",
"propertyType": "Apartment,Condo",
"sortOrder": "Price_Low_to_High",
"maxResults": 100
}

Example — enrich a single listing:

{
"operation": "detailsById",
"listingId": "403zj7h276rbn"
}

📤 Output

Results are saved to the Apify dataset. Search rows carry the core rental fields; detail rows add unit-level enrichment:

FieldTypeDescription
listingIdstringHotpads listing alias
listingNamestringBuilding or listing name
urlstringFull Hotpads listing URL
addressobjectStreet, city, state, ZIP
locationobjectLatitude and longitude
rentobjectLow / high monthly rent + display range
specsobjectBed / bath / sqft ranges (low–high)
availabilityobjectActivated and last-updated timestamps
amenitiesarrayBuilding and unit amenities
mediaobjectPhoto count and gallery
companystringManagement company
flagsobjectStudent / senior / military housing
pricing / unitsobject / arrayDetail only — unit-level pricing matrix
schoolsarrayDetail only — nearby schools with ratings
contactobjectDetail only — leasing company, agent, phone, website

Example row (search):

{
"rowType": "rental",
"listingId": "403zj7h276rbn",
"buildingId": "1wfsvd7",
"listingName": "Hudson House East",
"url": "https://www.hotpads.com/hudson-house-east-jersey-city-nj-07310-1wfsvd7/pad",
"listingType": "rental",
"address": { "street": "315 15th St", "city": "Jersey City", "state": "NJ", "zip": "07310" },
"location": { "latitude": 40.7325, "longitude": -74.0464 },
"rent": { "priceLow": 3625, "priceHigh": 8420, "display": "$3,625 - $8,420" },
"specs": { "bedsLow": 0, "bedsHigh": 3, "bathsLow": 1, "bathsHigh": 3, "sqftLow": 676, "sqftHigh": 1826 },
"availability": { "activatedAt": "2026-04-17T00:49:08.753Z", "updatedAt": "2026-06-26T21:50:03.163Z" },
"amenities": ["Fitness Center", "Swimming Pool", "Concierge", "Elevator"],
"media": { "photoCount": 26 },
"company": "RXR",
"flags": { "studentHousing": false, "seniorHousing": false, "militaryHousing": false }
}

💼 Use Cases & Examples

1. Rental market analysis

Analysts benchmarking rents across a metro. Input: searchByLocation for a city + maxResults. Output: rent ranges and rent-per-sqft across hundreds of buildings. Use: median-rent and pricing-trend dashboards.

2. Rental investor sourcing

Investors screening multifamily and single-family rentals. Input: searchByCoordinates around a target radius with bed/price filters. Output: unit mix, rent and amenities per building. Use: shortlist properties by yield potential.

3. Leasing & property management intelligence

Leasing teams tracking competitor pricing and concessions. Input: searchByLocation filtered to Apartment. Output: rents, specials flag and amenities. Use: price your units against the local comp set.

4. Relocation & corporate housing

Relocation services building move-in shortlists. Input: searchByLocation with petsAllowed and bed filters. Output: matching furnished and pet-friendly rentals. Use: curated options for relocating employees.

5. Lead generation for proptech

Sales teams targeting property managers and operators. Input: detailsById on shortlisted buildings. Output: leasing contact, company and website. Use: enriched outreach lists.

6. Deep listing enrichment

Teams that need the full picture on one building. Input: detailsByUrl on a Hotpads listing. Output: per-model pricing, full amenities, schools and neighborhood. Use: underwriting and due diligence.

7. Location resolution

Pipelines that start from messy place names. Input: autocomplete with a partial string. Output: clean cities, neighborhoods and ZIPs. Use: normalize inputs before a bulk search.


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/hotpads-property-scraper').call({
operation: 'searchByLocation',
location: 'New York, NY',
maxResults: 100
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/hotpads-property-scraper').call(
run_input={'operation': 'searchByLocation', 'location': 'New York, NY', 'maxResults': 100}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~hotpads-property-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"operation": "searchByLocation", "location": "New York, NY"}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: Schedule or webhook
  2. HTTP Request: Call the actor API
  3. Process: Handle JSON rental rows
  4. Action: Save to a sheet/CRM, notify, or feed a pricing model

📊 Performance & Pricing

FREE Tier (Try It Now)

  • 25 rental rows per run — full feature access, same data quality
  • No credit card required
  • Perfect for testing and small projects
  • Unlimited rows per run with deep pagination
  • Enriched detail lookups unlocked
  • Pay-per-result: only charged for rows that land in your dataset

💰 Transparent pay-per-result pricing — a low per-listing headline plus optional unit-level enrichment, so you only pay for the depth you use.

🔗 View current pricing


❓ Frequently Asked Questions

Q: How many rentals can I collect? A: FREE tier: 25 rows per run. PAID tier: unlimited, with deep pagination.

Q: Does it cover for-sale homes too? A: No — Hotpads is a rentals portal, so this actor returns apartments and homes for rent.

Q: Can I filter by rent, beds and pets? A: Yes — price range, bed range (use 0 for studio), bath range, property type and pet policy are all supported.

Q: What output formats are available? A: JSON, CSV and Excel — export directly from the Apify dataset.

Q: How do I get unit-level pricing and schools? A: Use detailsById or detailsByUrl — detail rows include the per-unit pricing matrix, amenities, schools and neighborhood.

Q: Is this legal? A: Yes — we only extract publicly available data. See the legal section below.


🐛 Troubleshooting

No rows returned from a search

  • Broaden the location (try City, ST) or relax rent/bed filters.
  • Increase maxResults for more pages.

A detail lookup returns nothing

  • Confirm the listingId is the alias from a search row (e.g. 403zj7h276rbn), or use the full listing url with detailsByUrl.

Filters seem ignored

  • propertyType values are Apartment, House, Condo, Townhome, Room (case-sensitive, comma-separated).

Run hit the FREE cap

  • FREE runs stop at 25 rows — upgrade to a paying Apify plan for unlimited results and enrichment.

⚠️ Trademark Disclaimer

Hotpads® is a trademark of its respective owner. This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Hotpads or its parent company. It accesses only publicly available information and is intended for lawful data-analysis purposes. All product names, logos and brands are the property of their respective owners.


Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.


🤝 Support

Telegram Support

Join our active support community


Built by SIÁN Agency | More Tools