Airbnb Scraper — 16 Fields, Prices by Date, No Login
Pricing
from $1.80 / 1,000 listing scrapeds
Airbnb Scraper — 16 Fields, Prices by Date, No Login
Scrape Airbnb stay listings by location and dates: price, rating, review count, superhost status, property type, coordinates and photos. No login, no API key. Use as an MCP server in Claude & AI agents.
Pricing
from $1.80 / 1,000 listing scrapeds
Rating
0.0
(0)
Developer
The Mine Works
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
🏠 Airbnb Scraper: Listings, Prices, Ratings & Geo
Overview
Airbnb Scraper is a fast, pay-per-result Apify Actor that extracts Airbnb stay listings for any location, with nightly price, guest rating, review count, superhost status, GPS coordinates, property type, and photo. Give it a destination (and optionally your travel dates), and it returns clean, structured JSON, CSV, or Excel you can drop straight into a spreadsheet, dashboard, or AI agent.
Airbnb has no public listings API, and the numbers you see on the site are gated behind heavy client-side rendering. This actor handles search resolution, pagination, and price extraction for you, so you get the same data a visitor sees at scale, without writing parsing code or maintaining browser automation. Residential proxies are used by default for reliable results.
Reliability posture: blocked, empty, or failed runs are never charged. You only pay for a listing that was actually delivered.
✅ No login | ✅ No API key | ✅ Pay only per listing returned | ✅ MCP-ready for AI agents
Features
Date-aware pricing. Pass check-in and check-out dates to get the nightly price for that stay. Rich metadata. Rating, review count, superhost, badges, property type, coordinates, and photo. Price band filters. Cap by minimum and maximum nightly price to focus on your target segment. Volume control. Up to 2,000 listings per run. Split across cities or dates for wider pulls. Residential proxy default. Reliable results against Airbnb's IP fingerprinting.
How it works
Airbnb's public site renders listings client-side and paginates through a private API that changes without notice. This actor resolves your location string to Airbnb's internal place ID, walks the paginated results, and extracts the fields shoppers actually see, plus geo coordinates and photo URLs. If you pass dates and guest count, price reflects that stay; without them you get the default nightly rate.
You are billed only for listings actually returned. No subscription, no minimum.
🧾 Input configuration
{"location": "Lisbon, Portugal","checkIn": "2026-09-01","checkOut": "2026-09-04","adults": 2,"minPrice": 40,"maxPrice": 250,"maxItems": 100,"proxyConfig": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
📤 Output format
This is a real record captured from a live run against Lisbon, Portugal:
{"listingId": "1698576250991138067","name": "Standard single room","title": "Gat Rossio","subtitle": "Hotel in Arroios","rating": 4.73,"reviewsCount": 589,"latitude": 38.7154,"longitude": -9.1406,"photoUrl": "https://a0.muscache.com/im/pictures/BnbProperty/BnbProperty-1698576250991138067/original/865d4676-a83d-4745-b7f6-8d8623e91f03.jpeg","badges": ["Featured hotel"],"url": "https://www.airbnb.com/rooms/1698576250991138067","scraped_at": "2026-07-15T04:15:55.905Z"}
Fields with no value for a given listing (for example price when Airbnb does not return a stay-specific rate for that result) are omitted rather than sent as null.
Every listing record contains these fields:
| Field | Description |
|---|---|
🆔 listingId | Airbnb listing ID. |
🏷️ name | Room or unit name within the listing. |
📝 title | Listing title (property or hotel name). |
📋 subtitle | Listing subtitle, typically the property type and neighborhood. |
💵 price | Nightly price (numeric), when Airbnb returns a stay specific rate. |
💲 priceText | Formatted price string as shown on Airbnb. |
🏷️ priceQualifier | Price qualifier text (e.g. "for 5 nights"), when present. |
💱 currency | Currency code, when a price is returned. |
⭐ rating | Average guest rating. |
🗣️ reviewsCount | Total number of reviews. |
📍 latitude / longitude | GPS coordinates for mapping. |
🖼️ photoUrl | Primary photo URL. |
🏅 badges | Listing badges (e.g. Featured hotel, Guest favorite). |
🔗 url | Public Airbnb listing URL. |
🕒 scraped_at | ISO timestamp when the record was captured. |
💼 Common use cases
Revenue management and dynamic pricing Pull comparable listings for a market and date window to set competitive nightly rates. Ideal for property managers, hosts, and STR software vendors.
Market research for hosts and investors Measure supply, average price, and rating by neighborhood before buying or listing. Combine multiple runs to build a longitudinal view.
Travel apps and comparison tools Populate a product with structured stays, including photos, coordinates, and Superhost signals. Feed a live search UI without maintaining a scraper.
Geo analytics and mapping Use latitude and longitude to build heatmaps of price or availability across a city. Great for urban policy research and real-estate analytics.
AI agents Let an assistant answer "find the 20 cheapest Superhost stays in Bali this weekend" with live data. Exposed as an MCP tool for Claude and ChatGPT.
🚀 Getting started
- Open the Airbnb Scraper on Apify and click Try for free.
- Enter a location (e.g.
Lisbon, Portugal,Austin, TX,Bali). - Optionally set check-in and check-out dates and number of adults for date-specific pricing.
- Set max listings and, if you like, a minimum or maximum price filter.
- Click Start, then download results as JSON, CSV, Excel, or HTML.
FAQ
Do I need an Airbnb account or API key? No. There is no login and no API key. Enter a location and run.
How many listings can I scrape? Up to 2,000 per run via the max listings field. Run multiple locations or dates to go wider.
Can I get date-specific prices? Yes. Add check-in and check-out dates and prices reflect that stay.
How am I charged? Pay-per-result. You pay only for listings actually returned.
Why is a residential proxy used? Airbnb fingerprints and rate-limits by IP. Residential proxies (the default) keep runs reliable across sessions.
Use in Claude, ChatGPT & any MCP agent
https://mcp.apify.com/?tools=themineworks/airbnb-scraper
Or run it from code with the Apify client:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('themineworks/airbnb-scraper').call({location: 'Lisbon, Portugal',maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
🛠️ Complete your travel & real estate pipeline
Pair with the rest of the suite for a full short-term-rental and real-estate stack:
- Zillow Property Details Scraper: full property record for any Zillow URL or ZPID.
- Redfin Scraper: Redfin for-sale and sold listings.
- Realtor Scraper: Realtor.com listings with agent contact.
- RAG Website Crawler: crawl neighbourhood and destination content for context.
Found a bug or have a feature request? Open an issue on the actor's Apify Console page or reach out through the Apify profile.
