Airbnb Reviews Scraper avatar

Airbnb Reviews Scraper

Pricing

from $4.99 / 1,000 results

Go to Apify Store
Airbnb Reviews Scraper

Airbnb Reviews Scraper

Scrape all reviews from Airbnb listings with full pagination, category ratings, star distribution, and host responses.

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

Coding Frontned

Coding Frontned

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

4 hours

Issues response

9 days ago

Last modified

Share

Extract public reviews from one or more Airbnb listing URLs. The Actor opens Airbnb's reviews route in a real browser, follows the reviews panel's incremental loading, and falls back to public JSON-LD when browser extraction is unavailable.

What it returns

Each review record can include:

  • Listing context: ID, URL, title, accommodation type, location, capacity, bedrooms, beds, bathrooms, description, cover image, amenity count, overall rating, category ratings, and star distribution.
  • Reviewer context: display name, public profile URL and ID, location or Airbnb tenure, and avatar URL.
  • Review content: stable review ID when exposed, rating, displayed date, stay type, full text, and one-based result position.
  • Host response context: response text, response author/profile, response date, and a hasHostResponse flag.
  • Provenance: pageType, found, extractionMethod, fallbackMode, and scrapedAt.

The dataset contains review rows only. A machine-readable OUTPUT key reports success, verified empty results, limits, fallback use, and sanitized failures. Unverifiable empty or blocked runs fail explicitly.

Input options

FieldTypeDefaultDescription
productUrlsarray of stringsRequired Airbnb /rooms/<id> listing URLs.
maxReviewsPerListinginteger0Maximum reviews per listing. 0 means no per-listing cap.
maxTotalReviewsinteger0Overall review cap across all listing URLs.
includeHostResponsesbooleantrueInclude host response fields when available.
includeListingMetadatabooleantrueInclude extended listing and host context.
includeReviewerDetailsbooleantrueInclude public reviewer profile, location/tenure, and avatar fields.
reviewSearchstring""Optional phrase entered into Airbnb's “Search all reviews” control.
reviewSortenumBEST_QUALITYBEST_QUALITY, MOST_RECENT, HIGHEST_RATED, or LOWEST_RATED.
maxConcurrencyinteger2Browser concurrency from 1 to 5.
maxRequestRetriesinteger1Crawlee retries for failed listing requests.
requestDelayMsinteger0Delay before processing each listing, from 0 to 10,000 ms.
requestTimeoutSecsinteger60Listing/reviews navigation timeout, from 15 to 180 seconds.
saveDebugHtmlbooleanfalseOpt in to saving debug-<listing>.html when the reviews panel cannot be opened.
proxyConfigurationobjectResidentialProxy used consistently by the browser and HTTP fallback.

maxItems is also accepted as a backwards-compatible alias for maxTotalReviews.

Example input

{
"productUrls": [
"https://www.airbnb.com/rooms/1234567890123456789"
],
"maxReviewsPerListing": 25,
"maxTotalReviews": 100,
"includeHostResponses": true,
"reviewSort": "MOST_RECENT",
"reviewSearch": "clean",
"maxConcurrency": 1,
"saveDebugHtml": false
}

Example output

{
"listingId": "1234567890123456789",
"listingUrl": "https://www.airbnb.com/rooms/1234567890123456789",
"listingTitle": "Example apartment near the city center",
"listingType": "Entire apartment",
"location": "Example City, Example Country",
"overallRating": 4.87,
"totalReviewCount": 128,
"categoryRatings": {
"cleanliness": 4.9,
"accuracy": 4.8,
"checkIn": 4.9,
"communication": 4.9,
"location": 4.7,
"value": 4.6
},
"reviewIndex": 1,
"reviewId": "9876543210987654321",
"authorName": "Example Reviewer",
"reviewerLocation": "Example City, Example Country",
"reviewerUrl": "https://www.airbnb.com/users/profile/123456789",
"rating": 5,
"date": "January 2026",
"stayType": "Stayed a few nights",
"reviewText": "The apartment was clean, comfortable, and close to public transport.",
"hasHostResponse": true,
"hostResponse": "Thank you for your thoughtful feedback. We hope to welcome you again.",
"source": "Airbnb listing reviews",
"pageType": "review",
"found": true,
"extractionMethod": "playwright_dom",
"fallbackMode": "browser",
"scrapedAt": "2026-01-15T12:00:00.000Z"
}

Notes

  • Only public Airbnb pages are requested with bounded retries and pacing. The configured proxy is applied consistently; login, CAPTCHA solving, and access-control bypasses are not attempted. CAPTCHA/access-denied/rate-limit responses fail closed and are summarized in OUTPUT.
  • Airbnb may expose translated or relative date text; date preserves the text shown on the page.
  • Debug HTML is stored in the default key-value store only when saveDebugHtml is enabled and browser extraction fails.
  • Every dataset row is a verified pageType: "review" record with a reviewer name and review text.