HotPads Rentals Scraper - Apartments & Houses
Pricing
from $6.23 / 1,000 rental listings
HotPads Rentals Scraper - Apartments & Houses
Scrape apartments and houses for rent on HotPads across 69 rental categories. Rows carry the rent, bedroom range, full address, units available, promotion tag and leasing phone, with optional bathrooms, square footage, unit level rents, amenities, photos, pet policy, schools and fees.
Pricing
from $6.23 / 1,000 rental listings
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
HotPads Scraper: Apartments and Houses for Rent Data
Pull every apartment and house for rent on HotPads, market by market: 32,392 rentals in Austin alone on 8 September 2026, 40 listings per search page, 69 rental categories. Every row carries the building name, the full street address, the asking rent, the bedroom range, how many units are free right now, the promotion tag, the verified flag, the leasing phone number and the photo. No login, no API key, no HotPads account. Exports to CSV, JSON, Excel and XML.
HotPads has no public API, and its listing pages sit behind PerimeterX, which answers a plain HTTP request with a 403 and a captcha page. Copying rents by hand out of a browser is the usual alternative, and it stops being possible somewhere around the second page. This actor clears the shield with a real browser, then reads HotPads' own server rendered markup, so a market that takes a day to transcribe comes back as a spreadsheet in minutes.
| Who uses it | What they scrape HotPads for |
|---|---|
| Multifamily owners and operators | Live competitor rents, concessions and unit level availability in their submarket |
| Real estate investors | Rent comps and gross yield inputs before they underwrite a building |
| Proptech and rental platforms | Listing inventory, photos and amenities to seed or refresh a marketplace |
| Property managers | Which nearby buildings are running a free rent offer and at what price |
| Market researchers and journalists | Median rent by city against the national median, and how inventory moved in 30 days |
What it does
- 🏢 Core listing fields. Name, HotPads URL, listing ID, property type, street address, city, state, ZIP, asking rent, whether it is a starting price, bedroom range, studio flag, units available, promotion tag, verified flag, leasing phone, photo and 3D tour links. 33 fields before a single optional block.
- 🗺️ 69 verified rental categories. Apartments, houses, condos, townhomes, duplexes, rooms, sublets, student and senior housing, studio through 4 bedroom, pet friendly, furnished, loft, by owner, with pool, gym, parking, laundry, gated entry, air conditioning or heating, and price bands from under $500 to under $3,000. Every one was measured against the HotPads result count before it was published.
- 📍 Any US market. Type
austin-tx,Austin, TXorAustin Texasand all three resolve to the same HotPads market page. Neighbourhood, county, ZIP and university pages go in as URLs. - 🔎 Listing page enrichment. Bathrooms, square footage, the low and high of the rent range, the description, the neighbourhood, the special offer text and when HotPads last updated the listing.
- 🛏️ Unit level data. Every available unit with its number, rent, previous rent when it dropped, move in date and the floor plan beds, baths and square feet. One Austin building returned 19 units.
- 🏊 Amenities, photos, pet policy, fees, manager, schools. Each is its own opt in block: the full amenity list, every photo at 1200px, the dog and cat rules with deposits and weight limits, the estimated move in cost, the management company with its office hours, and the assigned schools with grades, distance and rating.
- 📊 Computed market row. One extra row per market with the HotPads median rent, the national median it is compared against, the live inventory and its 30 day move. Austin on 8 September 2026: $1,538 against a national $1,469, 4.7% above, inventory up 0.20%.
- 🧹 No empty columns. Fields HotPads never publishes on a surface were dropped rather than shipped as permanent nulls. Withheld values come back as
Not Disclosed, inapplicable ones asN/A, booleans asYesorNo.
What you can do with HotPads data
Price a building against its real competitors. Pull every apartment inside a ZIP with units and floor plans switched on, and you have each competitor's rent per unit type, square footage and move in date. That is the rent comp set an operator normally pays a data vendor for, rebuilt from the public listings on demand.
Find the concessions before your prospects do. The promotion tag comes back on the search row for free: Special Offer, Price Drop, 1 Month Free, 10 Weeks Free, $500 Off. Filter on it and you have a live list of every building in a market currently buying occupancy, with the exact wording of the offer from the listing page.
Underwrite a market in an afternoon. The market summary row gives the median rent, the national comparison and the 30 day inventory move for each city and category you scrape. Run it across twenty markets and you have a rent index nobody had to type.
Feed a rental search product. 33 base fields plus photos, amenities, coordinates and available units is enough to populate listing cards, map pins and filters. Rerun the same input daily and diff on listingId to track what came on market, what changed price and what disappeared.
Why choose this scraper
| What you get | |
|---|---|
| Gets past PerimeterX | HotPads answers plain HTTP with a 403 captcha page on every listing path. This actor clears it with a real browser and rotates the exit node when a session gets burnt, up to 12 times. |
| Reads the source, not a guess | Rows come from HotPads' own schema.org markup and server rendered cards, so a redeployed CSS class does not silently empty a column. |
| Filters that actually filter | All 69 categories were measured against the HotPads result count. Four that returned the unfiltered total were dropped rather than shipped as decoration. |
| Pay for what you take | 16 separate events. The headline row is $0.007. Amenities, photos, units, schools, pet policy and the rest are billed only when they came back with data. |
| Cheap bandwidth, so cheap rows | After the first page clears, everything but the document is blocked. 24 fully enriched listings plus a market row moved 6.7 MB of residential proxy. |
| Free plan preview | 10 rows on a free Apify account, with the same fields as a paid run. |
How it compares
There are eight HotPads actors on the Apify Store. Most of them return one flat row type at $0.003 per item and stop at the search card, which means no bathrooms, no square footage, no unit level rents and no amenities. one-api/hotpads-scraper and tangerine_loom/Hotpads-Scraper both sit at $0.003 with two events; hello.datawizards/hotpads-urls-script charges $0.008 per item plus a $0.05 start fee. This actor is more than double the cheapest of them on the headline row, and the difference buys the listing page: 63 fields instead of a card, 69 measured category filters instead of a free text search, and a market summary row that none of them produce. If all you need is a name and an asking rent, the $0.003 actors are the better buy and this README will not pretend otherwise.
| Actor | Price per row | Events | Listing page data | Category filters |
|---|---|---|---|---|
| parseforge/hotpads-rentals-scraper | $0.007 | 16 | Units, amenities, photos, pets, fees, schools, manager | 69 measured |
| one-api/hotpads-scraper | $0.003 | 2 | No | No |
| tangerine_loom/Hotpads-Scraper | $0.003 | 2 | No | No |
| hello.datawizards/hotpads-urls-script | $0.008 plus $0.05 start | 2 | No | No |
| sian.agency/hotpads-property-scraper | Not published | 4 | Partial | No |
What a rental listing looks like
One unedited row from the verified run of 8 September 2026, trimmed only where a long array repeats itself:
{"rowType": "rental-listing","listingId": "23vd5xk","name": "The Vaughan","url": "https://hotpads.com/the-vaughan-austin-tx-78754-23vd5xk/pad","propertyType": "Apartment building","streetAddress": "12601 Innovar Cir","city": "Austin","state": "TX","zipCode": "78754","country": "US","fullAddress": "12601 Innovar Cir, Austin, TX 78754","priceText": "$1,486+ /mo","priceMin": 1486,"priceIsStartingAt": "Yes","priceCurrency": "USD","isTotalPrice": "Yes","bedsText": "1 - 3 beds","bedsMin": 1,"bedsMax": 3,"isStudio": "No","unitsAvailable": 32,"listingTag": "New Today","isVerified": "Yes","phone": "(737) 345-4353","photoUrl": "https://photos.zillowstatic.com/fp/66a07a554e987c954667bc6db19595c4-rentals_medium_500_500.webp","tourCount": 5,"tourUrls": ["https://viewer.tourbuilder.com/?themeId=631a1e44d8f0fe1df521d8db&tour=633349d46578507ebe66749f"],"searchLocation": "austin-tx","searchCategory": "apartments-for-rent","searchUrl": "https://hotpads.com/austin-tx/apartments-for-rent","pageNumber": 1,"positionOnPage": 1,"detailUrl": "https://hotpads.com/the-vaughan-austin-tx-78754-23vd5xk/pad","propertyTypeDetailed": "Apartments","priceRangeText": "$1,486 - $2,171/mo","priceLow": 1486,"priceHigh": 2171,"bedsMinDetail": 1,"bedsMaxDetail": 3,"bathsMin": 1,"bathsMax": 2,"sqftMin": 815,"sqftMax": 1439,"lastUpdatedText": "Updated 2 hours ago","specialOffer": "Lease today and receive up to 12 weeks FREE base rent! *Minimum lease term applies. Other costs and fees excluded.","neighborhood": "Pioneer Crossing","description": "Apartments Near EastVillage - Move In TODAY! You are sure to fall in love with the The Vaughan apartment homes.","latitude": 30.379540250531,"longitude": -97.627589084926,"amenities": ["Bicycle Storage", "Club House", "EV Charging Stations", "Fitness Center", "Pet Park", "Swimming Pool", "Year Built: 2022"],"amenityCount": 26,"photos": ["https://photos.zillowstatic.com/fp/66a07a554e987c954667bc6db19595c4-rentals_large_1200_1200.webp"],"photoCount": 5,"units": [{ "unit": "2303", "price": 1486, "previousPrice": null, "isNew": "No", "availableFrom": "Now", "floorPlan": "1 Bed • 1 bath • 824 sqft", "beds": 1, "baths": 1, "sqft": 824 },{ "unit": "6411", "price": 1490, "previousPrice": null, "isNew": "Yes", "availableFrom": "11/12/2026", "floorPlan": "1 Bed • 1 bath • 824 sqft", "beds": 1, "baths": 1, "sqft": 824 }],"unitCount": 19,"petPolicy": [{ "petType": "Dogs", "allowed": "Yes", "deposit": 250, "oneTimeFee": 350, "monthlyFee": 25, "numberAllowed": 2, "weightLimitLbs": 100, "notes": "We welcome 2 pets per apartment, there is a $350 pet fee and a $250 pet deposit." }],"propertyManager": {"managerName": "Greystar","managerPhone": "(737) 345-4353","officeHours": ["Sunday 1:00 PM to 5:00 PM", "Monday 9:00 AM to 6:00 PM"],"websiteUrl": "https://hotpads.com/renter-hub/clickRedirect?alias=451tgvdperfpf&r=HotPads&mobileFriendly=true"},"nearbySchools": [{ "name": "Pioneer Crossing Elementary School", "type": "Public", "grades": "PK - 5", "distanceMiles": 2.1, "rating": 2, "district": "Manor Independent School District" }],"demand": { "viewsText": "Viewed 3 times this past week.", "contactText": "No one has contacted this listing." },"scrapedAt": "2026-09-08T17:45:58.148Z"}
The market summary row is a second row type, flagged with "rowType": "market-summary":
{"rowType": "market-summary","market": "Austin, TX Apartments for Rent","searchLocation": "austin-tx","searchCategory": "apartments-for-rent","listingsAvailable": 32392,"medianRent": 1538,"nationalMedianRent": 1469,"medianVsNationalPct": 4.7,"inventoryChange30dPct": 0.2}
Configure the run
Give it one or more markets and a category, and it paginates until it hits your row limit. Locations take the HotPads slug or a plain city and state. Everything past the base row is a checkbox that is off until you tick it, and each one is billed only when it returned something.
Every apartment in Austin, headline fields only:
{"searchLocations": ["austin-tx"],"category": "apartments-for-rent","maxItems": 1000,"maxPagesPerSearch": 25}
Rent comps across three Texas markets, with units, square footage, amenities and coordinates:
{"searchLocations": ["Austin, TX", "Dallas, TX", "Houston, TX"],"category": "2-bedroom-apartments-for-rent","maxItems": 3000,"includeDetails": true,"includeUnits": true,"includeAmenities": true,"includeGeo": true,"includeMarketSummary": true}
Every building in a market currently running a concession, with the offer text and the leasing contact:
{"searchLocations": ["denver-co"],"category": "apartments-for-rent","listingTagFilter": "Free","minPrice": 1200,"maxPrice": 2500,"maxItems": 500,"includeDetails": true,"includeContact": true,"includeFees": true}
Pricing
Pay per event. Nothing is charged for a block that came back empty.
| Event | Price | Charged when |
|---|---|---|
| Actor start | $0.005 per GB | Once per run. The actor runs at 4 GB, so $0.02. |
| Rental listing | $0.007 | One rental from a search page, 33 fields |
| Search page scanned | $0.010 | One search page paginated, up to 40 listings |
| Market summary row | $0.010 | One market row, when HotPads published the numbers |
| Listing page opened | $0.006 | The extra page load every block below reads |
| Units and floor plans | $0.004 | Per listing whose available units were extracted |
| Property manager | $0.004 | Company, phone, office hours, website |
| Amenities | $0.003 | Full amenity list |
| Photo gallery | $0.003 | Every photo at 1200px |
| Pet policy | $0.003 | Dog and cat rules, deposits, weight limits |
| Costs and fees | $0.003 | Move in cost, monthly fees, one time fees |
| Nearby schools | $0.003 | District and assigned schools |
| Listing FAQ | $0.003 | Question and answer pairs |
| Coordinates | $0.002 | Latitude and longitude |
| Demand signals | $0.002 | Views and contacts this week |
| Similar rentals | $0.002 | Comparable rentals from the listing page |
| Rows | Headline fields only | Every block ticked |
|---|---|---|
| 100 | $0.75 | up to $4.55 |
| 1,000 | $7.27 | up to $45.27 |
| 10,000 | $72.52 | up to $452.52 |
Volume tiers apply automatically: Bronze takes 3.8% off, Silver 7.4%, Gold and above 11%.
Free users
Free Apify accounts get 10 rows per run as a preview, with exactly the same fields a paid run returns. Every filter, category and optional block works on the free plan; only the row count is capped. Paid plans go to 1,000,000 rows per run. Upgrade here.
Run it
- Create a free Apify account. It comes with $5 of platform credit, which is enough for roughly 680 headline rows.
- Open the actor, type your market into Locations and pick a Rental category.
- Set Max Items, tick any listing page blocks you want, and press Start.
- Download the dataset as CSV, JSON, Excel or XML, or pull it from the API at
https://api.apify.com/v2/datasets/{datasetId}/items.
Use with AI agents (MCP)
claude mcp add apify --transport http https://mcp.apify.com -H "Authorization: Bearer YOUR_APIFY_TOKEN"
Then ask your agent in plain language:
- "Get me every 2 bedroom apartment for rent in Denver under $2,000, with square footage and amenities."
- "Which buildings in Austin are running a free rent concession right now, and what is the offer?"
- "Compare the median rent in Austin, Dallas and Houston against the national median."
Troubleshooting
No results at all. The market slug is probably wrong. HotPads addresses a city as city-state, so austin-tx, not austin or texas. Typing Austin, TX works too. If a category returns nothing for a small market, that category genuinely has no inventory there: sublets in Austin had 15 listings on 8 September 2026 and several categories have single digits.
Fewer rows than I asked for. Three causes, in order of likelihood. You are on a free plan, which caps a run at 10 rows. Your filters removed rows after the page was read, which is what minPrice, maxPrice, minBeds, maxBeds, listingTagFilter, verifiedOnly and withPhoneOnly do. Or maxPagesPerSearch ran out: HotPads returns 40 listings per page, so 25 pages is 1,000 listings per market and you need to raise it for more.
A field came back empty. Not Disclosed means HotPads does not publish it for that listing, and N/A means it does not apply. Bathrooms, square footage, amenities, units and schools only exist on the listing page, so they stay empty unless Open each listing page is ticked. costs is genuinely absent on most listings: 14 of 24 in the verified run published a fee breakdown, and petPolicy 23 of 24.
The run is slow. A search page is one browser navigation and yields 40 rows; a listing page is one more navigation each. The verified run did 24 fully enriched listings plus a market row in 96 seconds, about 16 rows a minute once the browser is up. Headline rows alone are far faster: 10 rows came back in 30 seconds, and one page load yields 40. Untick blocks you do not need.
The log says it rotated the exit node. That is PerimeterX blocking a residential IP, and the actor handling it. It retries the same URL on a fresh exit up to 12 times per run. A handful of rotations in a long run is normal and costs you nothing extra.
FAQ
| Question | Answer |
|---|---|
| Do I need a HotPads account or an API key? | No. Everything it reads is public and anonymous. HotPads has no public API. |
| How many rentals are there per market? | Austin had 32,392 apartment rentals on 8 September 2026. Big metros run into the tens of thousands; small markets and narrow categories are much smaller. |
| How many listings does one search page return? | 40, and the actor follows the next page link until your row limit or page limit stops it. |
| Can I scrape a neighbourhood, ZIP or county? | Yes. Paste the HotPads URL into the HotPads URLs field; the location plus category pair only covers city level pages. |
| Which filters run on HotPads and which run here? | The rental category runs on HotPads and changes the result count. Rent, bedrooms, tag, verified and phone are applied to the row after the page is read. The "under $X" categories are a source side price filter. |
| Why are bathrooms and square footage empty? | They are not on the search card. Tick Open each listing page. |
| Does it return individual units or just the building? | Both. The row is the building; tick Available units and floor plans for each unit with its own rent, size and move in date. |
| How fresh is the data? | It is read live at run time. Listings carry lastUpdatedText from HotPads, which was "Updated 2 hours ago" on the sample row. |
| Can I run it on a schedule? | Yes. Use Apify Schedules and diff on listingId between runs to track new listings, price changes and removals. |
| Why is it more expensive than the other HotPads actors? | They return the search card only. This one opens the listing page for bathrooms, square footage, unit level rents, amenities, pet policy, fees, schools and the manager, and it is priced per block so you pay for the ones you tick. |
| Is scraping HotPads legal? | It collects only public listing data, no logins and no personal accounts. You are responsible for how you use it, including GDPR, CCPA and PIPL obligations where they apply. |
Related actors
- Apartments.com Scraper
- Zillow Rentals Scraper
- Trulia Scraper
- Realtor.com Scraper
- Redfin Property Listings Scraper
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 is an unofficial tool and is not affiliated with, endorsed by or connected to HotPads or Zillow Group. It collects only publicly available listing data, with no login and no access to private accounts. You are responsible for using the output in line with GDPR, CCPA, PIPL and any other regulation that applies to you.
